Game Maker Studio 2 Desktop needs this to launch.
Signed-off-by: Zebediah Figura zfigura@codeweavers.com --- dlls/mscorwks/Makefile.in | 1 + dlls/mscorwks/mscorwks.spec | 110 ++++++++++++++++++++++++++++++++++++ loader/wine.inf.in | 2 + tools/make_specfiles | 4 ++ 4 files changed, 117 insertions(+) create mode 100644 dlls/mscorwks/Makefile.in create mode 100644 dlls/mscorwks/mscorwks.spec
diff --git a/dlls/mscorwks/Makefile.in b/dlls/mscorwks/Makefile.in new file mode 100644 index 00000000000..4527266171c --- /dev/null +++ b/dlls/mscorwks/Makefile.in @@ -0,0 +1 @@ +MODULE = mscorwks.dll diff --git a/dlls/mscorwks/mscorwks.spec b/dlls/mscorwks/mscorwks.spec new file mode 100644 index 00000000000..617cde3173d --- /dev/null +++ b/dlls/mscorwks/mscorwks.spec @@ -0,0 +1,110 @@ +@ stdcall LoadStringRC(long ptr long long) mscoree.LoadStringRC +@ stub ReOpenMetaDataWithMemory +@ stub CorDllMainForThunk +@ stub CreateActContextInternal +@ stub CreateCMSFromXmlInternal +@ stub GetAddrOfContractShutoffFlag +@ stub GetCLRFunction +@ stub GetUserStateManagerInternal +@ stub GetUserStoreInternal +@ stub ParseManifestInternal +@ stub _AxlGetIssuerPublicKeyHash +@ stub _AxlPublicKeyBlobToPublicKeyToken +@ stub _AxlRSAKeyValueToPublicKeyToken +@ stub CertCreateAuthenticodeLicense +@ stub CertFreeAuthenticodeSignerInfo +@ stub CertFreeAuthenticodeTimestamperInfo +@ stub CertTimestampAuthenticodeLicense +@ stub CertVerifyAuthenticodeLicense +@ stub ClearDownloadCache +@ stdcall ClrCreateManagedInstance(wstr ptr ptr) mscoree.ClrCreateManagedInstance +@ stdcall CoEEShutDownCOM() mscoree.CoEEShutDownCOM +@ stdcall CoInitializeCor(long) mscoree.CoInitializeCor +@ stub CoInitializeEE +@ stub CoUninitializeCor +@ stub CoUninitializeEE +@ stub CompareAssemblyIdentity +@ stub CopyPDBs +@ stdcall CorExitProcess(long) mscoree.CorExitProcess +@ stub CorLaunchApplication +@ stub CorMarkThreadInThreadPool +@ stub CreateActContext +@ stub CreateApplicationContext +@ stub CreateAssemblyCache +@ stub CreateAssemblyEnum +@ stub CreateAssemblyNameObject +@ stub CreateCMSFromXml +@ stub CreateHistoryReader +@ stub CreateInstallReferenceEnum +@ stub DeleteShadowCache +@ stub DllCanUnloadNowInternal +@ stub DllGetClassObjectInternal +@ stub DllRegisterServerInternal +@ stub DllUnregisterServerInternal +@ stub EEDllRegisterServer +@ stub EEDllUnregisterServer +@ stub GetAppIdAuthority +@ stub GetAssemblyIdentityFromFile +@ stdcall GetAssemblyMDImport(wstr ptr ptr) mscoree.GetAssemblyMDImport +@ stub GetCLRIdentityManager +@ stub GetCachePath +@ stub GetHashFromAssemblyFile +@ stub GetHashFromAssemblyFileW +@ stub GetHashFromBlob +@ stub GetHashFromFile +@ stub GetHashFromFileW +@ stub GetHashFromHandle +@ stub GetHistoryFileDirectory +@ stub GetIdentityAuthority +@ stub GetMetaDataInternalInterface +@ stub GetMetaDataInternalInterfaceFromPublic +@ stub GetMetaDataPublicInterfaceFromInternal +@ stub GetPermissionRequests +@ stub GetPrivateContextsPerfCounters +@ stub GetUserStateManager +@ stub GetUserStore +@ stub IEE +@ stub InitializeFusion +@ stub InstallCustomAssembly +@ stub InstallCustomModule +@ stub LegacyNGenCompile +@ stub LegacyNGenCreateZapper +@ stub LegacyNGenFreeZapper +@ stub LegacyNGenTryEnumerateFusionCache +@ stdcall LoadStringRCEx(long long ptr long long ptr) mscoree.LoadStringRCEx +@ stub LogHelp_LogAssert +@ stub LogHelp_NoGuiOnAssert +@ stub LogHelp_TerminateOnAssert +@ stub LookupHistoryAssembly +@ stub MetaDataGetDispenser +@ stub NGenCreateNGenWorker +@ stub NukeDownloadedCache +@ stub ParseManifest +@ stub PostErrorVA +@ stub PreBindAssembly +@ stub PreBindAssemblyEx +@ stub ReOpenMetaDataWithMemoryEx +@ stub StrongNameCompareAssemblies +@ stub StrongNameErrorInfo +@ stub StrongNameFreeBuffer +@ stub StrongNameGetBlob +@ stub StrongNameGetBlobFromImage +@ stub StrongNameGetPublicKey +@ stub StrongNameHashSize +@ stub StrongNameKeyDelete +@ stub StrongNameKeyGen +@ stub StrongNameKeyGenEx +@ stub StrongNameKeyInstall +@ stub StrongNameSignatureGeneration +@ stub StrongNameSignatureGenerationEx +@ stub StrongNameSignatureSize +@ stdcall StrongNameSignatureVerification(wstr long ptr) mscoree.StrongNameSignatureVerification +@ stdcall StrongNameSignatureVerificationEx(wstr long ptr) mscoree.StrongNameSignatureVerificationEx +@ stub StrongNameSignatureVerificationFromImage +@ stub StrongNameTokenFromAssembly +@ stub StrongNameTokenFromAssemblyEx +@ stub StrongNameTokenFromPublicKey +@ stub TranslateSecurityAttributes +@ stdcall _CorDllMain(long long ptr) mscoree._CorDllMain +@ stdcall _CorExeMain2(ptr long ptr ptr ptr) mscoree._CorExeMain2 +@ stdcall _CorExeMain() mscoree._CorExeMain diff --git a/loader/wine.inf.in b/loader/wine.inf.in index c3d3b770b5c..2ac524afdb6 100644 --- a/loader/wine.inf.in +++ b/loader/wine.inf.in @@ -2554,6 +2554,7 @@ HKLM,%CurrentVersion%\Telephony\Country List\998,"SameAreaRule",,"G" 11,,aspnet_regiis.exe,- 11,,ngen.exe,- 11,,fusion.dll,- +11,,mscorwks.dll,- 11,,regsvcs.exe,- 11,,regasm.exe,- 11,,servicemodelreg.exe,- @@ -2603,6 +2604,7 @@ HKLM,%CurrentVersion%\Telephony\Country List\998,"SameAreaRule",,"G" 11,,aspnet_regiis.exe,- 11,,ngen.exe,- 11,,fusion.dll,- +11,,mscorwks.dll,- 11,,regsvcs.exe,- 11,,regasm.exe,- 11,,servicemodelreg.exe,- diff --git a/tools/make_specfiles b/tools/make_specfiles index 64c25d12593..5c30ce50038 100755 --- a/tools/make_specfiles +++ b/tools/make_specfiles @@ -483,6 +483,10 @@ my @dll_groups = "ntoskrnl.exe", "hal", ], + [ + "mscoree", + "mscorwks", + ], );
my $update_flags = 0;
Signed-off-by: Zebediah Figura zfigura@codeweavers.com --- include/strongname.h | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 include/strongname.h
diff --git a/include/strongname.h b/include/strongname.h new file mode 100644 index 00000000000..f05861ad28d --- /dev/null +++ b/include/strongname.h @@ -0,0 +1,39 @@ +/* + * Copyright (C) 2019 Zebediah Figura for CodeWeavers + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ + +#ifndef __STRONG_NAME_H +#define __STRONG_NAME_H + +#include <windows.h> +#include <wincrypt.h> +#include <ole2.h> +#include <corerror.h> + +#define SN_INFLAG_FORCE_VER 0x00000001 +#define SN_INFLAG_INSTALL 0x00000002 +#define SN_INFLAG_ADMIN_ACCESS 0x00000004 +#define SN_INFLAG_USER_ACCESS 0x00000008 +#define SN_INFLAG_ALL_ACCESS 0x00000010 +#define SN_INFLAG_RUNTIME 0x80000000 + +#define SN_OUTFLAG_WAS_VERIFIED 0x00000001 + +BOOLEAN __stdcall StrongNameSignatureVerification(const WCHAR *path, DWORD flags, DWORD *ret_flags); +BOOLEAN __stdcall StrongNameSignatureVerificationEx(const WCHAR *path, BOOLEAN force, BOOLEAN *verified); + +#endif
Signed-off-by: Vincent Povirk vincent@codeweavers.com
Signed-off-by: Zebediah Figura zfigura@codeweavers.com --- dlls/mscoree/mscoree_main.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/dlls/mscoree/mscoree_main.c b/dlls/mscoree/mscoree_main.c index 15bbc235207..6afeafe8f0e 100644 --- a/dlls/mscoree/mscoree_main.c +++ b/dlls/mscoree/mscoree_main.c @@ -30,6 +30,7 @@ #include "ole2.h" #include "ocidl.h" #include "shellapi.h" +#include "strongname.h"
#include "initguid.h" #include "msxml2.h" @@ -548,13 +549,13 @@ STDAPI ClrCreateManagedInstance(LPCWSTR pTypeName, REFIID riid, void **ppObject) return ret; }
-BOOL WINAPI StrongNameSignatureVerification(LPCWSTR filename, DWORD inFlags, DWORD* pOutFlags) +BOOLEAN WINAPI StrongNameSignatureVerification(LPCWSTR filename, DWORD inFlags, DWORD *pOutFlags) { FIXME("(%s, 0x%X, %p): stub\n", debugstr_w(filename), inFlags, pOutFlags); return FALSE; }
-BOOL WINAPI StrongNameSignatureVerificationEx(LPCWSTR filename, BOOL forceVerification, BOOL* pVerified) +BOOLEAN WINAPI StrongNameSignatureVerificationEx(LPCWSTR filename, BOOLEAN forceVerification, BOOLEAN *pVerified) { FIXME("(%s, %u, %p): stub\n", debugstr_w(filename), forceVerification, pVerified); return FALSE;
Signed-off-by: Vincent Povirk vincent@codeweavers.com
Game Maker Studio 2 Desktop needs this to launch.
Signed-off-by: Zebediah Figura zfigura@codeweavers.com --- dlls/mscoree/mscoree_main.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/dlls/mscoree/mscoree_main.c b/dlls/mscoree/mscoree_main.c index 6afeafe8f0e..af0321a7609 100644 --- a/dlls/mscoree/mscoree_main.c +++ b/dlls/mscoree/mscoree_main.c @@ -558,7 +558,8 @@ BOOLEAN WINAPI StrongNameSignatureVerification(LPCWSTR filename, DWORD inFlags, BOOLEAN WINAPI StrongNameSignatureVerificationEx(LPCWSTR filename, BOOLEAN forceVerification, BOOLEAN *pVerified) { FIXME("(%s, %u, %p): stub\n", debugstr_w(filename), forceVerification, pVerified); - return FALSE; + *pVerified = TRUE; + return TRUE; }
HRESULT WINAPI CreateDebuggingInterfaceFromVersion(int nDebugVersion, LPCWSTR version, IUnknown **ppv)
Signed-off-by: Vincent Povirk vincent@codeweavers.com