20#define WIN32_NO_STATUS
40#elif defined __aarch64__ || defined__arm64ec__
42#elif defined __x86_64__
51"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
52"<assemblyIdentity version=\"1.0.0.0\" name=\"Wine.Test\" type=\"win32\"></assemblyIdentity>"
56"<assembly xmlns = \"urn:schemas-microsoft-com:asm.v1\" manifestVersion = \"1.0\">"
57"<assemblyIdentity version = \"1.0.0.0\" name = \"Wine.Test\" type = \"win32\"></assemblyIdentity>"
61"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
62"<assemblyIdentity version=\"1.2.3.4\" name=\"Wine.Test\" type=\"win32\">"
66"<assemblyIdentity type=\"win32\" name=\"testdep\" version=\"6.5.4.3\" processorArchitecture=\"" ARCH "\">"
72DEFINE_GUID(IID_CoTest, 0x12345678, 0x1234, 0x5678, 0x12, 0x34, 0x11, 0x11, 0x22, 0x22, 0x33, 0x33);
73DEFINE_GUID(IID_CoTest2, 0x12345678, 0x1234, 0x5678, 0x12, 0x34, 0x11, 0x11, 0x22, 0x22, 0x33, 0x34);
74DEFINE_GUID(CLSID_clrclass,0x22345678, 0x1234, 0x5678, 0x12, 0x34, 0x11, 0x11, 0x22, 0x22, 0x33, 0x33);
75DEFINE_GUID(IID_TlibTest, 0x99999999, 0x8888, 0x7777, 0x66, 0x66, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55);
76DEFINE_GUID(IID_TlibTest2, 0x99999999, 0x8888, 0x7777, 0x66, 0x66, 0x55, 0x55, 0x55, 0x55, 0x55, 0x56);
77DEFINE_GUID(IID_TlibTest3, 0x99999999, 0x8888, 0x7777, 0x66, 0x66, 0x55, 0x55, 0x55, 0x55, 0x55, 0x57);
78DEFINE_GUID(IID_TlibTest4, 0x99999999, 0x8888, 0x7777, 0x66, 0x66, 0x55, 0x55, 0x55, 0x55, 0x55, 0x58);
79DEFINE_GUID(IID_Iifaceps, 0x66666666, 0x8888, 0x7777, 0x66, 0x66, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55);
80DEFINE_GUID(IID_Ibifaceps, 0x66666666, 0x8888, 0x7777, 0x66, 0x66, 0x55, 0x55, 0x55, 0x55, 0x55, 0x57);
81DEFINE_GUID(IID_Iifaceps2, 0x76666666, 0x8888, 0x7777, 0x66, 0x66, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55);
82DEFINE_GUID(IID_Iifaceps3, 0x86666666, 0x8888, 0x7777, 0x66, 0x66, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55);
83DEFINE_GUID(IID_Iiface, 0x96666666, 0x8888, 0x7777, 0x66, 0x66, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55);
84DEFINE_GUID(IID_PS32, 0x66666666, 0x8888, 0x7777, 0x66, 0x66, 0x55, 0x55, 0x55, 0x55, 0x55, 0x56);
87"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
88"<assemblyIdentity version=\"1.2.3.4\" name=\"Wine.Test\" type=\"win32\""
89" publicKeyToken=\"6595b6414666f1df\" />"
91"<file name=\"testlib.dll\">"
92"<windowClass>wndClass</windowClass>"
93" <comClass description=\"Test com class\""
94" clsid=\"{12345678-1234-5678-1234-111122223333}\""
95" tlbid=\"{99999999-8888-7777-6666-555555555555}\""
96" threadingModel=\"Neutral\""
97" progid=\"ProgId.ProgId\""
98" miscStatus=\"cantlinkinside\""
99" miscStatusIcon=\"recomposeonresize\""
100" miscStatusContent=\"insideout\""
101" miscStatusThumbnail=\"alignable\""
102" miscStatusDocPrint=\"simpleframe,setclientsitefirst\""
104" <progid>ProgId.ProgId.1</progid>"
105" <progid>ProgId.ProgId.2</progid>"
106" <progid>ProgId.ProgId.3</progid>"
107" <progid>ProgId.ProgId.4</progid>"
108" <progid>ProgId.ProgId.5</progid>"
109" <progid>ProgId.ProgId.6</progid>"
111" <comClass clsid=\"{12345678-1234-5678-1234-111122223334}\" threadingModel=\"Neutral\" >"
112" <progid>ProgId.ProgId.7</progid>"
114" <comInterfaceProxyStub "
116" tlbid=\"{99999999-8888-7777-6666-555555555558}\""
117" iid=\"{66666666-8888-7777-6666-555555555555}\""
118" proxyStubClsid32=\"{66666666-8888-7777-6666-555555555556}\""
119" threadingModel=\"Free\""
121" baseInterface=\"{66666666-8888-7777-6666-555555555557}\""
123" <activatableClass name=\"Wine.Test.Class1\" threadingModel=\"mta\" xmlns=\"urn:schemas-microsoft-com:winrt.v1\"/>"
124" <activatableClass name=\"Wine.Test.Class2\" threadingModel=\"both\" xmlns=\"urn:schemas-microsoft-com:winrt.v1\"/>"
125" <activatableClass name=\"Wine.Test.Class3\" threadingModel=\"sta\" xmlns=\"urn:schemas-microsoft-com:winrt.v1\"/>"
127"<file name=\"Wine.Test.dll\">"
128" <activatableClass name=\"Wine.Test.Class4\" threadingModel=\"sta\" xmlns=\"urn:schemas-microsoft-com:winrt.v1\"/>"
130" <comInterfaceExternalProxyStub "
132" tlbid=\"{99999999-8888-7777-6666-555555555558}\""
133" iid=\"{76666666-8888-7777-6666-555555555555}\""
134" proxyStubClsid32=\"{66666666-8888-7777-6666-555555555556}\""
136" baseInterface=\"{66666666-8888-7777-6666-555555555557}\""
138" <comInterfaceExternalProxyStub "
140" tlbid=\"{99999999-8888-7777-6666-555555555558}\""
141" iid=\"{86666666-8888-7777-6666-555555555555}\""
143" baseInterface=\"{66666666-8888-7777-6666-555555555557}\""
146" clsid=\"{96666666-8888-7777-6666-555555555555}\""
147" name=\"testsurrogate\""
148" runtimeVersion=\"v2.0.50727\""
151" clsid=\"{96666666-8888-7777-6666-555555555556}\""
152" name=\"testsurrogate\""
153" runtimeVersion=\"v2.0.50728\""
156" clsid=\"{22345678-1234-5678-1234-111122223333}\""
158" progid=\"clrprogid\""
159" description=\"test description\""
160" tlbid=\"{99999999-8888-7777-6666-555555555555}\""
161" runtimeVersion=\"1.2.3.4\""
162" threadingModel=\"Neutral\""
164" <progid>clrprogid.1</progid>"
165" <progid>clrprogid.2</progid>"
166" <progid>clrprogid.3</progid>"
167" <progid>clrprogid.4</progid>"
168" <progid>clrprogid.5</progid>"
169" <progid>clrprogid.6</progid>"
174"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
175"<assemblyIdentity version=\"1.2.3.4\" name=\"testdep1\" type=\"win32\" processorArchitecture=\"" ARCH "\"/>"
176"<file name=\"testlib1.dll\">"
177"<windowClass versioned=\"yes\">wndClass1</windowClass>"
178"<windowClass>wndClass2</windowClass>"
179" <typelib tlbid=\"{99999999-8888-7777-6666-555555555558}\" version=\"1.0\" helpdir=\"\" />"
181"<file name=\"testlib1_2.dll\" />"
185"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
186"<assemblyIdentity version=\"4.3.2.1\" name=\"testdep2\" type=\"win32\" processorArchitecture=\"" ARCH "\" />"
187"<file name=\"testlib2.dll\">"
188" <windowClass versioned=\"no\">wndClass3</windowClass>"
189" <windowClass>wndClass4</windowClass>"
190" <typelib tlbid=\"{99999999-8888-7777-6666-555555555555}\" version=\"1.0\" helpdir=\"help\" resourceid=\"409\""
191" flags=\"HiddeN,CoNTROL,rESTRICTED\" />"
192" <typelib tlbid=\"{99999999-8888-7777-6666-555555555556}\" version=\"1.0\" helpdir=\"help1\" resourceid=\"409\" />"
193" <typelib tlbid=\"{99999999-8888-7777-6666-555555555557}\" version=\"1.0\" helpdir=\"\" />"
195"<file name=\"testlib2_2.dll\" />"
199"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
200"<assemblyIdentity version=\"1.2.3.4\" name=\"Wine.Test\" type=\"win32\" />"
202" <dependentAssembly>"
203" <assemblyIdentity type=\"win32\" name=\"testdep1\" version=\"1.2.3.4\" processorArchitecture=\"" ARCH "\" />"
204" </dependentAssembly>"
207" <dependentAssembly>"
208" <assemblyIdentity type=\"win32\" name=\"testdep2\" version=\"4.3.2.1\" processorArchitecture=\"" ARCH "\" />"
209" </dependentAssembly>"
214"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
215"<assemblyIdentity version=\"1.2.3.4\" name=\"Wine.Test\" type=\"win32\">"
219"<assemblyIdentity type=\"win32\" name=\"Microsoft.Windows.Common-Controls\" "
220 "version=\"6.0.1.0\" processorArchitecture=\"" ARCH "\" publicKeyToken=\"6595b64144ccf1df\">"
222"</dependentAssembly>"
227"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
228"<assemblyIdentity version=\"1.2.3.4\" name=\"Wine.Test\" type=\"win32\">"
231" <dependentAssembly dependencyType=\"preRequisite\" allowDelayedBinding=\"true\">"
232" <assemblyIdentity name=\"Missing.Assembly\" version=\"1.0.0.0\" />"
233" </dependentAssembly>"
238"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
239"<assemblyIdentity version=\"1.0.0.0\" name=\"Wine.Test\" type=\"win32\"></assemblyIdentity>"
240"<trustInfo xmlns=\"urn:schemas-microsoft-com:asm.v1\">"
242" <requestedPrivileges>"
243" <requestedExecutionLevel level=\"ASINVOKER\" uiAccess=\"false\"/>"
244" </requestedPrivileges>"
250"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
251"<assemblyIdentity version=\"1.0.0.0\" name=\"Wine.Test\" type=\"win32\"></assemblyIdentity>"
252"<trustInfo xmlns=\"urn:schemas-microsoft-com:asm.v2\">"
254" <requestedPrivileges>"
255" <requestedExecutionLevel level=\"requireAdministrator\" uiAccess=\"TRUE\"/>"
256" </requestedPrivileges>"
262"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
263"<assemblyIdentity version=\"1.0.0.0\" name=\"Wine.Test\" type=\"win32\"></assemblyIdentity>"
264"<trustInfo xmlns=\"urn:schemas-microsoft-com:asm.v2\">"
266" <requestedPrivileges>"
267" <requestedExecutionLevel level=\"requireAdministrator\" uiAccess=\"true\">"
268" </requestedExecutionLevel>"
269" </requestedPrivileges>"
275"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
276"<assemblyIdentity version=\"1.0.0.0\" name=\"Wine.Test\" type=\"win32\"></assemblyIdentity>"
277"<trustInfo xmlns=\"urn:schemas-microsoft-com:asm.v2\">"
279" <requestedPrivileges>"
280" <requestedExecutionLevel level=\"requireAdministrator\"/>"
281" </requestedPrivileges>"
284"<trustInfo xmlns=\"urn:schemas-microsoft-com:asm.v2\">"
286" <requestedPrivileges>"
287" </requestedPrivileges>"
293"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" xmlns:asmv2=\"urn:schemas-microsoft-com:asm.v2\" manifestVersion=\"1.0\">"
294"<assemblyIdentity version=\"1.0.0.0\" name=\"Wine.Test\" type=\"win32\"></assemblyIdentity>"
297" <asmv2:requestedPrivileges>"
298" <asmv2:requestedExecutionLevel level=\"requireAdministrator\" uiAccess=\"true\"></asmv2:requestedExecutionLevel>"
299" </asmv2:requestedPrivileges>"
306"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" xmlns:asmv2=\"urn:schemas-microsoft-com:asm.v2\" manifestVersion=\"1.0\">"
307"<assemblyIdentity version=\"1.0.0.0\" name=\"Wine.Test\" type=\"win32\"></assemblyIdentity>"
312"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
313"<assemblyIdentity type=\"win32\" name=\"testdep\" version=\"6.5.4.3\" processorArchitecture=\"" ARCH "\"/>"
317"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
318"<assemblyIdentity type=\"win32\" name=\"testdep\" version=\"6.5.4.3\" processorArchitecture=\"" ARCH "\" />"
319"<file name=\"testlib.dll\"></file>"
320"<file name=\"testlib2.dll\" hash=\"63c978c2b53d6cf72b42fb7308f9af12ab19ec53\" hashalg=\"SHA1\" />"
324"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\"> "
325"<assemblyIdentity type=\"win32\" name=\"testdep\" version=\"6.5.4.3\" processorArchitecture=\"" ARCH "\"/>"
326"<file name=\"testlib.dll\"/>"
327"<file name=\"testlib2.dll\" hash=\"63c978c2b53d6cf72b42fb7308f9af12ab19ec53\" hashalg=\"SHA1\">"
328"<windowClass>wndClass</windowClass>"
329"<windowClass>wndClass2</windowClass>"
334"<assembly manifestVersion=\"1.0\">"
335"<assemblyIdentity version=\"1.0.0.0\" name=\"Wine.Test\" type=\"win32\"></assemblyIdentity>"
339"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\">"
340"<assemblyIdentity version=\"1.0.0.0\" name=\"Wine.Test\" type=\"win32\"></assemblyIdentity>"
344"<assembly test=\"test\" xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
345"<assemblyIdentity version=\"1.0.0.0\" name=\"Wine.Test\" type=\"win32\"></assemblyIdentity>"
349"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
350"<assemblyIdentity version=\"1.0.0.0\" name=\"Wine.Test\" type=\"win32\"></assemblyIdentity>"
355"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
356"<assemblyIdentity version=\"1.0.0.0\" name=\"Wine.Test\" type=\"win32\"></assemblyIdentity>"
361"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v5\" manifestVersion=\"1.0\">"
362"<assemblyIdentity version=\"1.0.0.0\" name=\"Wine.Test\" type=\"win32\"></assemblyIdentity>"
366"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
367"<assemblyIdentity type=\"win32\" name=\"testdep\" version=\"6.5.4.3\" processorArchitecture=\"" ARCH "\" />"
368"<file name=\"testlib.dll\" hash=\"63c978c2b53d6cf72b42fb7308f9af12ab19ec5\" hashalg=\"SHA1\" />"
372"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
373"<assemblyIdentity version=\"1.2.3.4\" name=\"Wine.Test\" type=\"win32\"></assemblyIdentity>"
378"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
379"<assemblyIdentity version=\"1.0.0.0\" name=\"Wine.Test\" type=\"win32\"></assemblyIdentity>"
380"<trustInfo xmlns=\"urn:schemas-microsoft-com:asm.v2\">"
382" <requestedPrivileges>"
383" <requestedExecutionLevel level=\"requireAdministrator\"/>"
384" <requestedExecutionLevel uiAccess=\"true\"/>"
385" </requestedPrivileges>"
391"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
392"<assemblyIdentity version=\"1.0.0.0\" name=\"Wine.Test\" type=\"win32\"></assemblyIdentity>"
393"<trustInfo xmlns=\"urn:schemas-microsoft-com:asm.v2\">"
395" <requestedPrivileges>"
396" <requestedExecutionLevel level=\"requireAdministrator\"/>"
397" </requestedPrivileges>"
400"<trustInfo xmlns=\"urn:schemas-microsoft-com:asm.v2\">"
402" <requestedPrivileges>"
403" <requestedExecutionLevel uiAccess=\"true\"/>"
404" </requestedPrivileges>"
411"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
412"<assemblyIdentity version=\"1.0.0.0\" name=\"Wine.Test\" type=\"win32\" />"
413"<file name=\"testlib.dll\">"
414" <activatableClass name=\"Wine.Test.Class1\" threadingModel=\"both\" />"
419"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
420"<assemblyIdentity type=\"win32\" name=\"testdep\" version=\"6.5.4.4\" processorArchitecture=\"" ARCH "\" />"
424"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
425" <assemblyIdentity version=\"1.0.0.0\" name=\"Wine.Test\" type=\"win32\"></assemblyIdentity>"
426" <compatibility xmlns=\"urn:schemas-microsoft-com:compatibility.v1\">"
433"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
434" <assemblyIdentity version=\"1.0.0.0\" name=\"Wine.Test\" type=\"win32\"></assemblyIdentity>"
435" <compatibility xmlns=\"urn:schemas-microsoft-com:compatibility.v1\">"
437" <supportedOS Id=\"{e2011457-1546-43c5-a5fe-008deee3d3f0}\" />"
443"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
444" <assemblyIdentity version=\"1.0.0.0\" name=\"Wine.Test\" type=\"win32\"></assemblyIdentity>"
445" <compatibility xmlns=\"urn:schemas-microsoft-com:compatibility.v1\">"
447" <supportedOS Id=\"{e2011457-1546-43c5-a5fe-008deee3d3f0}\" ></supportedOS>"
448" <supportedOS Id=\"{35138b9a-5d96-4fbd-8e2d-a2440225f93a}\" />"
449" <supportedOS Id=\"{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}\" ></supportedOS>"
450" <supportedOS Id=\"{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}\" />"
451" <supportedOS Id=\"{1f676c76-80e1-4239-95bb-83d0f6d0da78}\" />"
452" <maxversiontested Id=\"10.0.18358\" />"
453" <maxversiontested Id=\"2.3.4.5\" />"
459"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
460" <assemblyIdentity version=\"1.0.0.0\" name=\"Wine.Test\" type=\"win32\"></assemblyIdentity>"
461" <compatibility xmlns=\"urn:schemas-microsoft-com:compatibility.v1\">"
463" <supportedOS Id=\"{12345566-1111-2222-3333-444444444444}\" />"
469"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
470" <assemblyIdentity version=\"1.0.0.0\" name=\"Wine.Test\" type=\"win32\"></assemblyIdentity>"
471" <application xmlns=\"urn:schemas-microsoft-com:asm.v3\">"
473" <dpiAware xmlns=\"http://schemas.microsoft.com/SMI/2005/WindowsSettings\">true</dpiAware>"
474" <dpiAwareness xmlns=\"http://schemas.microsoft.com/SMI/2016/WindowsSettings\">true</dpiAwareness>"
480"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
481" <assemblyIdentity version=\"1.0.0.0\" name=\"Wine.Test\" type=\"win32\"></assemblyIdentity>"
482" <application xmlns=\"urn:schemas-microsoft-com:asm.v3\""
483" xmlns:ws05=\"http://schemas.microsoft.com/SMI/2005/WindowsSettings\""
484" xmlns:ws11=\"http://schemas.microsoft.com/SMI/2011/WindowsSettings\""
485" xmlns:ws16=\"http://schemas.microsoft.com/SMI/2016/WindowsSettings\""
486" xmlns:ws17=\"http://schemas.microsoft.com/SMI/2017/WindowsSettings\">"
488" <ws05:autoElevate>true</ws05:autoElevate>"
489" <ws05:disableTheming>true</ws05:disableTheming>"
490" <ws11:disableWindowFiltering>true</ws11:disableWindowFiltering>"
491" <ws05:dpiAware>true</ws05:dpiAware>"
492" <ws16:dpiAwareness>true</ws16:dpiAwareness>"
493" <ws17:gdiScaling>true</ws17:gdiScaling>"
494" <ws17:highResolutionScrollingAware>true</ws17:highResolutionScrollingAware>"
495" <ws16:longPathAware>true</ws16:longPathAware>"
496" <ws17:magicFutureSetting>true</ws17:magicFutureSetting>"
497" <ws11:printerDriverIsolation>true</ws11:printerDriverIsolation>"
498" <ws17:ultraHighResolutionScrollingAware>true</ws17:ultraHighResolutionScrollingAware>"
505"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
506" <assemblyIdentity version=\"1.0.0.0\" name=\"Wine.Test\" type=\"win32\"></assemblyIdentity>"
507" <asmv3:application>"
508" <asmv3:windowsSettings xmlns=\"http://schemas.microsoft.com/SMI/2005/WindowsSettings\">"
509" <dpiAware>true</dpiAware>"
510" </asmv3:windowsSettings>"
511" </asmv3:application>"
515"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
516" <assemblyIdentity version=\"1.0.0.0\" name=\"Wine.Test\" type=\"win32\"></assemblyIdentity>"
518" <application xmlns=\"urn:schemas-microsoft-com:asm.v3\">"
520" <dpiAware xmlns=\"http://schemas.microsoft.com/SMI/2005/WindowsSettings\">true</dpiAware>"
524" <application xmlns=\"urn:schemas-microsoft-com:asm.v3\">"
526" <dpiAwareness xmlns=\"http://schemas.microsoft.com/SMI/2016/WindowsSettings\">true</dpiAwareness>"
532"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v3\" manifestVersion=\"1.0\">"
533" <assemblyIdentity type=\"win32\" name=\"sxs_dll\" version=\"1.0.0.0\" processorArchitecture=\"x86\" publicKeyToken=\"0000000000000000\"/>"
534" <file name=\"sxs_dll.dll\"></file>"
538"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
540" <dependentAssembly>"
541" <assemblyIdentity type=\"win32\" name=\"sxs_dll\" version=\"1.0.0.0\" processorArchitecture=\"x86\" publicKeyToken=\"0000000000000000\" language=\"*\"/>"
542" </dependentAssembly>"
547"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
549" <dependentAssembly>"
552" name=\"microsoft.vc90.crt\""
553" version=\"9.0.20718.0\""
554" processorArchitecture=\"*\""
555" publicKeyToken=\"1fc8b3b9a1e18e3b\""
558" </dependentAssembly>"
563"<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\" />";
565DEFINE_GUID(VISTA_COMPAT_GUID, 0xe2011457, 0x1546, 0x43c5, 0xa5, 0xfe, 0x00, 0x8d, 0xee, 0xe3, 0xd3, 0xf0);
566DEFINE_GUID(WIN7_COMPAT_GUID, 0x35138b9a, 0x5d96, 0x4fbd, 0x8e, 0x2d, 0xa2, 0x44, 0x02, 0x25, 0xf9, 0x3a);
567DEFINE_GUID(WIN8_COMPAT_GUID, 0x4a2f28e3, 0x53b9, 0x4441, 0xba, 0x9c, 0xd6, 0x9d, 0x4a, 0x4a, 0x6e, 0x38);
568DEFINE_GUID(WIN81_COMPAT_GUID, 0x1f676c76, 0x80e1, 0x4239, 0x95, 0xbb, 0x83, 0xd0, 0xf6, 0xd0, 0xda, 0x78);
569DEFINE_GUID(WIN10_COMPAT_GUID, 0x8e0f7a12, 0xbfb3, 0x4fe8, 0xb9, 0xa5, 0x48, 0xfd, 0x50, 0xa1, 0x5a, 0x9a);
570DEFINE_GUID(OTHER_COMPAT_GUID, 0x12345566, 0x1111, 0x2222, 0x33, 0x33, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44);
574 {
't',
'e',
's',
't',
'l',
'i',
'b',
'.',
'd',
'l',
'l',0};
576 {
't',
'e',
's',
't',
'l',
'i',
'b',
'2',
'.',
'd',
'l',
'l',0};
578 {
'w',
'n',
'd',
'C',
'l',
'a',
's',
's',0};
580 {
'w',
'n',
'd',
'C',
'l',
'a',
's',
's',
'1',0};
582 {
'w',
'n',
'd',
'C',
'l',
'a',
's',
's',
'2',0};
584 {
'w',
'n',
'd',
'C',
'l',
'a',
's',
's',
'3',0};
590 const char *depfile,
const char *depmanifest)
599 if (manifest_len == -1)
629 int offset = (fBOM ? 0 : 1);
632 wmanifest[0] = 0xfeff;
637 wmanifest[
i] = (wmanifest[
i] << 8) | ((wmanifest[
i] >> 8) & 0xff);
652 ok(tmp_path_len != 0,
"GetTempPathW returned error %lu\n",
GetLastError());
653 ok(tmp_path_len <
ARRAY_SIZE(tmp_path),
"GetTempPathW return value %lu should be less than %Iu\n",
704 1, 1, 1, ACTIVATION_CONTEXT_PATH_TYPE_WIN32_FILE,
manifest_path,
705 ACTIVATION_CONTEXT_PATH_TYPE_NONE, ACTIVATION_CONTEXT_PATH_TYPE_WIN32_FILE,
711 ACTIVATION_CONTEXT_PATH_TYPE_NONE, ACTIVATION_CONTEXT_PATH_TYPE_WIN32_FILE,
717 1, 2, 3, ACTIVATION_CONTEXT_PATH_TYPE_WIN32_FILE,
manifest_path,
718 ACTIVATION_CONTEXT_PATH_TYPE_NONE, ACTIVATION_CONTEXT_PATH_TYPE_WIN32_FILE,
724 ACTIVATION_CONTEXT_DETAILED_INFORMATION detailed_info_tmp, *detailed_info;
728 exsize =
sizeof(ACTIVATION_CONTEXT_DETAILED_INFORMATION)
732 if(exsize !=
sizeof(ACTIVATION_CONTEXT_DETAILED_INFORMATION)) {
735 sizeof(detailed_info_tmp), &
size);
736 ok_(__FILE__,
line)(!
b,
"QueryActCtx succeeded\n");
738 ok_(__FILE__,
line)(
size == exsize,
"size=%Id, expected %Id\n",
size, exsize);
740 size =
sizeof(ACTIVATION_CONTEXT_DETAILED_INFORMATION);
747 ok_(__FILE__,
line)(retsize == exsize,
"size=%Id, expected %Id\n", retsize, exsize);
749 ok_(__FILE__,
line)(detailed_info->dwFlags == 0,
"detailed_info->dwFlags=%lx\n", detailed_info->dwFlags);
751 "detailed_info->ulFormatVersion=%lu, expected %lu\n", detailed_info->ulFormatVersion,
755 "detailed_info->ulAssemblyCount=%lu, expected between %lu and %lu\n", detailed_info->ulAssemblyCount,
758 "detailed_info->ulRootManifestPathType=%lu, expected %lu\n",
760 ok_(__FILE__,
line)(detailed_info->ulRootManifestPathChars ==
762 "detailed_info->ulRootManifestPathChars=%lu, expected %u\n",
763 detailed_info->ulRootManifestPathChars,
766 "detailed_info->ulRootConfigurationPathType=%lu, expected %lu\n",
768 ok_(__FILE__,
line)(detailed_info->ulRootConfigurationPathChars == 0,
769 "detailed_info->ulRootConfigurationPathChars=%ld\n", detailed_info->ulRootConfigurationPathChars);
771 "detailed_info->ulAppDirPathType=%lu, expected %lu\n", detailed_info->ulAppDirPathType,
774 "detailed_info->ulAppDirPathChars=%lu, expected %u\n",
777 ok_(__FILE__,
line)(detailed_info->lpRootManifestPath !=
NULL,
"detailed_info->lpRootManifestPath == NULL\n");
778 if(detailed_info->lpRootManifestPath)
780 "unexpected detailed_info->lpRootManifestPath %s\n",
wine_dbgstr_w(detailed_info->lpRootManifestPath));
782 ok_(__FILE__,
line)(detailed_info->lpRootManifestPath ==
NULL,
"detailed_info->lpRootManifestPath != NULL\n");
784 ok_(__FILE__,
line)(detailed_info->lpRootConfigurationPath ==
NULL,
785 "detailed_info->lpRootConfigurationPath=%p\n", detailed_info->lpRootConfigurationPath);
787 ok_(__FILE__,
line)(detailed_info->lpAppDirPath !=
NULL,
"detailed_info->lpAppDirPath == NULL\n");
788 if(detailed_info->lpAppDirPath)
790 "unexpected detailed_info->lpAppDirPath %s / %s\n",
793 ok_(__FILE__,
line)(detailed_info->lpAppDirPath ==
NULL,
"detailed_info->lpAppDirPath != NULL\n");
809 L"Wine.Test,type=\"win32\",version=\"1.0.0.0\"",
815 L"Wine.Test,type=\"win32\",version=\"1.0.0.0\"",
821 L"Wine.Test,type=\"win32\",version=\"1.2.3.4\"",
827 L"Wine.Test,publicKeyToken=\"6595b6414666f1df\",type=\"win32\",version=\"1.2.3.4\"",
833 L"Wine.Test,type=\"win32\",version=\"1.2.3.4\"",
839 L"testdep,processorArchitecture=\"" ARCH "\","
840 "type=\"win32\",version=\"6.5.4.3\"",
846 L"testdep,processorArchitecture=\"" ARCH "\","
847 "type=\"win32\",version=\"6.5.4.3\"",
853 L"testdep,processorArchitecture=\"" ARCH "\",type=\"win32\",version=\"6.5.4.3\"",
863 ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION *
info, info_tmp;
868 exsize =
sizeof(ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION);
873 b =
QueryActCtxW(0,
handle, &
id, AssemblyDetailedInformationInActivationContext, &info_tmp,
sizeof(info_tmp), &
size);
874 ok_(__FILE__,
line)(!
b,
"QueryActCtx succeeded\n");
877 ok_(__FILE__,
line)(
size >= exsize,
"size=%Iu, expected %Iu\n",
size, exsize);
879 if (
size == 0xdeadbeef)
892 exsize +=
info->ulManifestPathLength +
sizeof(
WCHAR);
894 exsize +=
info->ulEncodedAssemblyIdentityLength +
sizeof(
WCHAR);
896 exsize +=
info->ulAssemblyDirectoryNameLength +
sizeof(
WCHAR);
897 ok_(__FILE__,
line)(
size == exsize,
"size=%Iu, expected %Iu\n",
size, exsize);
901 ok_(__FILE__,
line)((
info->ulFlags) == exinfo->
flags,
"info->ulFlags = %lx, expected %lx\n",
907 "info->ulEncodedAssemblyIdentityLength = %lu, expected %lu\n",
908 info->ulEncodedAssemblyIdentityLength,
len);
910 ok_(__FILE__,
line)(
info->ulEncodedAssemblyIdentityLength != 0,
911 "info->ulEncodedAssemblyIdentityLength == 0\n");
913 ok_(__FILE__,
line)(
info->ulManifestPathType == ACTIVATION_CONTEXT_PATH_TYPE_WIN32_FILE,
914 "info->ulManifestPathType = %lx\n",
info->ulManifestPathType);
917 ok_(__FILE__,
line)(
info->ulManifestPathLength ==
len,
"info->ulManifestPathLength = %lu, expected %lu\n",
918 info->ulManifestPathLength,
len);
920 ok_(__FILE__,
line)(
info->ulManifestPathLength != 0,
"info->ulManifestPathLength == 0\n");
923 ok_(__FILE__,
line)(
info->ulPolicyPathType == ACTIVATION_CONTEXT_PATH_TYPE_NONE,
924 "info->ulPolicyPathType = %lx\n",
info->ulPolicyPathType);
926 "info->ulPolicyPathLength = %lu, expected 0\n",
info->ulPolicyPathLength);
927 ok_(__FILE__,
line)(
info->ulMetadataSatelliteRosterIndex == 0,
"info->ulMetadataSatelliteRosterIndex = %lx\n",
928 info->ulMetadataSatelliteRosterIndex);
929 ok_(__FILE__,
line)(
info->ulManifestVersionMajor == 1,
"info->ulManifestVersionMajor = %lx\n",
930 info->ulManifestVersionMajor);
931 ok_(__FILE__,
line)(
info->ulManifestVersionMinor == 0,
"info->ulManifestVersionMinor = %lx\n",
932 info->ulManifestVersionMinor);
933 ok_(__FILE__,
line)(
info->ulPolicyVersionMajor == 0,
"info->ulPolicyVersionMajor = %lx\n",
934 info->ulPolicyVersionMajor);
935 ok_(__FILE__,
line)(
info->ulPolicyVersionMinor == 0,
"info->ulPolicyVersionMinor = %lx\n",
936 info->ulPolicyVersionMinor);
938 ok_(__FILE__,
line)(
info->ulAssemblyDirectoryNameLength != 0,
939 "info->ulAssemblyDirectoryNameLength == 0\n");
941 ok_(__FILE__,
line)(
info->ulAssemblyDirectoryNameLength == 0,
942 "info->ulAssemblyDirectoryNameLength != 0\n");
945 "info->lpAssemblyEncodedAssemblyIdentity == NULL\n");
948 "unexpected info->lpAssemblyEncodedAssemblyIdentity %s / %s\n",
952 ok_(__FILE__,
line)(
info->lpAssemblyManifestPath !=
NULL,
"info->lpAssemblyManifestPath == NULL\n");
953 if(
info->lpAssemblyManifestPath)
955 "unexpected info->lpAssemblyManifestPath\n");
957 ok_(__FILE__,
line)(
info->lpAssemblyManifestPath !=
NULL,
"info->lpAssemblyManifestPath == NULL\n");
960 ok_(__FILE__,
line)(
info->lpAssemblyPolicyPath ==
NULL,
"info->lpAssemblyPolicyPath != NULL\n");
961 if(
info->lpAssemblyPolicyPath)
962 ok_(__FILE__,
line)(*(
WORD*)
info->lpAssemblyPolicyPath == 0,
"info->lpAssemblyPolicyPath is not empty\n");
964 ok_(__FILE__,
line)(
info->lpAssemblyDirectoryName !=
NULL,
"info->lpAssemblyDirectoryName == NULL\n");
966 ok_(__FILE__,
line)(
info->lpAssemblyDirectoryName ==
NULL,
"info->lpAssemblyDirectoryName = %s\n",
973 ASSEMBLY_FILE_DETAILED_INFORMATION *
info, info_tmp;
974 ACTIVATION_CONTEXT_QUERY_INDEX
index = {assid, fileid};
978 exsize =
sizeof(ASSEMBLY_FILE_DETAILED_INFORMATION)
983 sizeof(info_tmp), &
size);
984 ok_(__FILE__,
line)(!
b,
"QueryActCtx succeeded\n");
986 ok_(__FILE__,
line)(
size == exsize,
"size=%Iu, expected %Iu\n",
size, exsize);
988 if(
size == 0xdeadbeef)
1001 ok_(__FILE__,
line)(
info->ulFlags == 2,
"info->ulFlags=%lx, expected 2\n",
info->ulFlags);
1003 "info->ulFilenameLength=%lu, expected %u*sizeof(WCHAR)\n",
1005 ok_(__FILE__,
line)(
info->ulPathLength == 0,
"info->ulPathLength=%lu\n",
info->ulPathLength);
1006 ok_(__FILE__,
line)(
info->lpFileName !=
NULL,
"info->lpFileName == NULL\n");
1007 if(
info->lpFileName)
1009 ok_(__FILE__,
line)(
info->lpFilePath ==
NULL,
"info->lpFilePath != NULL\n");
1019 ACTCTX_RUN_LEVEL_UNSPECIFIED,
FALSE,
1023 ACTCTX_RUN_LEVEL_AS_INVOKER,
FALSE,
1027 ACTCTX_RUN_LEVEL_REQUIRE_ADMIN,
TRUE,
1031 ACTCTX_RUN_LEVEL_REQUIRE_ADMIN,
TRUE,
1035 ACTCTX_RUN_LEVEL_REQUIRE_ADMIN,
FALSE,
1040 ACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION runlevel_info;
1044 size =
sizeof(runlevel_info);
1046 sizeof(runlevel_info), &retsize);
1049 win_skip(
"RunlevelInformationInActivationContext not supported.\n");
1054 ok_(__FILE__,
line)(retsize ==
size,
"size=%Id, expected %Id\n", retsize,
size);
1056 ok_(__FILE__,
line)(runlevel_info.ulFlags == 0,
"runlevel_info.ulFlags=%lx\n", runlevel_info.ulFlags);
1058 "runlevel_info.RunLevel=%u, expected %u\n", runlevel_info.RunLevel, exinfo->
run_level);
1060 "runlevel_info.UiAccess=%lu, expected %lu\n", runlevel_info.UiAccess, exinfo->
ui_access);
1071 actctx.cbSize =
sizeof(ACTCTXW);
1081 ok(
actctx.wProcessorArchitecture == 0,
1082 "actctx.wProcessorArchitecture=%d\n",
actctx.wProcessorArchitecture);
1085 "actctx.lpAssemblyDirectory=%p\n",
actctx.lpAssemblyDirectory);
1086 ok(
actctx.lpResourceName ==
NULL,
"actctx.lpResourceName=%p\n",
actctx.lpResourceName);
1087 ok(
actctx.lpApplicationName ==
NULL,
"actctx.lpApplicationName=%p\n",
1088 actctx.lpApplicationName);
1102 actctx.cbSize =
sizeof(ACTCTXW);
1111 "Unexpected context handle %p.\n",
handle);
1131 actctx.cbSize =
sizeof(ACTCTXW);
1151 actctx.cbSize =
sizeof(ACTCTXW);
1158 trace(
"wrong_manifest1\n");
1160 trace(
"wrong_manifest2\n");
1162 trace(
"wrong_manifest3\n");
1164 trace(
"wrong_manifest4\n");
1166 trace(
"wrong_manifest5\n");
1168 trace(
"wrong_manifest6\n");
1170 trace(
"wrong_manifest7\n");
1172 trace(
"wrong_manifest8\n");
1174 trace(
"wrong_manifest9\n");
1176 trace(
"wrong_manifest10\n");
1178 trace(
"wrong_manifest11\n");
1180 trace(
"UTF-16 manifest1 without BOM\n");
1182 trace(
"manifest2\n");
1184 trace(
"manifest2+depmanifest1\n");
1256#define DLL_REDIRECT_PATH_INCLUDES_BASE_NAME 1
1257#define DLL_REDIRECT_PATH_OMITS_ASSEMBLY_ROOT 2
1258#define DLL_REDIRECT_PATH_EXPAND 4
1259#define DLL_REDIRECT_PATH_SYSTEM_DEFAULT_REDIRECTED_SYSTEM32_DLL 8
1284 ACTCTX_SECTION_KEYED_DATA
data;
1295 ok_(__FILE__,
line)(
data.ulDataFormatVersion == 1,
"data.ulDataFormatVersion=%lu\n",
data.ulDataFormatVersion);
1303 "got wrong size %ld\n", dlldata->
size);
1305 "got wrong flags value %lx\n", dlldata->
flags);
1311 ok_(__FILE__,
line)(
data.lpSectionGlobalData ==
NULL,
"data.lpSectionGlobalData != NULL\n");
1312 ok_(__FILE__,
line)(
data.ulSectionGlobalDataLength == 0,
"data.ulSectionGlobalDataLength=%lu\n",
1313 data.ulSectionGlobalDataLength);
1314 ok_(__FILE__,
line)(
data.lpSectionBase !=
NULL,
"data.lpSectionBase == NULL\n");
1315 ok_(__FILE__,
line)(
data.ulSectionTotalLength > 0,
"data.ulSectionTotalLength=%lu\n",
1316 data.ulSectionTotalLength);
1318 ok_(__FILE__,
line)(
data.ulAssemblyRosterIndex == exid,
"data.ulAssemblyRosterIndex=%lu, expected %lu\n",
1319 data.ulAssemblyRosterIndex, exid);
1325 ACTIVATION_CONTEXT_SECTION_DLL_REDIRECTION, libname, &
data);
1330 ok_(__FILE__,
line)(
data.ulDataFormatVersion == 1,
"data.ulDataFormatVersion=%lu\n",
data.ulDataFormatVersion);
1332 ok_(__FILE__,
line)(
data.ulLength == 20,
"data.ulLength=%lu\n",
data.ulLength);
1333 ok_(__FILE__,
line)(
data.lpSectionGlobalData ==
NULL,
"data.lpSectionGlobalData != NULL\n");
1334 ok_(__FILE__,
line)(
data.ulSectionGlobalDataLength == 0,
"data.ulSectionGlobalDataLength=%lu\n",
1335 data.ulSectionGlobalDataLength);
1336 ok_(__FILE__,
line)(
data.lpSectionBase !=
NULL,
"data.lpSectionBase == NULL\n");
1337 ok_(__FILE__,
line)(
data.ulSectionTotalLength > 0,
"data.ulSectionTotalLength=%lu\n",
1338 data.ulSectionTotalLength);
1340 ok_(__FILE__,
line)(
data.ulAssemblyRosterIndex == exid,
"data.ulAssemblyRosterIndex=%lu, expected %lu\n",
1341 data.ulAssemblyRosterIndex, exid);
1350 ACTCTX_SECTION_KEYED_DATA
data;
1364 ok_(__FILE__,
line)(
header->magic == 0x64487353,
"got wrong magic 0x%08lx\n",
header->magic);
1367 ok_(__FILE__,
line)(
data.ulDataFormatVersion == 1,
"data.ulDataFormatVersion=%lu\n",
data.ulDataFormatVersion);
1369 ok_(__FILE__,
line)(wnddata->
size ==
sizeof(*wnddata),
"got %ld for header size\n", wnddata->
size);
1370 if (
data.lpData && wnddata->
size ==
sizeof(*wnddata))
1372 static const WCHAR verW[] = {
'6',
'.',
'5',
'.',
'4',
'.',
'3',
'!',0};
1377 ok_(__FILE__,
line)(wnddata->
res == 0,
"got reserved as %ld\n", wnddata->
res);
1392 ok_(__FILE__,
line)(
data.ulLength ==
len,
"got wrong data length %ld, expected %ld\n",
data.ulLength,
len);
1396 WCHAR *modulename, *sectionptr;
1401 ok_(__FILE__,
line)(modulename == sectionptr,
"got wrong name offset %p, expected %p\n", sectionptr, modulename);
1405 ok_(__FILE__,
line)(
data.lpSectionGlobalData ==
NULL,
"data.lpSectionGlobalData != NULL\n");
1406 ok_(__FILE__,
line)(
data.ulSectionGlobalDataLength == 0,
"data.ulSectionGlobalDataLength=%lu\n",
1407 data.ulSectionGlobalDataLength);
1408 ok_(__FILE__,
line)(
data.lpSectionBase !=
NULL,
"data.lpSectionBase == NULL\n");
1409 ok_(__FILE__,
line)(
data.ulSectionTotalLength > 0,
"data.ulSectionTotalLength=%lu\n",
1410 data.ulSectionTotalLength);
1412 ok_(__FILE__,
line)(
data.ulAssemblyRosterIndex == exid,
"data.ulAssemblyRosterIndex=%lu, expected %lu\n",
1413 data.ulAssemblyRosterIndex, exid);
1419 ACTIVATION_CONTEXT_SECTION_WINDOW_CLASS_REDIRECTION, clsname, &
data);
1425 ok_(__FILE__,
line)(
data.ulDataFormatVersion == 1,
"data.ulDataFormatVersion=%lu\n",
data.ulDataFormatVersion);
1427 ok_(__FILE__,
line)(
data.ulLength > 0,
"data.ulLength=%lu\n",
data.ulLength);
1428 ok_(__FILE__,
line)(
data.lpSectionGlobalData ==
NULL,
"data.lpSectionGlobalData != NULL\n");
1429 ok_(__FILE__,
line)(
data.ulSectionGlobalDataLength == 0,
"data.ulSectionGlobalDataLength=%lu\n",
1430 data.ulSectionGlobalDataLength);
1431 ok_(__FILE__,
line)(
data.lpSectionBase !=
NULL,
"data.lpSectionBase == NULL\n");
1432 ok_(__FILE__,
line)(
data.ulSectionTotalLength > 0,
"data.ulSectionTotalLength=%lu\n",
data.ulSectionTotalLength);
1434 ok_(__FILE__,
line)(
data.ulAssemblyRosterIndex == exid,
"data.ulAssemblyRosterIndex=%lu, expected %lu\n",
1435 data.ulAssemblyRosterIndex, exid);
1461 ACTCTX_SECTION_KEYED_DATA
data;
1477 ok_(__FILE__,
line)(
data.ulDataFormatVersion == 1,
"got ulDataFormatVersion %lu\n",
data.ulDataFormatVersion);
1481 ok_(__FILE__,
line)(
data.lpSectionBase !=
NULL,
"got lpSectionBase %p\n",
data.lpSectionBase);
1482 ok_(__FILE__,
line)(
header->magic == 0x64487353,
"got wrong magic 0x%08lx\n",
header->magic);
1483 ok_(__FILE__,
line)(
data.ulSectionTotalLength > 0,
"got ulSectionTotalLength %lu\n",
data.ulSectionTotalLength);
1485 "got lpSectionGlobalData %p\n",
data.lpSectionGlobalData);
1487 "got ulSectionGlobalDataLength %lu\n",
data.ulSectionGlobalDataLength);
1489 ok_(__FILE__,
line)(
data.ulAssemblyRosterIndex == exid,
"got ulAssemblyRosterIndex %lu\n",
data.ulAssemblyRosterIndex);
1492 ok_(__FILE__,
line)(activatable_class->
size ==
sizeof(*activatable_class),
"got size %lu\n",
1493 activatable_class->
size);
1499 "got module_len %lu\n", activatable_class->
module_len);
1505 ACTCTX_SECTION_KEYED_DATA
data = {
sizeof(
data)};
1509 ok(!
ret,
"FindActCtxSectionStringW succeeded\n");
1513 ok(!
ret,
"FindActCtxSectionStringW succeeded\n");
1517 ok(!
ret,
"FindActCtxSectionStringW succeeded\n");
1521 ok(!
ret,
"FindActCtxSectionStringW succeeded\n");
1526 ok(!
ret,
"FindActCtxSectionStringW succeeded\n");
1531 ok(!
ret,
"FindActCtxSectionStringW succeeded\n");
1538 ACTIVATION_CONTEXT_BASIC_INFORMATION basic;
1543 sizeof(basic), &
size);
1545 ok_(__FILE__,
line) (
b,
"ActivationContextBasicInformation failed\n");
1546 ok_(__FILE__,
line) (
size ==
sizeof(ACTIVATION_CONTEXT_BASIC_INFORMATION),
"size mismatch\n");
1547 ok_(__FILE__,
line) (basic.dwFlags == 0,
"unexpected flags %lx\n",basic.dwFlags);
1548 ok_(__FILE__,
line) (basic.hActCtx ==
handle,
"unexpected handle\n");
1551 ActivationContextBasicInformation, &basic,
1552 sizeof(basic), &
size);
1555 ok_(__FILE__,
line) (!
b,
"ActivationContextBasicInformation succeeded\n");
1556 ok_(__FILE__,
line) (
size == 0,
"size mismatch\n");
1558 ok_(__FILE__,
line) (basic.dwFlags == 0,
"unexpected flags %lx\n",basic.dwFlags);
1559 ok_(__FILE__,
line) (basic.hActCtx ==
handle,
"unexpected handle\n");
1563 ok_(__FILE__,
line) (
b,
"ActivationContextBasicInformation failed\n");
1564 ok_(__FILE__,
line) (
size ==
sizeof(ACTIVATION_CONTEXT_BASIC_INFORMATION),
"size mismatch\n");
1565 ok_(__FILE__,
line) (basic.dwFlags == 0,
"unexpected flags %lx\n",basic.dwFlags);
1566 ok_(__FILE__,
line) (basic.hActCtx ==
handle,
"unexpected handle\n");
1621#define GUIDSECTION_MAGIC 0x64487347
1629 ok_(__FILE__,
line)(
header->size ==
sizeof(*header),
"Unexpected size %ld.\n",
header->size);
1630 ok_(__FILE__,
line)(
header->index_offset >=
sizeof(*header),
"Unexpected index offset %lu.\n",
header->index_offset);
1635 ok_(__FILE__,
line)(
index[
i].data_len <=
data->ulSectionTotalLength,
"Unexpected data length.\n");
1637 "Unexpected data offset %ld, section total length %lu, data length %lu.\n",
1663 ok_(__FILE__,
line)(
data.ulDataFormatVersion == 1,
"data.ulDataFormatVersion=%lu\n",
data.ulDataFormatVersion);
1665 ok_(__FILE__,
line)(comclass->
size ==
sizeof(*comclass),
"got %ld for header size\n", comclass->
size);
1666 if (
data.lpData && comclass->
size ==
sizeof(*comclass))
1691 "got progid name length %ld\n", comclass->
progid_len);
1697 ok_(__FILE__,
line)(
data.ulLength ==
len,
"got wrong data length %ld, expected %ld\n",
data.ulLength,
len);
1717 ok_(__FILE__,
line)(!(comclass->
flags & 0xffff00ff),
"Unexpected flags %#lx.\n", comclass->
flags);
1722 static const WCHAR mscoreeW[] = {
'M',
'S',
'C',
'O',
'R',
'E',
'E',
'.',
'D',
'L',
'L',0};
1723 static const WCHAR mscoree2W[] = {
'm',
's',
'c',
'o',
'r',
'e',
'e',
'.',
'd',
'l',
'l',0};
1728 ok_(__FILE__,
line)(clrclass->
size ==
sizeof(*clrclass),
"clrclass: got size %ld\n", clrclass->
size);
1729 ok_(__FILE__,
line)(clrclass->
res[0] == 0,
"clrclass: got res[0]=0x%08lx\n", clrclass->
res[0]);
1730 ok_(__FILE__,
line)(clrclass->
res[1] == 2,
"clrclass: got res[1]=0x%08lx\n", clrclass->
res[1]);
1739 ok_(__FILE__,
line)(clrclass->
res2[0] == 0,
"clrclass: got res2[0]=0x%08lx\n", clrclass->
res2[0]);
1740 ok_(__FILE__,
line)(clrclass->
res2[1] == 0,
"clrclass: got res2[1]=0x%08lx\n", clrclass->
res2[1]);
1756 ok_(__FILE__,
line)(
data.lpSectionBase !=
NULL,
"data.lpSectionBase == NULL\n");
1758 ok_(__FILE__,
line)(
data.ulSectionGlobalDataLength ==
header->names_len,
"data.ulSectionGlobalDataLength=%lu\n",
1759 data.ulSectionGlobalDataLength);
1760 ok_(__FILE__,
line)(
data.ulSectionTotalLength > 0,
"data.ulSectionTotalLength=%lu\n",
1761 data.ulSectionTotalLength);
1763 ok_(__FILE__,
line)(
data.ulAssemblyRosterIndex == exid,
"data.ulAssemblyRosterIndex=%lu, expected %lu\n",
1764 data.ulAssemblyRosterIndex, exid);
1774 ok_(__FILE__,
line)(comclass->
size == comclass2->
size,
"got wrong data length %ld, expected %ld\n", comclass2->
size, comclass->
size);
1775 ok_(__FILE__,
line)(!
memcmp(comclass, comclass2, comclass->
size),
"got wrong data\n");
1800 ACTCTX_SECTION_KEYED_DATA
data;
1812 ok_(__FILE__,
line)(
data.ulDataFormatVersion == 1,
"data.ulDataFormatVersion=%lu\n",
data.ulDataFormatVersion);
1814 ok_(__FILE__,
line)(ifaceps->
size ==
sizeof(*ifaceps),
"got %ld for header size\n", ifaceps->
size);
1815 if (
data.lpData && ifaceps->
size ==
sizeof(*ifaceps))
1833 ok_(__FILE__,
line)(
data.ulLength ==
len,
"got wrong data length %ld, expected %ld\n",
data.ulLength,
len);
1843 ok_(__FILE__,
line)(
data.lpSectionGlobalData ==
NULL,
"data.lpSectionGlobalData != NULL\n");
1844 ok_(__FILE__,
line)(
data.ulSectionGlobalDataLength == 0,
"data.ulSectionGlobalDataLength=%lu\n",
1845 data.ulSectionGlobalDataLength);
1846 ok_(__FILE__,
line)(
data.lpSectionBase !=
NULL,
"data.lpSectionBase == NULL\n");
1847 ok_(__FILE__,
line)(
data.ulSectionTotalLength > 0,
"data.ulSectionTotalLength=%lu\n",
1848 data.ulSectionTotalLength);
1850 ok_(__FILE__,
line)(
data.ulAssemblyRosterIndex == exid,
"data.ulAssemblyRosterIndex=%lu, expected %lu\n",
1851 data.ulAssemblyRosterIndex, exid);
1871 ACTCTX_SECTION_KEYED_DATA
data;
1876 ok(
FALSE,
"FIXME: This test crashes on ReactOS\n");
1886 skip(
"surrogate sections are not supported\n");
1894 ok_(__FILE__,
line)(
data.ulDataFormatVersion == 1,
"data.ulDataFormatVersion=%lu\n",
data.ulDataFormatVersion);
1896 ok_(__FILE__,
line)(surrogate->
size ==
sizeof(*surrogate),
"got %ld for header size\n", surrogate->
size);
1897 if (
data.lpData && surrogate->
size ==
sizeof(*surrogate))
1902 ok_(__FILE__,
line)(surrogate->
res == 0,
"invalid res value %ld\n", surrogate->
res);
1912 ok_(__FILE__,
line)(
data.ulLength ==
len,
"got wrong data length %ld, expected %ld\n",
data.ulLength,
len);
1921 ok_(__FILE__,
line)(
data.lpSectionGlobalData ==
NULL,
"data.lpSectionGlobalData != NULL\n");
1922 ok_(__FILE__,
line)(
data.ulSectionGlobalDataLength == 0,
"data.ulSectionGlobalDataLength=%lu\n",
1923 data.ulSectionGlobalDataLength);
1924 ok_(__FILE__,
line)(
data.lpSectionBase !=
NULL,
"data.lpSectionBase == NULL\n");
1925 ok_(__FILE__,
line)(
data.ulSectionTotalLength > 0,
"data.ulSectionTotalLength=%lu\n",
1926 data.ulSectionTotalLength);
1928 ok_(__FILE__,
line)(
data.ulAssemblyRosterIndex == exid,
"data.ulAssemblyRosterIndex=%lu, expected %lu\n",
1929 data.ulAssemblyRosterIndex, exid);
1942#if defined(__REACTOS__) && defined(_MSC_VER)
1944 ok(
FALSE,
"FIXME: This crashes on MSVC ReactOS\n");
1957 ok_(__FILE__,
line)(
data.ulDataFormatVersion == 1,
"data.ulDataFormatVersion=%lu\n",
data.ulDataFormatVersion);
1959 ok_(__FILE__,
line)(progiddata->
size ==
sizeof(*progiddata),
"got %ld for header size\n", progiddata->
size);
1960 if (
data.lpData && progiddata->
size ==
sizeof(*progiddata))
1983 ok_(__FILE__,
line)(
data.lpSectionBase !=
NULL,
"data.lpSectionBase == NULL\n");
1985 ok_(__FILE__,
line)(
data.ulSectionGlobalDataLength ==
header->global_len,
"data.ulSectionGlobalDataLength=%lu\n",
data.ulSectionGlobalDataLength);
1986 ok_(__FILE__,
line)(
data.ulSectionTotalLength > 0,
"data.ulSectionTotalLength=%lu\n",
data.ulSectionTotalLength);
1988 ok_(__FILE__,
line)(
data.ulAssemblyRosterIndex == exid,
"data.ulAssemblyRosterIndex=%lu, expected %lu\n",
1989 data.ulAssemblyRosterIndex, exid);
1994 static const WCHAR cls1W[] = {
'1',
'.',
'2',
'.',
'3',
'.',
'4',
'!',
'w',
'n',
'd',
'C',
'l',
'a',
's',
's',
'1',0};
2034 ok(
data.lpSectionBase ==
data2.lpSectionBase,
"got %p, %p\n",
data.lpSectionBase,
data2.lpSectionBase);
2035 ok(
data.ulSectionTotalLength ==
data2.ulSectionTotalLength,
"got %lu, %lu\n",
data.ulSectionTotalLength,
2036 data2.ulSectionTotalLength);
2055 static const WCHAR testlib1W[] = {
't',
'e',
's',
't',
'l',
'i',
'b',
'1',
'.',
'd',
'l',
'l',0};
2056 static const WCHAR testlib2W[] = {
't',
'e',
's',
't',
'l',
'i',
'b',
'2',
'.',
'd',
'l',
'l',0};
2094 ok(
data.lpSectionBase ==
data2.lpSectionBase,
"got %p, %p\n",
data.lpSectionBase,
data2.lpSectionBase);
2095 ok(
data.ulSectionTotalLength ==
data2.ulSectionTotalLength,
"got %lu, %lu\n",
data.ulSectionTotalLength,
2096 data2.ulSectionTotalLength);
2106 static const WCHAR helpW[] = {
'h',
'e',
'l',
'p'};
2139 &IID_TlibTest4, &
data2);
2148 ok(
data.lpSectionBase ==
data2.lpSectionBase,
"got %p, %p\n",
data.lpSectionBase,
data2.lpSectionBase);
2149 ok(
data.ulSectionTotalLength ==
data2.ulSectionTotalLength,
"got %lu, %lu\n",
data.ulSectionTotalLength,
2150 data2.ulSectionTotalLength);
2153 ok(
data.ulSectionGlobalDataLength ==
section->names_len,
"data.ulSectionGlobalDataLength=%lu\n",
2154 data.ulSectionGlobalDataLength);
2158 ok(tlib->
size ==
sizeof(*tlib),
"got %ld\n", tlib->
size);
2176 skip(
"Could not create manifest file\n");
2182 win_skip(
"allowDelayedBinding attribute is not supported.\n");
2200 trace(
"default actctx\n");
2220 skip(
"Could not create manifest file\n");
2224 trace(
"manifest1\n");
2238 ok(!
b,
"CloseHandle succeeded\n");
2246 skip(
"Could not create manifest file\n");
2250 trace(
"manifest2 depmanifest1\n");
2265 skip(
"Could not create manifest file\n");
2269 trace(
"manifest2 depmanifest2\n");
2293 trace(
"manifest2 depmanifest3\n");
2296 skip(
"Could not create manifest file\n");
2324 trace(
"manifest3\n");
2327 skip(
"Could not create manifest file\n");
2333 "handle == INVALID_HANDLE_VALUE, error %lu\n",
GetLastError());
2335 win_skip(
"Some activation context features not supported, skipping a test (possibly old XP/Win2k3 system\n");
2338 static const WCHAR nameW[] = {
't',
'e',
's',
't',
's',
'u',
'r',
'r',
'o',
'g',
'a',
't',
'e',0};
2339 static const WCHAR versionW[] = {
'v',
'2',
'.',
'0',
'.',
'5',
'0',
'7',
'2',
'7',0};
2340 static const WCHAR progidW[] = {
'P',
'r',
'o',
'g',
'I',
'd',
'.',
'P',
'r',
'o',
'g',
'I',
'd',0};
2341 static const WCHAR clrprogidW[] = {
'c',
'l',
'r',
'p',
'r',
'o',
'g',
'i',
'd',0};
2384 trace(
"manifest6\n");
2389 "Unexpected context handle %p.\n",
handle);
2399 skip(
"Could not create manifest file 6\n");
2401 trace(
"manifest7\n");
2415 skip(
"Could not create manifest file 7\n");
2417 trace(
"manifest8\n");
2431 skip(
"Could not create manifest file 8\n");
2433 trace(
"manifest9\n");
2447 skip(
"Could not create manifest file 9\n");
2461 skip(
"Could not create manifest file 10\n");
2473 skip(
"Could not create manifest file 11\n");
2475 trace(
"manifest4\n");
2478 skip(
"Could not create manifest file\n");
2494 trace(
"manifest1 in subdir\n");
2500 skip(
"Could not create manifest file\n");
2515 skip(
"Couldn't change directory\n");
2518 trace(
"UTF-16 manifest1, with BOM\n");
2520 skip(
"Could not create manifest file\n");
2534 trace(
"UTF-16 manifest1, reverse endian, with BOM\n");
2536 skip(
"Could not create manifest file\n");
2572 trace(
"child process manifest1\n");
2592 "handle == INVALID_HANDLE_VALUE, error %lu\n",
GetLastError());
2601 ACTCTX_SECTION_KEYED_DATA
data;
2605 pRtlCreateUnicodeStringFromAsciiz(&string_to_findW, string_to_find);
2614 "FindActCtxSectionStringA: expected ret = %u, got %u\n", should_find,
ret);
2617 "FindActCtxSectionStringA: unexpected error %lu\n",
err);
2626 "FindActCtxSectionStringW: expected ret = %u, got %u\n", should_find,
ret);
2629 "FindActCtxSectionStringW: unexpected error %lu\n",
err);
2635 "FindActCtxSectionStringA: expected failure, got %u\n",
ret);
2637 "FindActCtxSectionStringA: unexpected error %lu\n",
err);
2643 "FindActCtxSectionStringW: expected failure, got %u\n",
ret);
2645 "FindActCtxSectionStringW: unexpected error %lu\n",
err);
2647 pRtlFreeUnicodeString(&string_to_findW);
2653 ACTCTX_SECTION_KEYED_DATA
data;
2656 pRtlCreateUnicodeStringFromAsciiz(&string_to_findW, string_to_find);
2661 ret = pRtlFindActivationContextSectionString(0,
NULL,
section, &string_to_findW, &
data);
2664 "RtlFindActivationContextSectionString: unexpected status 0x%lx\n",
ret);
2666 ret = pRtlFindActivationContextSectionString(0,
NULL,
section, &string_to_findW,
NULL);
2669 "RtlFindActivationContextSectionString: unexpected status 0x%lx\n",
ret);
2671 pRtlFreeUnicodeString(&string_to_findW);
2694 ntdll_find(ACTIVATION_CONTEXT_SECTION_ASSEMBLY_INFORMATION,
"testdep",
FALSE,
TRUE, __LINE__);
2695 ntdll_find(ACTIVATION_CONTEXT_SECTION_DLL_REDIRECTION,
"testlib.dll",
TRUE,
FALSE, __LINE__);
2696 ntdll_find(ACTIVATION_CONTEXT_SECTION_DLL_REDIRECTION,
"testlib2.dll",
TRUE,
FALSE, __LINE__);
2697 ntdll_find(ACTIVATION_CONTEXT_SECTION_DLL_REDIRECTION,
"testlib3.dll",
FALSE,
FALSE, __LINE__);
2698 ntdll_find(ACTIVATION_CONTEXT_SECTION_WINDOW_CLASS_REDIRECTION,
"wndClass",
TRUE,
FALSE, __LINE__);
2699 ntdll_find(ACTIVATION_CONTEXT_SECTION_WINDOW_CLASS_REDIRECTION,
"wndClass2",
TRUE,
FALSE, __LINE__);
2700 ntdll_find(ACTIVATION_CONTEXT_SECTION_WINDOW_CLASS_REDIRECTION,
"wndClass3",
FALSE,
FALSE, __LINE__);
2704 trace(
"HACK: ReactOS crashes on DeactivateActCtx() below.\n");
2727 skip(
"Could not create manifest file\n");
2755 static const WCHAR dot_manifest[] = {
'.',
'M',
'a',
'n',
'i',
'f',
'e',
's',
't',0};
2756 static const WCHAR backslash[] = {
'\\',0};
2757 static const WCHAR subdir[] = {
'T',
'e',
's',
't',
'S',
'u',
'b',
'd',
'i',
'r',
'\\',0};
2766 if (*
ptr !=
'\\' && *
ptr !=
'/')
2810 ok(
res != 0,
"couldn't find resource\n" );
2827 {
FIELD_OFFSET(ACTCTXW, wProcessorArchitecture), 0, 0 },
2856 ctxW.dwFlags = ACTCTX_FLAG_ASSEMBLY_DIRECTORY_VALID | ACTCTX_FLAG_RESOURCE_NAME_VALID | ACTCTX_FLAG_HMODULE_VALID;
2858 ctxW.lpAssemblyDirectory = dirW;
2883 ctxW.cbSize +=
sizeof(
void *);
2884 if ((
ctxW.dwFlags & (ACTCTX_FLAG_RESOURCE_NAME_VALID | ACTCTX_FLAG_HMODULE_VALID)) == ACTCTX_FLAG_RESOURCE_NAME_VALID)
2896 actctx.dwFlags = ACTCTX_FLAG_ASSEMBLY_DIRECTORY_VALID | ACTCTX_FLAG_RESOURCE_NAME_VALID | ACTCTX_FLAG_HMODULE_VALID;
2923 actctx.cbSize +=
sizeof(
void *);
2924 if ((
actctx.dwFlags & (ACTCTX_FLAG_RESOURCE_NAME_VALID | ACTCTX_FLAG_HMODULE_VALID)) == ACTCTX_FLAG_RESOURCE_NAME_VALID)
2935 actctx.cbSize =
sizeof(ACTCTXA);
2947 actctx.cbSize =
sizeof(ACTCTXA);
2948 actctx.dwFlags = ACTCTX_FLAG_ASSEMBLY_DIRECTORY_VALID;
2969 strcat(dll,
"testdep1.dll");
2982 actctx.cbSize =
sizeof(ACTCTXA);
2983 actctx.dwFlags = ACTCTX_FLAG_RESOURCE_NAME_VALID | ACTCTX_FLAG_HMODULE_VALID;
2984 actctx.lpSource =
"dummyfile.dll";
3003 actctx.dwFlags = ACTCTX_FLAG_ASSEMBLY_DIRECTORY_VALID;
3004 actctx.lpSource =
"testdir.manifest";
3017 actctx.dwFlags = ACTCTX_FLAG_ASSEMBLY_DIRECTORY_VALID;
3018 actctx.lpSource =
"testdir.manifest";
3030 actctx.dwFlags = ACTCTX_FLAG_ASSEMBLY_DIRECTORY_VALID;
3031 actctx.lpSource =
"testdir.manifest";
3040 actctx.dwFlags = ACTCTX_FLAG_ASSEMBLY_DIRECTORY_VALID;
3055 actctx.lpSource =
"shell32.dll";
3057 actctx.dwFlags = ACTCTX_FLAG_RESOURCE_NAME_VALID;
3065 actctx.dwFlags = ACTCTX_FLAG_HMODULE_VALID | ACTCTX_FLAG_RESOURCE_NAME_VALID;
3069 strcat(path_explorer,
"\\explorer.exe");
3101 actctx.cbSize =
sizeof(ACTCTXW);
3102 actctx.lpSource = tmp_manifest_pathname;
3121#define X(f) if (!(p##f = (void*)GetProcAddress(hLibrary, #f))) return FALSE;
3135 ACTIVATION_CONTEXT_BASIC_INFORMATION basicinfo;
3158 memset(&basicinfo, 0xff,
sizeof(basicinfo));
3161 ok(basicinfo.hActCtx ==
handle,
"got %p\n", basicinfo.hActCtx);
3162 ok(basicinfo.dwFlags == 0,
"got %lx\n", basicinfo.dwFlags);
3164 memset(&basicinfo, 0xff,
sizeof(basicinfo));
3165 ret =
QueryActCtxW(QUERY_ACTCTX_FLAG_USE_ACTIVE_ACTCTX,
NULL, 0, ActivationContextBasicInformation,
3166 &basicinfo,
sizeof(basicinfo),
NULL);
3168 ok(basicinfo.hActCtx ==
handle,
"got %p\n", basicinfo.hActCtx);
3169 ok(basicinfo.dwFlags == 0,
"got %lx\n", basicinfo.dwFlags);
3175 memset(&basicinfo, 0xff,
sizeof(basicinfo));
3178 ok(basicinfo.hActCtx ==
handle,
"got %p\n", basicinfo.hActCtx);
3179 ok(basicinfo.dwFlags == 0,
"got %lx\n", basicinfo.dwFlags);
3181 memset(&basicinfo, 0xff,
sizeof(basicinfo));
3182 ret =
QueryActCtxW(QUERY_ACTCTX_FLAG_USE_ACTIVE_ACTCTX,
NULL, 0, ActivationContextBasicInformation,
3183 &basicinfo,
sizeof(basicinfo),
NULL);
3185 ok(basicinfo.hActCtx ==
handle,
"got %p\n", basicinfo.hActCtx);
3186 ok(basicinfo.dwFlags == 0,
"got %lx\n", basicinfo.dwFlags);
3199 trace(
"HACK: ReactOS crashes on DeactivateActCtx() below.\n");
3218 ACTCTX_COMPATIBILITY_ELEMENT_TYPE
Type;
3234 memset(&compat_info, 0,
sizeof(compat_info));
3236 &compat_info,
sizeof(compat_info), &
size);
3238 ok_(__FILE__,
line)(
b,
"CompatibilityInformationInActivationContext failed\n");
3241 "size mismatch got %Iu\n",
size);
3253 memset(&compat_info, 0,
sizeof(compat_info));
3255 &compat_info,
sizeof(compat_info), &
size);
3257 ok_(__FILE__,
line)(
b,
"CompatibilityInformationInActivationContext failed\n");
3260 "size mismatch got %Iu\n",
size);
3263 "unexpected ElementCount %lu\n", compat_info.
ElementCount);
3267 for (
n = 0;
n < num_compat; ++
n)
3271 "got wrong clsid %s, expected %s for %lu\n",
3275 ok_(__FILE__,
line)(
info->Elements[
n].Type == ACTCTX_COMPATIBILITY_ELEMENT_TYPE_OS,
3276 "Wrong type, got %lu for %lu\n", (
DWORD)
info->Elements[
n].Type,
n);
3281 for (
n = 0;
n < num_compat; ++
n)
3284 "got wrong clsid %s, expected %s for %lu\n",
3288 ok_(__FILE__,
line)(compat_info.
Elements[
n].Type == ACTCTX_COMPATIBILITY_ELEMENT_TYPE_OS,
3289 "Wrong type, got %lu for %lu\n", (
DWORD)compat_info.
Elements[
n].Type,
n);
3291 for (;
n < num_compat + num_version; ++
n)
3293 ok_(__FILE__,
line)(compat_info.
Elements[
n].Type == ACTCTX_COMPATIBILITY_ELEMENT_TYPE_MAXVERSIONTESTED,
3294 "Wrong type, got %lu for %lu\n", (
DWORD)compat_info.
Elements[
n].Type,
n);
3295 ok_(__FILE__,
line)(compat_info.
Elements[
n].MaxVersionTested == expected_version[
n - num_compat],
3306 trace(
"manifest1\n");
3309 skip(
"Could not create manifest file\n");
3317 char buffer[
sizeof(COMPATIBILITY_CONTEXT_ELEMENT) * 2 +
sizeof(
DWORD)];
3327 win_skip(
"CompatibilityInformationInActivationContext not supported.\n");
3338 trace(
"no_supportedOs\n");
3341 skip(
"Could not create manifest file\n");
3355 trace(
"manifest_vista\n");
3358 skip(
"Could not create manifest file\n");
3366 static const GUID* expect_manifest[] =
3376 trace(
"manifest_vista_7_8_10_81\n");
3379 skip(
"Could not create manifest file\n");
3387 static const GUID* expect_manifest[] =
3395 static const ULONGLONG expect_version[] =
3397 0x000a000047b60000ull,
3398 0x0002000300040005ull,
3406 trace(
"manifest_other_guid\n");
3409 skip(
"Could not create manifest file\n");
3417 static const GUID* expect_manifest[] =
3429 static const WCHAR dpiAwareW[] = {
'd',
'p',
'i',
'A',
'w',
'a',
'r',
'e',0};
3430 static const WCHAR dpiAwarenessW[] = {
'd',
'p',
'i',
'A',
'w',
'a',
'r',
'e',
'n',
'e',
's',
's',0};
3431 static const WCHAR dummyW[] = {
'd',
'u',
'm',
'm',
'y',0};
3432 static const WCHAR trueW[] = {
't',
'r',
'u',
'e',0};
3433 static const WCHAR namespace2005W[] = {
'h',
't',
't',
'p',
':',
'/',
'/',
's',
'c',
'h',
'e',
'm',
'a',
's',
'.',
'm',
'i',
'c',
'r',
'o',
's',
'o',
'f',
't',
'.',
'c',
'o',
'm',
'/',
'S',
'M',
'I',
'/',
'2',
'0',
'0',
'5',
'/',
'W',
'i',
'n',
'd',
'o',
'w',
's',
'S',
'e',
't',
't',
'i',
'n',
'g',
's',0};
3434 static const WCHAR namespace2016W[] = {
'h',
't',
't',
'p',
':',
'/',
'/',
's',
'c',
'h',
'e',
'm',
'a',
's',
'.',
'm',
'i',
'c',
'r',
'o',
's',
'o',
'f',
't',
'.',
'c',
'o',
'm',
'/',
'S',
'M',
'I',
'/',
'2',
'0',
'1',
'6',
'/',
'W',
'i',
'n',
'd',
'o',
'w',
's',
'S',
'e',
't',
't',
'i',
'n',
'g',
's',0};
3440#if defined(__REACTOS__) && DLL_EXPORT_VERSION >= 0x600
3444 if (!pQueryActCtxSettingsW)
3447 win_skip(
"QueryActCtxSettingsW is missing\n" );
3474 ok( !
ret,
"QueryActCtxSettingsW succeeded\n" );
3495 ok( !
ret,
"QueryActCtxSettingsW succeeded\n" );
3503 ok( !
ret,
"QueryActCtxSettingsW succeeded\n" );
3510 ok( !
ret,
"QueryActCtxSettingsW succeeded\n" );
3518 "QueryActCtxSettingsW failed err %lu\n",
GetLastError() );
3545 "handle == INVALID_HANDLE_VALUE, error %lu\n",
GetLastError() );
3567 ok( !
ret,
"QueryActCtxSettingsW succeeded\n" );
3580 ok(
ret,
"QueryActCtxSettingsW failed\n" );
3585 ok( !
ret,
"QueryActCtxSettingsW succeeded\n" );
3614 sprintf(
info->path_manifest_exe,
"%s%s",
info->path_tmp,
"exe.manifest");
3617 sprintf(
info->path_manifest_dll,
"%s%s",
info->path_tmp,
"sxs_dll.manifest");
3620 info->context.cbSize =
sizeof(ACTCTXA);
3621 info->context.lpSource =
info->path_manifest_exe;
3622 info->context.lpAssemblyDirectory =
info->path_tmp;
3623 info->context.dwFlags = ACTCTX_FLAG_ASSEMBLY_DIRECTORY_VALID;
3631 skip(
"Failed to create activation context.\n");
3641 ok(
info->module !=
NULL,
"LoadLibrary failed\n");
3644 ok(
info->get_path !=
NULL,
"GetProcAddress failed\n");
3653 if (
info->handle_context)
3655 if (*
info->path_dll)
3660 if (*
info->path_manifest_exe)
3665 if (*
info->path_manifest_dll)
3670 if (*
info->path_tmp)
3717 char path_dll_local[
MAX_PATH + 11];
3725 sprintf(path_dll_local,
"%s%s", path_application,
"sxs_dll.dll");
3738 ok(
strcmp(
path2, path_dll_local) == 0,
"Got '%s', expected '%s'\n",
path2, path_dll_local);
3745 if (*path_dll_local)
3757 char path_dll_local[
MAX_PATH + 11];
3765 sprintf(path_dll_local,
"%s%s", path_application,
"sxs_dll.dll");
3778 ok(
strcmp(
path2, path_dll_local) == 0,
"Got '%s', expected '%s'\n",
path2, path_dll_local);
3785 if (*path_dll_local)
3798 char path_dll_local[
MAX_PATH + 11];
3805 sprintf(path_dll_local,
"%s%s", path_tmp,
"sxs_dll.dll");
3817 ok (module_temp == 0,
"Expected 0, got %p\n", module_temp);
3826 if (*path_dll_local)
3838 HMODULE module_msvcp = 0, module_msvcr = 0;
3845 static char expected_path[
MAX_PATH];
3847 strcat(expected_path,
"\\WinSxS");
3849 static const char *expected_path =
"C:\\Windows\\WinSxS";
3854 sprintf(path_manifest,
"%s%s", path_tmp,
"exe.manifest");
3857 context.cbSize =
sizeof(ACTCTXA);
3858 context.lpSource = path_manifest;
3859 context.lpAssemblyDirectory = path_tmp;
3860 context.dwFlags = ACTCTX_FLAG_ASSEMBLY_DIRECTORY_VALID;
3868 skip(
"Failed to create activation context.\n");
3877 ok (module_msvcp != 0 ||
broken(module_msvcp == 0),
"LoadLibraryA failed, %ld\n",
GetLastError());
3879 ok (module_msvcr != 0 ||
broken(module_msvcr == 0),
"LoadLibraryA failed, %ld\n",
GetLastError());
3880 if (!module_msvcp || !module_msvcr)
3882 skip(
"Failed to find msvcp90 or msvcr90.\n");
3888 ok(
strnicmp(expected_path, path_msvcp,
strlen(expected_path)) == 0,
"Expected path to start with %s, got %s\n", expected_path, path_msvcp);
3889 ok(
strnicmp(expected_path, path_msvcr,
strlen(expected_path)) == 0,
"Expected path to start with %s, got %s\n", expected_path, path_msvcr);
3930 for (
i = 0;
i < num_lists;
i++)
3932 for (
j = 0;
j < res_lists[
i].
count;
j++)
3940 (
void *)cur_manifest,
3957#define subtest_manifest_res(d,e,t,l) subtest_manifest_res_(__LINE__,d,e,t,l)
3962 static const char path_tmp_suffix[] =
"winek32t\\";
3966 static volatile LONG last_uniqid;
3974 ok_(__FILE__,
line)(prefix_len > 0,
"GetTempPathA returned error %lu.\n",
GetLastError());
3976 memcpy(&path_tmp[prefix_len], path_tmp_suffix,
sizeof(path_tmp_suffix) -
sizeof(*path_tmp_suffix));
3979 "CreateDirectoryA returned error %lu.\n",
GetLastError());
3983#if !defined(__REACTOS__) || DLL_EXPORT_VERSION >= 0x600
3997 "CreateDirectoryA returned error %lu.\n",
GetLastError());
4030 res_lists[1].
count = 0;
4038 actctx.lpSource = path_manifest_exe;
4039 actctx.lpAssemblyDirectory = path_tmp;
4040 actctx.dwFlags = ACTCTX_FLAG_ASSEMBLY_DIRECTORY_VALID;
4056 "expected error %lu, got %lu\n",
test_data->expected_error,
err);
4059 ok_(__FILE__,
line)(
ret,
"DeleteFileA(%s) returned error %lu\n.",
4068 ok_(__FILE__,
line)(
ret,
"RemoveDirectoryA(%s) returned error %lu\n.",
4073 ok_(__FILE__,
line)(
ret,
"RemoveDirectoryA(%s) returned error %lu %s\n.",
4083 skip(
"test_manifest_resources() is invalid for WS03 - Win10 1607.\n");
4096 { (
char *)0x1234, 0 },
4152 { { (
char *)2, 0 }, wrong_manifest_resources_numbered,
ERROR_SUCCESS },
4153 { { (
char *)2, 0,
wrong_manifest1 }, correct_manifest_resources_numbered,
4163 { { (
char *)2, 0 }, wrong_manifest_resources_named,
ERROR_SUCCESS },
4182#define LANGID_PREC_MAX_COUNT 5
4193 src_langs[1] = user_ui_lang;
4203 for (
j = 0;
j <
n;
j++)
4205 if (langs_arr[
j] ==
item)
4207 is_item_duplicate =
TRUE;
4212 if (!is_item_duplicate)
4214 langs_arr[
n++] =
item;
4223 static const char manifest_exe_fmt[] =
4224 "<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">"
4226 "<dependentAssembly>"
4227 "<assemblyIdentity type=\"win32\" name=\"sxs_dll\" version=\"1.0.0.0\""
4228 " processorArchitecture=\"" ARCH "\" publicKeyToken=\"0000000000000000\" language=\"%ls\"/>"
4229 "</dependentAssembly>"
4232 static const char manifest_dll_fmt[] =
4233 "<assembly xmlns=\"urn:schemas-microsoft-com:asm.v3\" manifestVersion=\"1.0\">"
4234 "<assemblyIdentity type=\"win32\" name=\"sxs_dll\" version=\"1.0.0.0\""
4235 " processorArchitecture=\"" ARCH "\" publicKeyToken=\"0000000000000000\" language=\"%ls\"/>"
4237 static const char manifest_dll_nofmt[] =
4238 "<assembly xmlns=\"urn:schemas-microsoft-com:asm.v3\" manifestVersion=\"1.0\">"
4239 "<assemblyIdentity type=\"win32\" name=\"sxs_dll\" version=\"1.0.0.0\""
4240 " processorArchitecture=\"" ARCH "\" publicKeyToken=\"0000000000000000\"/>"
4242 char manifest_exe[1024], manifest_dll[1024];
4245 size_t lang_count = 0,
i,
j;
4251 strcpy(manifest_dll, manifest_dll_nofmt);
4257 "unexpected neutral locale\n");
4258#if !defined(__REACTOS__) || DLL_EXPORT_VERSION >= 0x600
4273 for (
i = 0;
i < lang_count;
i++)
4288 for (
j =
i;
j < lang_count;
j++)
4291 spec.
lang = langs_arr[
j];
4294 specs[num_specs++] = spec;
4296 memset(&specs[num_specs++], 0,
sizeof(*specs));
4298 test.manifests = specs;
4304 for (
j = 0;
j < lang_count;
j++)
4306 trace(
"langs[%Id] = 0x%04x %c\n",
j, langs_arr[
j],
j ==
i ?
'<' :
' ');
4317 skip(
"test_valid_manifest_resources_locale() is invalid for WS03 - Win10 1607.\n");
4385 1, 1, 1, ACTIVATION_CONTEXT_PATH_TYPE_WIN32_FILE,
exe_path,
4386 ACTIVATION_CONTEXT_PATH_TYPE_NONE, ACTIVATION_CONTEXT_PATH_TYPE_WIN32_FILE,
4397 skip(
"test_manifest_in_module() crashes on WS03.\n");
4402 ctx.cbSize =
sizeof(
ctx);
4403 ctx.dwFlags = ACTCTX_FLAG_HMODULE_VALID | ACTCTX_FLAG_RESOURCE_NAME_VALID;
4423 ctx.cbSize =
sizeof(
ctx);
4424 ctx.dwFlags = ACTCTX_FLAG_HMODULE_VALID;
4437 ctx.cbSize =
sizeof(
ctx);
4438 ctx.dwFlags = ACTCTX_FLAG_HMODULE_VALID | ACTCTX_FLAG_RESOURCE_NAME_VALID;
4454 ctx.cbSize =
sizeof(
ctx);
4455 ctx.lpSource = pathbuf;
4464 ctx.cbSize =
sizeof(
ctx);
4465 ctx.lpSource = pathbuf;
4466 ctx.dwFlags = ACTCTX_FLAG_RESOURCE_NAME_VALID;
4483 win_skip(
"Needed functions are not available\n");
int WINAPI LCIDToLocaleName(_In_ LCID Locale, _Out_writes_opt_(cchName) LPWSTR lpName, _In_ int cchName, _In_ DWORD dwFlags)
#define InterlockedIncrement
static const WCHAR ctxW[]
static const WCHAR nameW[]
#define ERROR_NOT_ENOUGH_MEMORY
#define ERROR_INSUFFICIENT_BUFFER
#define ERROR_INVALID_PARAMETER
#define GetCurrentDirectoryW(x, y)
#define GetProcAddress(x, y)
#define INVALID_HANDLE_VALUE
#define CreateFileA(a, b, c, d, e, f, g)
static __inline const char * wine_dbgstr_longlong(ULONGLONG ll)
#define HeapFree(x, y, z)
#define ERROR_INVALID_HANDLE
#define FILE_ATTRIBUTE_NORMAL
#define MultiByteToWideChar
static const WCHAR version[]
static void cleanup(void)
BOOL WINAPI ZombifyActCtx(HANDLE hActCtx)
VOID WINAPI ReleaseActCtx(IN HANDLE hActCtx)
BOOL WINAPI DeactivateActCtx(IN DWORD dwFlags, IN ULONG_PTR ulCookie)
BOOL WINAPI QueryActCtxW(IN DWORD dwFlags, IN HANDLE hActCtx, IN PVOID pvSubInstance, IN ULONG ulInfoClass, IN PVOID pvBuffer, IN SIZE_T cbBuffer, IN OUT SIZE_T *pcbWrittenOrRequired OPTIONAL)
BOOL WINAPI GetCurrentActCtx(OUT PHANDLE phActCtx)
BOOL WINAPI ActivateActCtx(IN HANDLE hActCtx, OUT PULONG_PTR ulCookie)
BOOL WINAPI DeleteFileA(IN LPCSTR lpFileName)
BOOL WINAPI RemoveDirectoryA(IN LPCSTR lpPathName)
BOOL WINAPI CreateDirectoryW(IN LPCWSTR lpPathName, IN LPSECURITY_ATTRIBUTES lpSecurityAttributes)
BOOL WINAPI RemoveDirectoryW(IN LPCWSTR lpPathName)
BOOL WINAPI CreateDirectoryA(IN LPCSTR lpPathName, IN LPSECURITY_ATTRIBUTES lpSecurityAttributes)
BOOL WINAPI SetFileTime(IN HANDLE hFile, CONST FILETIME *lpCreationTime OPTIONAL, CONST FILETIME *lpLastAccessTime OPTIONAL, CONST FILETIME *lpLastWriteTime OPTIONAL)
BOOL WINAPI WriteFile(IN HANDLE hFile, IN LPCVOID lpBuffer, IN DWORD nNumberOfBytesToWrite OPTIONAL, OUT LPDWORD lpNumberOfBytesWritten, IN LPOVERLAPPED lpOverlapped OPTIONAL)
HINSTANCE WINAPI DECLSPEC_HOTPATCH LoadLibraryExA(LPCSTR lpLibFileName, HANDLE hFile, DWORD dwFlags)
DWORD WINAPI GetModuleFileNameW(HINSTANCE hModule, LPWSTR lpFilename, DWORD nSize)
HMODULE WINAPI GetModuleHandleW(LPCWSTR lpModuleName)
HMODULE WINAPI DECLSPEC_HOTPATCH GetModuleHandleA(LPCSTR lpModuleName)
HINSTANCE WINAPI DECLSPEC_HOTPATCH LoadLibraryA(LPCSTR lpLibFileName)
DWORD WINAPI GetModuleFileNameA(HINSTANCE hModule, LPSTR lpFilename, DWORD nSize)
DWORD WINAPI GetTempPathW(IN DWORD count, OUT LPWSTR path)
UINT WINAPI GetWindowsDirectoryA(OUT LPSTR lpBuffer, IN UINT uSize)
BOOL WINAPI SetCurrentDirectoryW(IN LPCWSTR lpPathName)
BOOL WINAPI SetCurrentDirectoryA(IN LPCSTR lpPathName)
DWORD WINAPI GetFullPathNameW(IN LPCWSTR lpFileName, IN DWORD nBufferLength, OUT LPWSTR lpBuffer, OUT LPWSTR *lpFilePart)
DWORD WINAPI GetTempPathA(IN DWORD nBufferLength, OUT LPSTR lpBuffer)
BOOL WINAPI DECLSPEC_HOTPATCH CreateProcessA(LPCSTR lpApplicationName, LPSTR lpCommandLine, LPSECURITY_ATTRIBUTES lpProcessAttributes, LPSECURITY_ATTRIBUTES lpThreadAttributes, BOOL bInheritHandles, DWORD dwCreationFlags, LPVOID lpEnvironment, LPCSTR lpCurrentDirectory, LPSTARTUPINFOA lpStartupInfo, LPPROCESS_INFORMATION lpProcessInformation)
VOID WINAPI GetSystemTimeAsFileTime(OUT PFILETIME lpFileTime)
BOOL WINAPI FindActCtxSectionStringW(DWORD dwFlags, const GUID *lpExtGuid, ULONG ulId, LPCWSTR lpSearchStr, PACTCTX_SECTION_KEYED_DATA pInfo)
HANDLE WINAPI CreateActCtxA(PCACTCTXA pActCtx)
BOOL WINAPI FindActCtxSectionStringA(DWORD dwFlags, const GUID *lpExtGuid, ULONG ulId, LPCSTR lpSearchStr, PACTCTX_SECTION_KEYED_DATA pInfo)
HANDLE WINAPI CreateActCtxW(PCACTCTXW pActCtx)
BOOL WINAPI FindActCtxSectionGuid(DWORD dwFlags, const GUID *lpExtGuid, ULONG ulId, const GUID *lpSearchGuid, PACTCTX_SECTION_KEYED_DATA pInfo)
HRSRC WINAPI FindResourceA(HMODULE hModule, LPCSTR name, LPCSTR type)
DWORD WINAPI SizeofResource(HINSTANCE hModule, HRSRC hRsrc)
BOOL WINAPI UpdateResourceA(HANDLE hUpdate, LPCSTR lpType, LPCSTR lpName, WORD wLanguage, LPVOID lpData, DWORD cbData)
HANDLE WINAPI BeginUpdateResourceA(LPCSTR pFileName, BOOL bDeleteExistingResources)
LPVOID WINAPI LockResource(HGLOBAL handle)
HGLOBAL WINAPI LoadResource(HINSTANCE hModule, HRSRC hRsrc)
BOOL WINAPI EndUpdateResourceA(HANDLE hUpdate, BOOL fDiscard)
int WINAPI lstrcmpW(LPCWSTR str1, LPCWSTR str2)
LANGID WINAPI GetUserDefaultUILanguage(void)
int WINAPI lstrcmpiW(LPCWSTR str1, LPCWSTR str2)
LCID WINAPI ConvertDefaultLocale(LCID lcid)
BOOL WINAPI IsDebuggerPresent(void)
_ACRTIMP size_t __cdecl wcslen(const wchar_t *)
_ACRTIMP int __cdecl wcscmp(const wchar_t *, const wchar_t *)
_ACRTIMP int __cdecl memcmp(const void *, const void *, size_t)
_ACRTIMP int __cdecl atoi(const char *)
_ACRTIMP size_t __cdecl strlen(const char *)
_ACRTIMP char *__cdecl strstr(const char *, const char *)
_ACRTIMP int __cdecl strcmp(const char *, const char *)
_ACRTIMP char *__cdecl strrchr(const char *, int)
static const WCHAR versionW[]
static unsigned char buff[32768]
UINT WINAPI GetTempFileNameW(IN LPCWSTR lpPathName, IN LPCWSTR lpPrefixString, IN UINT uUnique, OUT LPWSTR lpTempFileName)
GLuint GLuint GLsizei GLenum type
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
GLdouble GLdouble GLdouble r
GLboolean GLboolean GLboolean b
GLsizei const GLuint * paths
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint GLint GLint j
static const WCHAR helpW[]
NTSYSAPI NTSTATUS WINAPI RtlFindActivationContextSectionString(ULONG, const GUID *, ULONG, const UNICODE_STRING *, PVOID)
static const WCHAR trueW[]
static const WCHAR sourceW[]
LPWSTR WINAPI lstrcatW(LPWSTR lpString1, LPCWSTR lpString2)
void __cdecl void __cdecl void __cdecl void __cdecl void __cdecl winetest_push_context(const char *fmt,...) __WINE_PRINTF_ATTR(1
#define todo_wine_if(is_todo)
void __cdecl void __cdecl void __cdecl void __cdecl void __cdecl void winetest_pop_context(void)
#define memcpy(s1, s2, n)
struct task_struct * current
#define ERROR_ALREADY_EXISTS
#define TRUNCATE_EXISTING
#define FILE_FLAG_DELETE_ON_CLOSE
#define ERROR_FILE_NOT_FOUND
static struct test_info tests[]
static void test_create(void)
struct _test_act_ctx_compat_info test_act_ctx_compat_info
@ WINRT_THREADING_MODEL_BOTH
@ WINRT_THREADING_MODEL_MTA
@ WINRT_THREADING_MODEL_STA
static const char wrong_manifest2[]
static const char two_dll_manifest_exe[]
static void test_typelib_section(void)
static void test_CreateActCtx(void)
static const char wrong_manifest1[]
static const char wrong_manifest7[]
static WCHAR work_dir_subdir[MAX_PATH]
static void write_manifest(const char *filename, const char *manifest)
static const char empty_assembly_manifest[]
static BOOL init_funcs(void)
static void test_no_compat(HANDLE handle, int line)
static const char manifest9[]
static SIZE_T *static const GUID PACTCTX_SECTION_KEYED_DATA
static const char wrong_manifest11[]
static WCHAR exe_path[MAX_PATH]
static const char manifest5[]
static void test_dllredirect_section(void)
static void test_find_progid_redirection(HANDLE handle, const GUID *clsid, const char *progid, ULONG exid, int line)
static const info_in_assembly manifest1_child_info
static const info_in_assembly manifest3_info
static const char builtin_dll_manifest[]
static const char wrong_manifest9[]
static void test_find_string_fail(void)
static WCHAR app_manifest_path[MAX_PATH]
static SIZE_T *static const GUID PUNICODE_STRING
static const char compat_manifest_no_supportedOs[]
static const char testdep_manifest3[]
static const runlevel_info_t runlevel_info9
static void test_one_sxs_and_one_local_1(void)
static const char manifest4[]
static const runlevel_info_t runlevel_info0
static void test_actctx(void)
static BOOL create_manifest_file(const char *filename, const char *manifest, int manifest_len, const char *depfile, const char *depmanifest)
static const char manifest6[]
static void test_one_with_sxs_and_GetModuleHandleA(void)
static const char manifest_wndcls1[]
static void test_compatibility(void)
static void test_two_dlls_at_same_time(void)
static const char wrong_manifest10[]
static void test_settings(void)
static const char manifest3[]
#define DLL_REDIRECT_PATH_OMITS_ASSEMBLY_ROOT
static const char testdep_manifest2[]
static const char manifest1_1[]
static const WCHAR testlib_dll[]
static void init_paths(void)
static const char manifest_wndcls2[]
#define subtest_manifest_res(d, e, t, l)
static void kernel32_find(ULONG section, const char *string_to_find, BOOL should_find, BOOL todo, int line)
static void test_manifest_in_module(void)
static const info_in_assembly depmanifest3_info
static const char manifest2[]
static void test_builtin_sxs(void)
static const char testdep_manifest1[]
static const char manifest7[]
static WCHAR depmanifest_path[MAX_PATH]
static void test_create_and_fail(const char *manifest, const char *depmanifest, int todo, BOOL is_broken)
static const char settings_manifest3[]
static void test_ZombifyActCtx(void)
static void add_sxs_dll_manifest(const char *pathname, const struct manifest_res_spec_list *res_lists, size_t num_lists, const char *manifest)
static const char settings_manifest[]
static const detailed_info_t detailed_info3
static const char two_dll_manifest_dll[]
static void run_sxs_test(int run)
static void test_with_compat(HANDLE handle, DWORD num_compat, DWORD num_version, const GUID *expected_compat[], const ULONGLONG expected_version[], int line)
static void test_valid_manifest_resources_locale(void)
static HANDLE create_manifest(const char *filename, const char *data, int line)
static void test_find_dll_redirection(HANDLE handle, LPCWSTR libname, ULONG exid, int line)
static const char wrong_manifest4[]
static void subtest_valid_manifest_resources_locale(LANGID actctx_lang)
static BOOL create_wide_manifest(const char *filename, const char *manifest, BOOL fBOM, BOOL fReverse)
static void test_one_sxs_and_one_local_2(void)
static const char settings_manifest2[]
static void test_manifest_resources(void)
static const char wrong_manifest6[]
static const char manifest11[]
static void get_langid_precedence(LANGID *langs_arr, size_t *lang_count)
static const runlevel_info_t runlevel_info7
static void test_create_fail(void)
static void delete_manifest_file(const char *filename)
static const info_in_assembly manifest1_info
static const char manifest_wndcls_main[]
static const info_in_assembly manifest_comctrl_info
static void test_findsectionstring(void)
static void clean_sxs_info(sxs_info *info)
static void test_basic_info(HANDLE handle, int line)
static const WCHAR testlib2_dll[]
static const info_in_assembly manifest2_info
static DWORD subtest_manifest_res_(int line, const char *manifest_exe, const char *manifest_dll, const struct multiple_manifest_test *test_data, LANGID lang)
static const info_in_assembly depmanifest2_info
static const char wrong_manifest5[]
static void run_child_process(void)
static void test_wndclass_section(void)
static void get_application_directory(char *buffer, int buffer_size)
static const char manifest10[]
static HANDLE create_temp_manifest_file(const char *manifest, WCHAR *pathname)
static void test_find_activatable_class(HANDLE handle, const WCHAR *classid, enum winrt_threading_model threading_model, const WCHAR *file, ULONG exid, int line)
static void extract_resource(const char *name, const char *type, const char *path)
static const char wrong_manifest8[]
static const detailed_info_t detailed_info1_child
static void test_find_surrogate(HANDLE handle, const GUID *clsid, const WCHAR *name, const WCHAR *version, ULONG exid, int line)
static const char compat_manifest_vista[]
static WCHAR work_dir[MAX_PATH]
static const WCHAR wndClass2W[]
static const char compat_manifest_vista_7_8_10_81[]
static const char compat_manifest_other_guid[]
static BOOL fill_sxs_info(sxs_info *info, const char *temp, const char *path_dll, const char *exe_manifest, const char *dll_manifest, BOOL do_load)
static const WCHAR wndClass3W[]
static void ntdll_find(ULONG section, const char *string_to_find, BOOL should_find, BOOL todo, int line)
static const char manifest1[]
static const detailed_info_t detailed_info2
static void test_find_ifaceps_redirection(HANDLE handle, const GUID *iid, const GUID *tlbid, const GUID *base, const GUID *ps32, ULONG exid, int line)
static void test_info_in_assembly(HANDLE handle, DWORD id, const info_in_assembly *exinfo, int line)
static SIZE_T *static const GUID ULONG
static void test_allowDelayedBinding(void)
static const info_in_assembly manifest4_info
#define GUIDSECTION_MAGIC
#define LANGID_PREC_MAX_COUNT
static const char wrong_manifest3[]
static const char wrong_depmanifest1[]
static void test_CreateActCtx_share_mode(void)
static const info_in_assembly depmanifest1_info
static const runlevel_info_t runlevel_info6
static void test_runlevel_info(HANDLE handle, const runlevel_info_t *exinfo, int line)
static const WCHAR wndClassW[]
static const WCHAR wndClass1W[]
static void test_find_com_redirection(HANDLE handle, const GUID *clsid, const GUID *tlid, const WCHAR *progid, ULONG exid, int line)
static const detailed_info_t detailed_info0
static const runlevel_info_t runlevel_info8
static void test_find_window_class(HANDLE handle, LPCWSTR clsname, ULONG exid, int line)
static void test_app_manifest(void)
static void run_child_process_two_dll(int run)
@ ThreadingModel_Apartment
static void test_manifest_resource_name_omitted(void)
static const char settings_manifest4[]
static WCHAR manifest_path[MAX_PATH]
static WCHAR app_dir[MAX_PATH]
static void test_create_wide_and_fail(const char *manifest, BOOL fBOM)
static const detailed_info_t detailed_info1
static void test_detailed_info(HANDLE handle, const detailed_info_t *exinfo, int line)
static void validate_guid_index(const ACTCTX_SECTION_KEYED_DATA *data, int line)
static const char manifest8[]
static PROCESS_INFORMATION pi
static const WCHAR pathW[]
static const WCHAR dummyW[]
static const WCHAR progidW[]
static const WCHAR path1[]
static const WCHAR path2[]
NTSYSAPI BOOLEAN NTAPI RtlCreateUnicodeStringFromAsciiz(_Out_ PUNICODE_STRING Destination, _In_ PCSZ Source)
#define FILE_SHARE_DELETE
#define FILE_WRITE_ATTRIBUTES
NTSYSAPI VOID NTAPI RtlFreeUnicodeString(PUNICODE_STRING UnicodeString)
#define LOCALE_NAME_MAX_LENGTH
#define MAKELCID(lgid, srtid)
static void test_file_info(void)
#define STATUS_SXS_KEY_NOT_FOUND
static Character const *__cdecl get_path()
#define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8)
#define IsEqualGUID(rguid1, rguid2)
#define offsetof(TYPE, MEMBER)
static __inline const char * wine_dbgstr_guid(const GUID *id)
int winetest_get_mainargs(char ***pargv)
#define wait_child_process
static const WCHAR dpiAwarenessW[]
static const WCHAR dpiAwareW[]
static const WCHAR mscoree2W[]
static const WCHAR mscoreeW[]
#define _WIN32_WINNT_VISTA
wchar_t const *const size_t const buffer_size
COMPATIBILITY_CONTEXT_ELEMENT Elements[10]
DWORD miscstatusthumbnail
LPWSTR root_manifest_path
LPCWSTR encoded_assembly_id
const struct manifest_res_spec * items
const char * override_manifest
struct manifest_res_spec manifest_inline
const struct manifest_res_spec * manifests
ACTCTX_COMPATIBILITY_ELEMENT_TYPE Type
ACTCTX_REQUESTED_RUN_LEVEL run_level
char path_dll[MAX_PATH+11]
#define FIELD_OFFSET(t, f)
static const CHAR manifest[]
static const WCHAR lang[]
#define success(from, fromstr, to, tostr)
DWORD WINAPI GetLastError(void)
#define LOAD_LIBRARY_AS_IMAGE_RESOURCE
#define LOAD_LIBRARY_AS_DATAFILE
#define ERROR_SHARING_VIOLATION
#define ERROR_PATH_NOT_FOUND
#define ERROR_RESOURCE_TYPE_NOT_FOUND
#define ERROR_RESOURCE_NAME_NOT_FOUND
#define ERROR_SXS_KEY_NOT_FOUND
#define ERROR_SXS_CANT_GEN_ACTCTX
#define ERROR_SXS_SECTION_NOT_FOUND
#define LOCALE_ALLOW_NEUTRAL_NAMES
#define ISOLATIONAWARE_NOSTATICIMPORT_MANIFEST_RESOURCE_ID
#define CREATEPROCESS_MANIFEST_RESOURCE_ID
#define MAKEINTRESOURCEA(i)
#define MAXIMUM_RESERVED_MANIFEST_RESOURCE_ID
#define ISOLATIONAWARE_MANIFEST_RESOURCE_ID