48static UINT (
WINAPI *pMsiSourceListEnumSourcesA)
66static const char *
msifile =
"msitest.msi";
71 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
72 "s72\tS38\ts72\ti2\tS255\tS72\n"
73 "Component\tComponent\n"
74 "Five\t{8CC92E9D-14B2-4CA4-B2AA-B11D02078087}\tNEWDIR\t2\t\tfive.txt\n"
75 "Four\t{FD37B4EA-7209-45C0-8917-535F35A2F080}\tCABOUTDIR\t2\t\tfour.txt\n"
76 "One\t{783B242E-E185-4A56-AF86-C09815EC053C}\tMSITESTDIR\t2\tNOT REINSTALL\tone.txt\n"
77 "Three\t{010B6ADD-B27D-4EDD-9B3D-34C4F7D61684}\tCHANGEDDIR\t2\t\tthree.txt\n"
78 "Two\t{BF03D1A6-20DA-4A65-82F3-6CAC995915CE}\tFIRSTDIR\t2\t\ttwo.txt\n"
79 "dangler\t{6091DF25-EF96-45F1-B8E9-A9B1420C7A3C}\tTARGETDIR\t4\t\tregdata\n"
80 "component\t\tMSITESTDIR\t0\t1\tfile\n"
81 "service_comp\t{935A0A91-22A3-4F87-BCA8-928FFDFE2353}\tMSITESTDIR\t0\t\tservice_file\n"
82 "service_comp2\t{3F7B04A4-9521-4649-BDC9-0C8722740A49}\tMSITESTDIR\t0\t\tservice_file2\n"
83 "service_comp3\t{DBCD1502-20E3-423F-B53E-F37E263CDC7E}\tMSITESTDIR\t0\t\t\n";
86 "Directory\tDirectory_Parent\tDefaultDir\n"
88 "Directory\tDirectory\n"
89 "CABOUTDIR\tMSITESTDIR\tcabout\n"
90 "CHANGEDDIR\tMSITESTDIR\tchanged:second\n"
91 "FIRSTDIR\tMSITESTDIR\tfirst\n"
92 "MSITESTDIR\tProgramFilesFolder\tmsitest\n"
93 "NEWDIR\tCABOUTDIR\tnew\n"
94 "ProgramFilesFolder\tTARGETDIR\t.\n"
95 "TARGETDIR\t\tSourceDir";
98 "Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
99 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
101 "Five\t\tFive\tThe Five Feature\t5\t3\tNEWDIR\t0\n"
102 "Four\t\tFour\tThe Four Feature\t4\t3\tCABOUTDIR\t0\n"
103 "One\t\tOne\tThe One Feature\t1\t3\tMSITESTDIR\t0\n"
104 "Three\t\tThree\tThe Three Feature\t3\t3\tCHANGEDDIR\t0\n"
105 "Two\t\tTwo\tThe Two Feature\t2\t3\tFIRSTDIR\t0\n"
106 "feature\t\t\t\t2\t1\tTARGETDIR\t0\n"
107 "service_feature\t\t\t\t2\t1\tTARGETDIR\t0";
110 "Feature_\tComponent_\n"
112 "FeatureComponents\tFeature_\tComponent_\n"
118 "feature\tcomponent\n"
119 "service_feature\tservice_comp\n"
120 "service_feature\tservice_comp2\n"
121 "service_feature\tservice_comp3";
124 "File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
125 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
127 "five.txt\tFive\tfive.txt\t1000\t\t\t16384\t5\n"
128 "four.txt\tFour\tfour.txt\t1000\t\t\t16384\t4\n"
129 "one.txt\tOne\tone.txt\t1000\t\t\t0\t1\n"
130 "three.txt\tThree\tthree.txt\t1000\t\t\t0\t3\n"
131 "two.txt\tTwo\ttwo.txt\t1000\t\t\t0\t2\n"
132 "file\tcomponent\tfilename\t100\t\t\t8192\t1\n"
133 "service_file\tservice_comp\tservice.exe\t100\t\t\t8192\t6\n"
134 "service_file2\tservice_comp2\tservice2.exe\t100\t\t\t8192\t7";
137 "Action\tCondition\tSequence\n"
139 "InstallExecuteSequence\tAction\n"
140 "AllocateRegistrySpace\tNOT Installed\t1550\n"
141 "CostFinalize\t\t1000\n"
142 "CostInitialize\t\t800\n"
144 "ResolveSource\t\t950\n"
145 "MoveFiles\t\t1700\n"
146 "InstallFiles\t\t4000\n"
147 "DuplicateFiles\t\t4500\n"
148 "CreateShortcuts\t\t4600\n"
149 "InstallServices\t\t5000\n"
150 "InstallFinalize\t\t6600\n"
151 "InstallInitialize\t\t1500\n"
152 "InstallValidate\t\t1400\n"
153 "LaunchConditions\t\t100\n"
154 "WriteRegistryValues\tSourceDir And SOURCEDIR\t5000";
157 "DiskId\tLastSequence\tDiskPrompt\tCabinet\tVolumeLabel\tSource\n"
158 "i2\ti4\tL64\tS255\tS32\tS72\n"
160 "1\t3\t\t\tDISK1\t\n"
161 "2\t7\t\tmsitest.cab\tDISK2\t\n";
166 "Property\tProperty\n"
167 "DefaultUIFont\tDlgFont8\n"
170 "InstallMode\tTypical\n"
171 "Manufacturer\tWine\n"
172 "PIDTemplate\t12345<###-%%%%%%%>@@@@@\n"
173 "ProductCode\t{7DF88A48-996F-4EC8-A022-BF956F9B2CBB}\n"
175 "ProductLanguage\t1033\n"
176 "ProductName\tMSITEST\n"
177 "ProductVersion\t1.1.1\n"
178 "PROMPTROLLBACKCOST\tP\n"
180 "UpgradeCode\t{4C0EAA15-0264-4E5A-8758-609EF142B92D}\n"
181 "AdminProperties\tPOSTADMIN\n"
183 "SERVNAME\tTestService\n"
184 "SERVNAME2\tTestService2\n"
185 "SERVDISP\tTestServiceDisp\n"
186 "SERVDISP2\tTestServiceDisp2\n"
187 "MSIFASTINSTALL\t1\n"
192 "Action\tCondition\tSequence\n"
194 "InstallExecuteSequence\tAction\n"
195 "CostInitialize\t\t100\n"
197 "CostFinalize\t\t300\n"
198 "InstallValidate\t\t400\n"
199 "InstallInitialize\t\t500\n"
200 "ProcessComponents\t\t600\n"
201 "WriteEnvironmentStrings\t\t700\n"
202 "wes_immediate\tNOT REMOVE\t701\n"
203 "wes_deferred\tNOT REMOVE\t702\n"
204 "RemoveEnvironmentStrings\t\t800\n"
205 "res_immediate\tREMOVE\t801\n"
206 "res_deferred\tREMOVE\t802\n"
207 "RegisterProduct\t\t900\n"
208 "PublishFeatures\t\t1000\n"
209 "PublishProduct\t\t1100\n"
210 "UnpublishFeatures\t\t1150\n"
211 "InstallFinalize\t\t1200\n";
214 "Action\tType\tSource\tTarget\n"
216 "CustomAction\tAction\n"
217 "wes_immediate\t1\tcustom.dll\tenv_absent\n"
218 "wes_deferred\t1025\tcustom.dll\tenv_present\n"
219 "res_immediate\t1\tcustom.dll\tenv_present\n"
220 "res_deferred\t1025\tcustom.dll\tenv_absent\n";
223 "Environment\tName\tValue\tComponent_\n"
224 "s72\tl255\tL255\ts72\n"
225 "Environment\tEnvironment\n"
226 "Var1\t=-MSITESTVAR1\t1\tOne\n"
227 "Var2\tMSITESTVAR2\t1\tOne\n"
228 "Var3\t=-MSITESTVAR3\t1\tOne\n"
229 "Var4\tMSITESTVAR4\t1\tOne\n"
230 "Var5\t-MSITESTVAR5\t\tOne\n"
231 "Var6\tMSITESTVAR6\t\tOne\n"
232 "Var7\t!-MSITESTVAR7\t\tOne\n"
233 "Var8\t!-*MSITESTVAR8\t\tOne\n"
234 "Var9\t=-MSITESTVAR9\t\tOne\n"
235 "Var10\t=MSITESTVAR10\t\tOne\n"
236 "Var11\t+-MSITESTVAR11\t[~];1\tOne\n"
237 "Var12\t+-MSITESTVAR11\t[~];2\tOne\n"
238 "Var13\t+-MSITESTVAR12\t[~];1\tOne\n"
239 "Var14\t=MSITESTVAR13\t[~];1\tOne\n"
240 "Var15\t=MSITESTVAR13\t[~];2\tOne\n"
241 "Var16\t=MSITESTVAR14\t;1;\tOne\n"
242 "Var17\t=MSITESTVAR15\t;;1;;\tOne\n"
243 "Var18\t=MSITESTVAR16\t 1 \tOne\n"
244 "Var19\t+-MSITESTVAR17\t1\tOne\n"
245 "Var20\t+-MSITESTVAR17\t;;2;;[~]\tOne\n"
246 "Var21\t+-MSITESTVAR18\t1\tOne\n"
247 "Var22\t+-MSITESTVAR18\t[~];;2;;\tOne\n"
248 "Var23\t+-MSITESTVAR19\t1\tOne\n"
249 "Var24\t+-MSITESTVAR19\t[~]2\tOne\n"
250 "Var25\t+-MSITESTVAR20\t1\tOne\n"
251 "Var26\t+-MSITESTVAR20\t2[~]\tOne\n"
252 "Var27\t+-MSITESTVAR21\t[~];1\tOne\n"
253 "Var28\t-MSITESTVAR22\t1\tOne\n"
254 "Var29\t-MSITESTVAR23\t2\tOne\n"
255 "Var30\t*MSITESTVAR100\t1\tOne\n"
256 "Var31\t-=MSITESTVAR24\t[SERVNAME]\tOne\n"
257 "Var32\t-=MSITESTVAR25\t[bogus_prop]\tOne\n";
260 "ServiceInstall\tName\tDisplayName\tServiceType\tStartType\tErrorControl\t"
261 "LoadOrderGroup\tDependencies\tStartName\tPassword\tArguments\tComponent_\tDescription\n"
262 "s72\ts255\tL255\ti4\ti4\ti4\tS255\tS255\tS255\tS255\tS255\ts72\tL255\n"
263 "ServiceInstall\tServiceInstall\n"
264 "TestService\t[SERVNAME]\t[SERVDISP]\t2\t3\t0\t\tservice1[~]+group1[~]service2[~]+group2[~][~]\tTestService\t\t-a arg\tservice_comp\tdescription\n"
265 "TestService2\t[SERVNAME2]\t[SERVDISP2]\t2\t3\t0\t\tservice1[~]+group1[~]service2[~]+group2[~][~]\tTestService2\t\t-a arg\tservice_comp2\tdescription\n";
268 "ServiceInstall\tName\tDisplayName\tServiceType\tStartType\tErrorControl\t"
269 "LoadOrderGroup\tDependencies\tStartName\tPassword\tArguments\tComponent_\tDescription\n"
270 "s72\ts255\tL255\ti4\ti4\ti4\tS255\tS255\tS255\tS255\tS255\ts72\tL255\n"
271 "ServiceInstall\tServiceInstall\n"
272 "TestService\tTestService\tTestService\t2\t3\t32768\t\t\tTestService\t\t\tservice_comp\t\n"
273 "TestService4\tTestService4\tTestService4\t2\t3\t0\t\t\tTestService4\t\t\tservice_comp3\t\n";
276 "ServiceControl\tName\tEvent\tArguments\tWait\tComponent_\n"
277 "s72\tl255\ti2\tL255\tI2\ts72\n"
278 "ServiceControl\tServiceControl\n"
279 "ServiceControl\tTestService3\t8\t\t0\tservice_comp\n"
280 "ServiceControl2\tTestService3\t128\t\t0\tservice_comp2";
283 "ServiceControl\tName\tEvent\tArguments\tWait\tComponent_\n"
284 "s72\tl255\ti2\tL255\tI2\ts72\n"
285 "ServiceControl\tServiceControl\n"
286 "ServiceControl\tSpooler\t1\t\t1\tservice_comp\n"
287 "ServiceControl2\tSpooler\t2\t\t1\tservice_comp\n"
288 "ServiceControl3\tSpooler\t16\t\t1\tservice_comp\n"
289 "ServiceControl4\tSpooler\t32\t\t1\tservice_comp\n";
292 "Action\tCondition\tSequence\n"
294 "InstallExecuteSequence\tAction\n"
295 "LaunchConditions\t\t100\n"
296 "CostInitialize\t\t800\n"
298 "ResolveSource\t\t950\n"
299 "CostFinalize\t\t1000\n"
300 "InstallValidate\t\t1400\n"
301 "InstallInitialize\t\t1500\n"
302 "StopServices\t\t4000\n"
303 "stop_immediate\tNOT REMOVE\t4001\n"
304 "stop_deferred\tNOT REMOVE\t4002\n"
305 "DeleteServices\t\t5000\n"
306 "MoveFiles\t\t5100\n"
307 "InstallFiles\t\t5200\n"
308 "DuplicateFiles\t\t5300\n"
309 "StartServices\t\t5400\n"
310 "start_deferred\tNOT REMOVE\t5401\n"
311 "RegisterProduct\t\t5500\n"
312 "PublishFeatures\t\t5600\n"
313 "PublishProduct\t\t5700\n"
314 "UnpublishFeatures\t\t5800\n"
315 "InstallFinalize\t\t6000\n";
318 "Action\tType\tSource\tTarget\n"
320 "CustomAction\tAction\n"
321 "stop_immediate\t1\tcustom.dll\tsss_started\n"
322 "stop_deferred\t1025\tcustom.dll\tsss_stopped\n"
323 "start_deferred\t1025\tcustom.dll\tsss_started\n";
326 "Action\tCondition\tSequence\n"
328 "InstallExecuteSequence\tAction\n"
329 "LaunchConditions\t\t100\n"
330 "CostInitialize\t\t800\n"
332 "ResolveSource\t\t950\n"
333 "CostFinalize\t\t1000\n"
334 "InstallValidate\t\t1400\n"
335 "InstallInitialize\t\t1500\n"
336 "StopServices\t\t5000\n"
337 "DeleteServices\t\t5050\n"
338 "sds_immediate\tNOT REMOVE\t5051\n"
339 "sds_deferred\tNOT REMOVE\t5052\n"
340 "MoveFiles\t\t5100\n"
341 "InstallFiles\t\t5200\n"
342 "DuplicateFiles\t\t5300\n"
343 "InstallServices\t\t5400\n"
344 "StartServices\t\t5450\n"
345 "RegisterProduct\t\t5500\n"
346 "PublishFeatures\t\t5600\n"
347 "PublishProduct\t\t5700\n"
348 "UnpublishFeatures\t\t5800\n"
349 "InstallFinalize\t\t6000\n";
352 "Action\tType\tSource\tTarget\n"
354 "CustomAction\tAction\n"
355 "sds_immediate\t1\tcustom.dll\tsds_present\n"
356 "sds_deferred\t1025\tcustom.dll\tsds_absent\n";
359 "Action\tCondition\tSequence\n"
361 "InstallExecuteSequence\tAction\n"
362 "CostInitialize\t\t800\n"
364 "CostFinalize\t\t1000\n"
365 "InstallValidate\t\t1400\n"
366 "InstallInitialize\t\t1500\n"
367 "StopServices\t\t5000\n"
368 "DeleteServices\t\t5050\n"
369 "InstallFiles\t\t5200\n"
370 "InstallServices\t\t5400\n"
371 "sis_immediate\tNOT REMOVE\t5401\n"
372 "sis_deferred\tNOT REMOVE\t5402\n"
373 "StartServices\t\t5450\n"
374 "RegisterProduct\t\t5500\n"
375 "PublishFeatures\t\t5600\n"
376 "PublishProduct\t\t5700\n"
377 "UnpublishFeatures\t\t5800\n"
378 "InstallFinalize\t\t6000\n";
381 "Action\tType\tSource\tTarget\n"
383 "CustomAction\tAction\n"
384 "sis_immediate\t1\tcustom.dll\tsis_absent\n"
385 "sis_deferred\t1025\tcustom.dll\tsis_present\n";
388 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
389 "s72\tS38\ts72\ti2\tS255\tS72\n"
390 "Component\tComponent\n"
391 "maximus\t\tMSITESTDIR\t0\t1\tmaximus\n";
394 "Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
395 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
397 "feature\t\tFeature\tFeature\t2\t1\tTARGETDIR\t0\n"
398 "montecristo\t\tFeature\tFeature\t2\t1\tTARGETDIR\t0";
401 "Feature_\tComponent_\n"
403 "FeatureComponents\tFeature_\tComponent_\n"
405 "montecristo\tmaximus";
408 "File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
409 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
411 "maximus\tmaximus\tmaximus\t500\t\t\t8192\t1";
414 "DiskId\tLastSequence\tDiskPrompt\tCabinet\tVolumeLabel\tSource\n"
415 "i2\ti4\tL64\tS255\tS32\tS72\n"
417 "1\t1\t\t\tDISK1\t\n";
420 "Feature_\tComponent_\n"
422 "FeatureComponents\tFeature_\tComponent_\n"
426 "File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
427 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
429 "augustus\taugustus\taugustus\t500\t\t\t8192\t1";
432 "Action\tCondition\tSequence\n"
434 "InstallExecuteSequence\tAction\n"
435 "ValidateProductID\t\t700\n"
436 "CostInitialize\t\t800\n"
438 "CostFinalize\t\t1000\n"
439 "InstallValidate\t\t1400\n"
440 "InstallInitialize\t\t1500\n"
441 "ProcessComponents\tPROCESS_COMPONENTS=1 Or FULL=1\t1600\n"
442 "ppc_immediate\tPROCESS_COMPONENTS AND ALLUSERS\t1601\n"
443 "ppc_deferred\tPROCESS_COMPONENTS AND ALLUSERS\t1602\n"
444 "UnpublishFeatures\tUNPUBLISH_FEATURES=1 Or FULL=1\t1800\n"
445 "uf_immediate\tUNPUBLISH_FEATURES AND ALLUSERS\t1801\n"
446 "uf_deferred\tUNPUBLISH_FEATURES AND ALLUSERS\t1802\n"
447 "RemoveFiles\t\t3500\n"
448 "InstallFiles\t\t4000\n"
449 "RegisterUser\tREGISTER_USER=1 Or FULL=1\t6000\n"
450 "ru_immediate\tREGISTER_USER AND ALLUSERS\t6001\n"
451 "ru_deferred\tREGISTER_USER AND ALLUSERS\t6002\n"
452 "RegisterProduct\tREGISTER_PRODUCT=1 Or FULL=1\t6100\n"
453 "rp_immediate\tREGISTER_PRODUCT AND ALLUSERS AND NOT RP_TEST64\t6101\n"
454 "rp_deferred\tREGISTER_PRODUCT AND ALLUSERS AND NOT RP_TEST64\t6102\n"
455 "PublishFeatures\tPUBLISH_FEATURES=1 Or FULL=1\t6300\n"
456 "pf_immediate\tPUBLISH_FEATURES AND ALLUSERS\t6301\n"
457 "pf_deferred\tPUBLISH_FEATURES AND ALLUSERS\t6302\n"
458 "PublishProduct\tPUBLISH_PRODUCT=1 Or FULL=1\t6400\n"
459 "pp_immediate\tPUBLISH_PRODUCT AND ALLUSERS\t6401\n"
460 "pp_deferred\tPUBLISH_PRODUCT AND ALLUSERS\t6402\n"
461 "InstallFinalize\t\t6600";
464 "Action\tType\tSource\tTarget\n"
466 "CustomAction\tAction\n"
467 "pf_immediate\t1\tcustom.dll\tpf_absent\n"
468 "pf_deferred\t1025\tcustom.dll\tpf_present\n"
469 "uf_immediate\t1\tcustom.dll\tpf_present\n"
470 "uf_deferred\t1025\tcustom.dll\tpf_absent\n"
471 "pp_immediate\t1\tcustom.dll\tpp_absent\n"
472 "pp_deferred\t1025\tcustom.dll\tpp_present\n"
473 "rp_immediate\t1\tcustom.dll\trp_absent\n"
474 "rp_deferred\t1025\tcustom.dll\trp_present\n"
475 "ru_immediate\t1\tcustom.dll\tru_absent\n"
476 "ru_deferred\t1025\tcustom.dll\tru_present\n"
477 "ppc_immediate\t1\tcustom.dll\tppc_absent\n"
478 "ppc_deferred\t1025\tcustom.dll\tppc_present\n";
481 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
482 "s72\tS38\ts72\ti2\tS255\tS72\n"
483 "Component\tComponent\n"
484 "maximus\t{DF2CBABC-3BCC-47E5-A998-448D1C0C895B}\tMSITESTDIR\t0\t\tmaximus\n";
487 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
488 "s72\tS38\ts72\ti2\tS255\tS72\n"
489 "Component\tComponent\n"
490 "maximus\t{DF2CBABC-3BCC-47E5-A998-448D1C0C895B}\tMSITESTDIR\t0\t\tmaximus\n"
491 "augustus\t{5AD3C142-CEF8-490D-B569-784D80670685}\tMSITESTDIR\t1\t\taugustus\n";
494 "File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
495 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
497 "maximus\tmaximus\tmaximus\t500\t\t\t8192\t1\n"
498 "augustus\taugustus\taugustus\t500\t\t\t8192\t2";
501 "DiskId\tLastSequence\tDiskPrompt\tCabinet\tVolumeLabel\tSource\n"
502 "i2\ti4\tL64\tS255\tS32\tS72\n"
504 "1\t2\t\t\tDISK1\t\n";
507 "Feature_\tComponent_\n"
509 "FeatureComponents\tFeature_\tComponent_\n"
511 "feature\taugustus\n"
512 "montecristo\tmaximus";
515 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
516 "s72\tS38\ts72\ti2\tS255\tS72\n"
517 "Component\tComponent\n"
518 "augustus\t\tMSITESTDIR\t0\t\taugustus\n";
521 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
522 "s72\tS38\ts72\ti2\tS255\tS72\n"
523 "Component\tComponent\n"
524 "hydrogen\t{C844BD1E-1907-4C00-8BC9-150BD70DF0A1}\tMSITESTDIR\t0\t\thydrogen\n"
525 "helium\t{5AD3C142-CEF8-490D-B569-784D80670685}\tMSITESTDIR\t1\t\thelium\n"
526 "lithium\t\tMSITESTDIR\t2\t\tlithium\n";
529 "Feature_\tComponent_\n"
531 "FeatureComponents\tFeature_\tComponent_\n"
532 "feature\thydrogen\n"
537 "File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
538 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
540 "hydrogen\thydrogen\thydrogen\t0\t\t\t8192\t1\n"
541 "helium\thelium\thelium\t0\t\t\t8192\t1\n"
542 "lithium\tlithium\tlithium\t0\t\t\t8192\t1";
545 "Action\tCondition\tSequence\n"
547 "InstallExecuteSequence\tAction\n"
548 "ValidateProductID\t\t700\n"
549 "CostInitialize\t\t800\n"
551 "CostFinalize\t\t1000\n"
552 "InstallValidate\t\t1400\n"
553 "InstallInitialize\t\t1500\n"
554 "ProcessComponents\t\t1600\n"
555 "RemoveFiles\t\t3500\n"
556 "InstallFiles\t\t4000\n"
557 "RegisterProduct\t\t6100\n"
558 "PublishFeatures\t\t6300\n"
559 "PublishProduct\t\t6400\n"
560 "UnpublishFeatures\t\t6500\n"
561 "InstallFinalize\t\t6600";
564 "FileKey\tComponent_\tFileName\tDirProperty\tInstallMode\n"
565 "s72\ts72\tS255\ts72\tI2\n"
566 "RemoveFile\tFileKey\n"
567 "furlong\thydrogen\tfurlong\tMSITESTDIR\t1\n"
568 "firkin\thelium\tfirkin\tMSITESTDIR\t1\n"
569 "fortnight\tlithium\tfortnight\tMSITESTDIR\t1\n"
570 "becquerel\thydrogen\tbecquerel\tMSITESTDIR\t2\n"
571 "dioptre\thelium\tdioptre\tMSITESTDIR\t2\n"
572 "attoparsec\tlithium\tattoparsec\tMSITESTDIR\t2\n"
573 "storeys\thydrogen\tstoreys\tMSITESTDIR\t3\n"
574 "block\thelium\tblock\tMSITESTDIR\t3\n"
575 "siriometer\tlithium\tsiriometer\tMSITESTDIR\t3\n"
576 "nanoacre\thydrogen\t\tCABOUTDIR\t3\n";
579 "FileKey\tComponent_\tSourceName\tDestName\tSourceFolder\tDestFolder\tOptions\n"
580 "s72\ts72\tS255\tS255\tS72\ts72\ti2\n"
581 "MoveFile\tFileKey\n"
582 "abkhazia\taugustus\tnonexistent\tdest\tSourceDir\tMSITESTDIR\t0\n"
583 "bahamas\taugustus\tnonexistent\tdest\tSourceDir\tMSITESTDIR\t1\n"
584 "cambodia\taugustus\tcameroon\tcanada\tSourceDir\tMSITESTDIR\t0\n"
585 "denmark\taugustus\tdjibouti\tdominica\tSourceDir\tMSITESTDIR\t1\n"
586 "ecuador\taugustus\tegypt\telsalvador\tNotAProp\tMSITESTDIR\t1\n"
587 "fiji\taugustus\tfinland\tfrance\tSourceDir\tNotAProp\t1\n"
588 "gabon\taugustus\tgambia\tgeorgia\tSOURCEFULL\tMSITESTDIR\t1\n"
589 "haiti\taugustus\thonduras\thungary\tSourceDir\tDESTFULL\t1\n"
590 "iceland\taugustus\tindia\tindonesia\tMSITESTDIR\tMSITESTDIR\t1\n"
591 "jamaica\taugustus\tjapan\tjordan\tFILEPATHBAD\tMSITESTDIR\t1\n"
592 "kazakhstan\taugustus\t\tkiribati\tFILEPATHGOOD\tMSITESTDIR\t1\n"
593 "laos\taugustus\tlatvia\tlebanon\tSourceDir\tMSITESTDIR\t1\n"
594 "namibia\taugustus\tnauru\tkiribati\tSourceDir\tMSITESTDIR\t1\n"
595 "pakistan\taugustus\tperu\tsfn|poland\tSourceDir\tMSITESTDIR\t1\n"
596 "wildcard\taugustus\tapp*\twildcard\tSourceDir\tMSITESTDIR\t1\n"
597 "single\taugustus\tf?o\tsingle\tSourceDir\tMSITESTDIR\t1\n"
598 "wildcardnodest\taugustus\tbudd*\t\tSourceDir\tMSITESTDIR\t1\n"
599 "singlenodest\taugustus\tb?r\t\tSourceDir\tMSITESTDIR\t1\n";
602 "Action\tCondition\tSequence\n"
604 "InstallExecuteSequence\tAction\n"
605 "CostInitialize\t\t100\n"
607 "ResolveSource\t\t300\n"
608 "CostFinalize\t\t400\n"
609 "InstallValidate\t\t500\n"
610 "InstallInitialize\t\t600\n"
612 "mov_immediate\t\t701\n"
613 "mov_deferred\t\t702\n"
614 "InstallFiles\t\t800\n"
615 "InstallFinalize\t\t900\n";
618 "Action\tType\tSource\tTarget\n"
620 "CustomAction\tAction\n"
621 "mov_immediate\t1\tcustom.dll\tmov_absent\n"
622 "mov_deferred\t1025\tcustom.dll\tmov_present\n";
625 "Directory\tDirectory_Parent\tDefaultDir\n"
627 "Directory\tDirectory\n"
628 "THIS\tMSITESTDIR\tthis\n"
629 "DOESNOT\tTHIS\tdoesnot\n"
630 "NONEXISTENT\tDOESNOT\texist\n"
631 "MSITESTDIR\tProgramFilesFolder\tmsitest\n"
632 "ProgramFilesFolder\tTARGETDIR\t.\n"
633 "TARGETDIR\t\tSourceDir";
636 "FileKey\tComponent_\tFile_\tDestName\tDestFolder\n"
637 "s72\ts72\ts72\tS255\tS72\n"
638 "DuplicateFile\tFileKey\n"
639 "maximus\tmaximus\tmaximus\taugustus\t\n"
640 "caesar\tmaximus\tmaximus\t\tNONEXISTENT\n"
641 "augustus\tnosuchcomponent\tmaximus\t\tMSITESTDIR\n";
644 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
645 "s72\tS38\ts72\ti2\tS255\tS72\n"
646 "Component\tComponent\n"
647 "augustus\t{bafe0297-cbcc-4e08-8a78-7e9b83456eef}\tMSITESTDIR\t0\t\t\n"
648 "caesar\t{bafe0298-cbcc-4e08-8a78-7e9b83456eef}\tMSITESTDIR\t1\t\t\n";
651 "Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
652 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
654 "feature\t\tFeature\tFeature\t2\t1\tTARGETDIR\t0\n"
655 "feature2\t\tFeature2\tFeature2\t2\t1\tTARGETDIR\t1";
658 "Feature_\tComponent_\n"
660 "FeatureComponents\tFeature_\tComponent_\n"
661 "feature\taugustus\n"
665 "Registry\tRoot\tKey\tName\tValue\tComponent_\n"
666 "s72\ti2\tl255\tL255\tL0\ts72\n"
667 "Registry\tRegistry\n"
668 "regdata0\t1\tmsitest\tsz\tstring\taugustus\n"
669 "regdata1\t1\tmsitest\tmultisz\tone[~]two[~]three\taugustus\n"
670 "regdata2\t1\tmsitest\texpandsz\t#%string\taugustus\n"
671 "regdata3\t1\tmsitest\tdword\t#123\taugustus\n"
672 "regdata4\t1\tmsitest\tbinary\t#x01234567\taugustus\n"
673 "regdata5\t1\tmsitest\t\tdefault\taugustus\n"
674 "regdata6\t1\tmsitest\\subkey\t*\t\taugustus\n"
675 "regdata7\t1\tmsitest\\subkey\t*\t#%\taugustus\n"
676 "regdata8\t1\tmsitest\\subkey\t*\t#x\taugustus\n"
677 "regdata9\t1\tmsitest\\VisualStudio\\10.0\\AD7Metrics\\Exception\\{049EC4CC-30D2-4032-9256-EE18EB41B62B}\\Common Language Runtime Exceptions\\System.Workflow.ComponentModel.Serialization\\System.Workflow.ComponentModel.Serialization.WorkflowMarkupSerializationException\tlong\tkey\taugustus\n"
678 "regdata10\t1\tmsitest\tValue1\t[~]one[~]\taugustus\n"
679 "regdata11\t1\tmsitest\tValue2\t[~]two\taugustus\n"
680 "regdata12\t1\tmsitest\tValue3\tone[~]\taugustus\n"
681 "regdata13\t1\tmsitest\tValue4\tone[~]two\taugustus\n"
682 "regdata14\t1\tmsitest\tValue5\t[~]one[~]two[~]three\taugustus\n"
683 "regdata15\t1\tmsitest\tValue6\t[~]\taugustus\n"
684 "regdata16\t1\tmsitest\tValue7\t[~]two\taugustus\n"
685 "regdata17\t1\tmsitest\tformat\t[regdata17]\taugustus\n"
686 "regdata18\t1\tmsitest\tsource\t#1\tcaesar\n"
687 "regdata19\t1\tmsitest\\create\t+\t\taugustus\n"
688 "regdata20\t1\tmsitest\\delete\t-\t\taugustus\n";
691 "RemoveRegistry\tRoot\tKey\tName\tComponent_\n"
692 "s72\ti2\tl255\tL255\ts72\n"
693 "RemoveRegistry\tRemoveRegistry\n"
694 "regdata0\t1\tmsitest\tinstremove\taugustus\n"
695 "regdata1\t1\tmsitest\\instremove\t-\taugustus\n";
698 "Action\tCondition\tSequence\n"
700 "InstallExecuteSequence\tAction\n"
701 "CostInitialize\t\t800\n"
703 "CostFinalize\t\t1000\n"
704 "InstallValidate\t\t1400\n"
705 "InstallInitialize\t\t1500\n"
706 "ProcessComponents\t\t1600\n"
707 "RemoveRegistryValues\t\t4900\n"
708 "rrv_immediate\tREMOVE\t4901\n"
709 "rrv_deferred\tREMOVE\t4902\n"
710 "WriteRegistryValues\t\t5000\n"
711 "wrv_immediate\tNOT REMOVE\t5001\n"
712 "wrv_deferred\tNOT REMOVE\t5002\n"
713 "RegisterProduct\t\t6100\n"
714 "PublishFeatures\t\t6200\n"
715 "PublishProduct\t\t6300\n"
716 "UnpublishFeatures\t\t6400\n"
717 "InstallFinalize\t\t6600\n";
720 "Action\tType\tSource\tTarget\n"
722 "CustomAction\tAction\n"
723 "wrv_immediate\t1\tcustom.dll\twrv_absent\n"
724 "wrv_deferred\t1025\tcustom.dll\twrv_present\n"
725 "rrv_immediate\t1\tcustom.dll\twrv_present\n"
726 "rrv_deferred\t1025\tcustom.dll\twrv_absent\n";
729 "Directory\tDirectory_Parent\tDefaultDir\n"
731 "Directory\tDirectory\n"
732 "FIRSTDIR\tMSITESTDIR\tfirst\n"
733 "SECONDDIR\tMSITESTDIR\tsecond\n"
734 "THIRDDIR\tMSITESTDIR\tthird\n"
735 "MSITESTDIR\tProgramFilesFolder\tmsitest\n"
736 "ProgramFilesFolder\tTARGETDIR\t.\n"
737 "TARGETDIR\t\tSourceDir";
740 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
741 "s72\tS38\ts72\ti2\tS255\tS72\n"
742 "Component\tComponent\n"
743 "One\t{F8CD42AC-9C38-48FE-8664-B35FD121012A}\tFIRSTDIR\t0\t\tone.txt\n"
744 "Two\t{DE2DB02E-2DDF-4E34-8CF6-DCA13E29DF52}\tSECONDDIR\t0\t\ttwo.txt\n";
747 "Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
748 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
750 "One\t\tOne\tThe One Feature\t1\t3\tFIRSTDIR\t0\n"
751 "Two\t\tTwo\tThe Two Feature\t1\t3\tSECONDDIR\t0\n";
754 "Feature_\tComponent_\n"
756 "FeatureComponents\tFeature_\tComponent_\n"
761 "File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
762 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
764 "one.txt\tOne\tone.txt\t0\t\t\t0\t1\n"
765 "two.txt\tTwo\ttwo.txt\t0\t\t\t0\t2\n";
768 "Directory_\tComponent_\n"
770 "CreateFolder\tDirectory_\tComponent_\n"
776 "Action\tCondition\tSequence\n"
778 "InstallExecuteSequence\tAction\n"
779 "CostFinalize\t\t1000\n"
780 "ValidateProductID\t\t700\n"
781 "CostInitialize\t\t800\n"
783 "RemoveFiles\t\t3500\n"
784 "rfi_immediate\tREMOVE\t3501\n"
785 "rfi_deferred\tREMOVE\t3502\n"
786 "CreateFolders\t\t3700\n"
787 "cf_immediate\tNOT REMOVE\t3701\n"
788 "cf_deferred\tNOT REMOVE\t3702\n"
789 "RemoveFolders\t\t3800\n"
790 "rf_immediate\tREMOVE\t3801\n"
791 "rf_deferred\tREMOVE\t3802\n"
792 "InstallFiles\t\t4000\n"
793 "ifi_immediate\tNOT REMOVE\t4001\n"
794 "ifi_deferred\tNOT REMOVE\t4002\n"
795 "RegisterUser\t\t6000\n"
796 "RegisterProduct\t\t6100\n"
797 "PublishFeatures\t\t6300\n"
798 "PublishProduct\t\t6400\n"
799 "InstallFinalize\t\t6600\n"
800 "InstallInitialize\t\t1500\n"
801 "ProcessComponents\t\t1600\n"
802 "UnpublishFeatures\t\t1800\n"
803 "InstallValidate\t\t1400\n"
804 "LaunchConditions\t\t100\n";
807 "Action\tType\tSource\tTarget\n"
809 "CustomAction\tAction\n"
810 "ifi_immediate\t1\tcustom.dll\tfile_absent\n"
811 "ifi_deferred\t1025\tcustom.dll\tfile_present\n"
812 "rfi_immediate\t1\tcustom.dll\tfile_present\n"
813 "rfi_deferred\t1025\tcustom.dll\tfile_absent\n"
814 "cf_immediate\t1\tcustom.dll\tcf_absent\n"
815 "cf_deferred\t1025\tcustom.dll\tcf_present\n"
816 "rf_immediate\t1\tcustom.dll\tcf_present\n"
817 "rf_deferred\t1025\tcustom.dll\tcf_absent\n";
820 "File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
821 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
823 "selfreg.dll\tselfreg\tselfreg.dll\t1000\t\t\t8192\t1\n";
826 "Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
827 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
829 "selfreg\t\t\tselfreg feature\t1\t2\tMSITESTDIR\t0\n";
832 "Feature_\tComponent_\n"
834 "FeatureComponents\tFeature_\tComponent_\n"
835 "selfreg\tselfreg\n";
838 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
839 "s72\tS38\ts72\ti2\tS255\tS72\n"
840 "Component\tComponent\n"
841 "selfreg\t{BB4C26FD-89D8-4E49-AF1C-DB4DCB5BF1B0}\tMSITESTDIR\t0\t\tselfreg.dll\n";
850 "Action\tCondition\tSequence\n"
852 "InstallExecuteSequence\tAction\n"
853 "CostInitialize\t\t800\n"
855 "CostFinalize\t\t1000\n"
856 "InstallValidate\t\t1400\n"
857 "InstallInitialize\t\t1500\n"
858 "ProcessComponents\t\t1600\n"
859 "SelfUnregModules\t\t3800\n"
860 "su_immediate\tREMOVE\t3801\n"
861 "su_deferred\tREMOVE\t3802\n"
862 "RemoveFiles\t\t3900\n"
863 "InstallFiles\t\t4000\n"
864 "SelfRegModules\t\t4100\n"
865 "sr_immediate\tNOT REMOVE\t4101\n"
866 "sr_deferred\tNOT REMOVE\t4102\n"
867 "CreateShortcuts\t\t4600\n"
868 "RegisterProduct\t\t5100\n"
869 "PublishFeatures\t\t5200\n"
870 "PublishProduct\t\t5300\n"
871 "UnpublishFeatures\t\t5400\n"
872 "InstallFinalize\t\t6600\n";
875 "Action\tType\tSource\tTarget\n"
877 "CustomAction\tAction\n"
878 "sr_immediate\t1\tcustom.dll\tsr_absent\n"
879 "sr_deferred\t1025\tcustom.dll\tsr_present\n"
880 "su_immediate\t1\tcustom.dll\tsr_present\n"
881 "su_deferred\t1025\tcustom.dll\tsr_absent\n";
884 "DiskId\tLastSequence\tDiskPrompt\tCabinet\tVolumeLabel\tSource\n"
885 "i2\ti4\tL64\tS255\tS32\tS72\n"
887 "1\t3\t\t\tDISK1\t\n";
890 "File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
891 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
893 "font.ttf\tfonts\tfont.ttf\t1000\t\t\t8192\t1\n";
896 "Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
897 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
899 "fonts\t\t\tfont feature\t1\t2\tMSITESTDIR\t0\n";
902 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
903 "s72\tS38\ts72\ti2\tS255\tS72\n"
904 "Component\tComponent\n"
905 "fonts\t{F5920ED0-1183-4B8F-9330-86CE56557C05}\tMSITESTDIR\t0\t\tfont.ttf\n";
908 "Feature_\tComponent_\n"
910 "FeatureComponents\tFeature_\tComponent_\n"
917 "font.ttf\tmsi test font\n";
920 "Action\tCondition\tSequence\n"
922 "InstallExecuteSequence\tAction\n"
923 "ValidateProductID\t\t700\n"
924 "CostInitialize\t\t800\n"
926 "CostFinalize\t\t1000\n"
927 "InstallValidate\t\t1400\n"
928 "InstallInitialize\t\t1500\n"
929 "ProcessComponents\t\t1600\n"
930 "RemoveFiles\t\t3500\n"
931 "InstallFiles\t\t4000\n"
932 "RegisterFonts\t\t4100\n"
933 "rf_immediate\tNOT REMOVE\t4101\n"
934 "rf_deferred\tNOT REMOVE\t4102\n"
935 "UnregisterFonts\t\t4200\n"
936 "uf_immediate\tREMOVE\t4201\n"
937 "uf_deferred\tREMOVE\t4202\n"
938 "RegisterUser\t\t6000\n"
939 "RegisterProduct\t\t6100\n"
940 "PublishFeatures\t\t6300\n"
941 "PublishProduct\t\t6400\n"
942 "UnpublishFeatures\t\t6500\n"
943 "InstallFinalize\t\t6600";
946 "Action\tType\tSource\tTarget\n"
948 "CustomAction\tAction\n"
949 "rf_immediate\t1\tcustom.dll\tfont_absent\n"
950 "rf_deferred\t1025\tcustom.dll\tfont_present\n"
951 "uf_immediate\t1\tcustom.dll\tfont_present\n"
952 "uf_deferred\t1025\tcustom.dll\tfont_absent\n";
957 "Property\tProperty\n"
960 "InstallMode\tTypical\n"
961 "Manufacturer\tWine\n"
962 "PIDTemplate\t###-#######\n"
963 "ProductCode\t{7DF88A48-996F-4EC8-A022-BF956F9B2CBB}\n"
964 "ProductLanguage\t1033\n"
965 "ProductName\tMSITEST\n"
966 "ProductVersion\t1.1.1\n"
967 "UpgradeCode\t{4C0EAA15-0264-4E5A-8758-609EF142B92D}\n"
968 "MSIFASTINSTALL\t1\n";
971 "Action\tType\tSource\tTarget\tISComments\n"
972 "s72\ti2\tS64\tS0\tS255\n"
973 "CustomAction\tAction\n"
974 "SetProductID1\t51\tProductID\t1\t\n"
975 "SetProductID2\t51\tProductID\t2\t\n"
976 "TestProductID1\t19\t\t\tHalts installation\n"
977 "TestProductID2\t19\t\t\tHalts installation\n";
980 "Action\tCondition\tSequence\n"
982 "InstallExecuteSequence\tAction\n"
983 "LaunchConditions\t\t100\n"
984 "CostInitialize\t\t800\n"
986 "CostFinalize\t\t1000\n"
987 "InstallValidate\t\t1400\n"
988 "InstallInitialize\t\t1500\n"
989 "SetProductID1\tSET_PRODUCT_ID=1\t3000\n"
990 "SetProductID2\tSET_PRODUCT_ID=2\t3100\n"
991 "ValidateProductID\t\t3200\n"
992 "InstallExecute\t\t3300\n"
993 "TestProductID1\tProductID=1\t3400\n"
994 "TestProductID2\tProductID=\"123-1234567\"\t3500\n"
995 "InstallFiles\t\t4000\n"
996 "InstallFinalize\t\t6000\n";
999 "File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
1000 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
1002 "ODBCdriver.dll\todbc\tODBCdriver.dll\t1000\t\t\t8192\t1\n"
1003 "ODBCdriver2.dll\todbc\tODBCdriver2.dll\t1000\t\t\t8192\t2\n"
1004 "ODBCtranslator.dll\todbc\tODBCtranslator.dll\t1000\t\t\t8192\t3\n"
1005 "ODBCtranslator2.dll\todbc\tODBCtranslator2.dll\t1000\t\t\t8192\t4\n"
1006 "ODBCsetup.dll\todbc\tODBCsetup.dll\t1000\t\t\t8192\t5\n";
1009 "Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
1010 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
1011 "Feature\tFeature\n"
1012 "odbc\t\t\todbc feature\t1\t2\tMSITESTDIR\t0\n";
1015 "Feature_\tComponent_\n"
1017 "FeatureComponents\tFeature_\tComponent_\n"
1022 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
1023 "s72\tS38\ts72\ti2\tS255\tS72\n"
1024 "Component\tComponent\n"
1025 "odbc64\t{B6F3E4AF-35D1-4B72-9044-989F03E20A43}\tMSITESTDIR\t256\tMsix64\tODBCdriver.dll\n"
1026 "odbc\t{B6F3E4AE-35D1-4B72-9044-989F03E20A43}\tMSITESTDIR\t0\t\tODBCdriver.dll\n";
1029 "Driver\tComponent_\tDescription\tFile_\tFile_Setup\n"
1030 "s72\ts72\ts255\ts72\tS72\n"
1031 "ODBCDriver\tDriver\n"
1032 "64-bit driver\todbc64\tODBC test driver\tODBCdriver.dll\t\n"
1033 "64-bit driver2\todbc64\tODBC test driver2\tODBCdriver2.dll\tODBCsetup.dll\n"
1034 "ODBC test driver\todbc\tODBC test driver\tODBCdriver.dll\t\n"
1035 "ODBC test driver2\todbc\tODBC test driver2\tODBCdriver2.dll\tODBCsetup.dll\n";
1038 "Translator\tComponent_\tDescription\tFile_\tFile_Setup\n"
1039 "s72\ts72\ts255\ts72\tS72\n"
1040 "ODBCTranslator\tTranslator\n"
1041 "ODBC test translator\todbc\tODBC test translator\tODBCtranslator.dll\t\n"
1042 "ODBC test translator2\todbc\tODBC test translator2\tODBCtranslator2.dll\tODBCsetup.dll\n";
1045 "DataSource\tComponent_\tDescription\tDriverDescription\tRegistration\n"
1046 "s72\ts72\ts255\ts255\ti2\n"
1047 "ODBCDataSource\tDataSource\n"
1048 "ODBC data source\todbc\tODBC data source\tODBC driver\t0\n";
1051 "Action\tCondition\tSequence\n"
1053 "InstallExecuteSequence\tAction\n"
1054 "LaunchConditions\t\t100\n"
1055 "CostInitialize\t\t800\n"
1057 "CostFinalize\t\t1000\n"
1058 "InstallValidate\t\t1400\n"
1059 "InstallInitialize\t\t1500\n"
1060 "ProcessComponents\t\t1600\n"
1061 "InstallODBC\t\t3000\n"
1062 "io_immediate\tNOT REMOVE\t3001\n"
1063 "io_deferred\tNOT REMOVE\t3002\n"
1064 "RemoveODBC\t\t3100\n"
1065 "ro_immediate\tREMOVE\t3101\n"
1066 "ro_deferred\tREMOVE\t3102\n"
1067 "RemoveFiles\t\t3900\n"
1068 "InstallFiles\t\t4000\n"
1069 "RegisterProduct\t\t5000\n"
1070 "PublishFeatures\t\t5100\n"
1071 "PublishProduct\t\t5200\n"
1072 "UnpublishFeatures\t\t5300\n"
1073 "InstallFinalize\t\t6000\n";
1076 "Action\tType\tSource\tTarget\n"
1077 "s72\ti2\tS64\tS0\n"
1078 "CustomAction\tAction\n"
1079 "io_immediate\t1\tcustom.dll\todbc_absent\n"
1080 "io_deferred\t1025\tcustom.dll\todbc_present\n"
1081 "ro_immediate\t1\tcustom.dll\todbc_present\n"
1082 "ro_deferred\t1025\tcustom.dll\todbc_absent\n";
1085 "DiskId\tLastSequence\tDiskPrompt\tCabinet\tVolumeLabel\tSource\n"
1086 "i2\ti4\tL64\tS255\tS32\tS72\n"
1088 "1\t5\t\t\tDISK1\t\n";
1091 "File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
1092 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
1094 "typelib.dll\ttypelib\ttypelib.dll\t1000\t\t\t8192\t1\n";
1097 "Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
1098 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
1099 "Feature\tFeature\n"
1100 "typelib\t\t\ttypelib feature\t1\t2\tMSITESTDIR\t0\n";
1103 "Feature_\tComponent_\n"
1105 "FeatureComponents\tFeature_\tComponent_\n"
1106 "typelib\ttypelib\n";
1109 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
1110 "s72\tS38\ts72\ti2\tS255\tS72\n"
1111 "Component\tComponent\n"
1112 "typelib\t{BB4C26FD-89D8-4E49-AF1C-DB4DCB5BF1B0}\tMSITESTDIR\t0\t\ttypelib.dll\n";
1115 "LibID\tLanguage\tComponent_\tVersion\tDescription\tDirectory_\tFeature_\tCost\n"
1116 "s38\ti2\ts72\tI4\tL128\tS72\ts38\tI4\n"
1117 "TypeLib\tLibID\tLanguage\tComponent_\n"
1118 "{EAC5166A-9734-4D91-878F-1DD02304C66C}\t0\ttypelib\t1793\t\tMSITESTDIR\ttypelib\t\n";
1121 "Action\tCondition\tSequence\n"
1123 "InstallExecuteSequence\tAction\n"
1124 "LaunchConditions\t\t100\n"
1125 "CostInitialize\t\t800\n"
1127 "CostFinalize\t\t1000\n"
1128 "InstallValidate\t\t1400\n"
1129 "InstallInitialize\t\t1500\n"
1130 "ProcessComponents\t\t1600\n"
1131 "UnregisterTypeLibraries\t\t3100\n"
1132 "ut_immediate\tREMOVE\t3101\n"
1133 "ut_deferred\tREMOVE\t3102\n"
1134 "RemoveFiles\t\t3200\n"
1135 "InstallFiles\t\t3300\n"
1136 "RegisterTypeLibraries\t\t3400\n"
1137 "rt_immediate\tNOT REMOVE\t3401\n"
1138 "rt_deferred\tNOT REMOVE\t3402\n"
1139 "RegisterProduct\t\t5100\n"
1140 "PublishFeatures\t\t5200\n"
1141 "PublishProduct\t\t5300\n"
1142 "UnpublishFeatures\t\t5400\n"
1143 "InstallFinalize\t\t6000\n";
1146 "Action\tType\tSource\tTarget\n"
1147 "s72\ti2\tS64\tS0\n"
1148 "CustomAction\tAction\n"
1149 "rt_immediate\t1\tcustom.dll\ttl_absent\n"
1150 "rt_deferred\t1025\tcustom.dll\ttl_present\n"
1151 "ut_immediate\t1\tcustom.dll\ttl_present\n"
1152 "ut_deferred\t1025\tcustom.dll\ttl_absent\n";
1155 "File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
1156 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
1158 "target.txt\tshortcut\ttarget.txt\t1000\t\t\t8192\t1\n";
1161 "Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
1162 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
1163 "Feature\tFeature\n"
1164 "shortcut\t\t\tshortcut feature\t1\t2\tMSITESTDIR\t0\n";
1167 "Feature_\tComponent_\n"
1169 "FeatureComponents\tFeature_\tComponent_\n"
1170 "shortcut\tshortcut\n";
1173 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
1174 "s72\tS38\ts72\ti2\tS255\tS72\n"
1175 "Component\tComponent\n"
1176 "shortcut\t{5D20E3C6-7206-498F-AC28-87AF2F9AD4CC}\tMSITESTDIR\t0\t\ttarget.txt\n";
1179 "Shortcut\tDirectory_\tName\tComponent_\tTarget\tArguments\tDescription\tHotkey\tIcon_\tIconIndex\tShowCmd\tWkDir\n"
1180 "s72\ts72\tl128\ts72\ts72\tL255\tL255\tI2\tS72\tI2\tI2\tS72\n"
1181 "Shortcut\tShortcut\n"
1182 "shortcut\tMSITESTDIR\tshortcut\tshortcut\t[MSITESTDIR]target.txt\t\t\t\t\t\t\t\n";
1185 "Action\tCondition\tSequence\n"
1187 "InstallExecuteSequence\tAction\n"
1188 "LaunchConditions\t\t100\n"
1189 "CostInitialize\t\t800\n"
1191 "CostFinalize\t\t1000\n"
1192 "InstallValidate\t\t1400\n"
1193 "InstallInitialize\t\t1500\n"
1194 "ProcessComponents\t\t1600\n"
1195 "RemoveFiles\t\t1700\n"
1196 "InstallFiles\t\t2000\n"
1197 "RemoveShortcuts\t\t3000\n"
1198 "rs_immediate\tREMOVE\t3001\n"
1199 "rs_deferred\tREMOVE\t3002\n"
1200 "CreateShortcuts\t\t3100\n"
1201 "cs_immediate\tNOT REMOVE\t3101\n"
1202 "cs_deferred\tNOT REMOVE\t3102\n"
1203 "RegisterProduct\t\t5000\n"
1204 "PublishFeatures\t\t5100\n"
1205 "PublishProduct\t\t5200\n"
1206 "UnpublishFeatures\t\t5300\n"
1207 "InstallFinalize\t\t6000\n";
1210 "Action\tType\tSource\tTarget\n"
1211 "s72\ti2\tS64\tS0\n"
1212 "CustomAction\tAction\n"
1213 "cs_immediate\t1\tcustom.dll\tcrs_absent\n"
1214 "cs_deferred\t1025\tcustom.dll\tcrs_present\n"
1215 "rs_immediate\t1\tcustom.dll\tcrs_present\n"
1216 "rs_deferred\t1025\tcustom.dll\tcrs_absent\n";
1219 "File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
1220 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
1222 "english.txt\tpublish\tenglish.txt\t1000\t\t\t8192\t1\n";
1225 "Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
1226 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
1227 "Feature\tFeature\n"
1228 "publish\t\t\tpublish feature\t1\t2\tMSITESTDIR\t0\n";
1231 "Feature_\tComponent_\n"
1233 "FeatureComponents\tFeature_\tComponent_\n"
1234 "publish\tpublish\n";
1237 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
1238 "s72\tS38\ts72\ti2\tS255\tS72\n"
1239 "Component\tComponent\n"
1240 "publish\t{B4EA0ACF-6238-426E-9C6D-7869F0F9C768}\tMSITESTDIR\t0\t\tenglish.txt\n";
1243 "ComponentId\tQualifier\tComponent_\tAppData\tFeature_\n"
1244 "s38\ts255\ts72\tL255\ts38\n"
1245 "PublishComponent\tComponentId\tQualifier\tComponent_\n"
1246 "{92AFCBC0-9CA6-4270-8454-47C5EE2B8FAA}\tenglish.txt\tpublish\t\tpublish\n";
1249 "Action\tCondition\tSequence\n"
1251 "InstallExecuteSequence\tAction\n"
1252 "LaunchConditions\t\t100\n"
1253 "CostInitialize\t\t800\n"
1255 "CostFinalize\t\t1000\n"
1256 "InstallValidate\t\t1400\n"
1257 "InstallInitialize\t\t1500\n"
1258 "ProcessComponents\t\t1600\n"
1259 "RemoveFiles\t\t1700\n"
1260 "InstallFiles\t\t2000\n"
1261 "PublishComponents\t\t3000\n"
1262 "pub_immediate\tNOT REMOVE\t3001\n"
1263 "pub_deferred\tNOT REMOVE\t3002\n"
1264 "UnpublishComponents\t\t3100\n"
1265 "unp_immediate\tREMOVE\t3101\n"
1266 "unp_deferred\tREMOVE\t3102\n"
1267 "RegisterProduct\t\t5000\n"
1268 "PublishFeatures\t\t5100\n"
1269 "PublishProduct\t\t5200\n"
1270 "UnpublishFeatures\t\t5300\n"
1271 "InstallFinalize\t\t6000\n";
1274 "Action\tType\tSource\tTarget\n"
1275 "s72\ti2\tS64\tS0\n"
1276 "CustomAction\tAction\n"
1277 "pub_immediate\t1\tcustom.dll\tpub_absent\n"
1278 "pub_deferred\t1025\tcustom.dll\tpub_present\n"
1279 "unp_immediate\t1\tcustom.dll\tpub_present\n"
1280 "unp_deferred\t1025\tcustom.dll\tpub_absent\n";
1283 "File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
1284 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
1286 "original.txt\tduplicate\toriginal.txt\t1000\t\t\t8192\t1\n"
1287 "original2.txt\tduplicate\toriginal2.txt\t1000\t\t\t8192\t2\n"
1288 "original3.txt\tduplicate2\toriginal3.txt\t1000\t\t\t8192\t3\n";
1291 "Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
1292 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
1293 "Feature\tFeature\n"
1294 "duplicate\t\t\tduplicate feature\t1\t2\tMSITESTDIR\t0\n";
1297 "Feature_\tComponent_\n"
1299 "FeatureComponents\tFeature_\tComponent_\n"
1300 "duplicate\tduplicate\n";
1303 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
1304 "s72\tS38\ts72\ti2\tS255\tS72\n"
1305 "Component\tComponent\n"
1306 "duplicate\t{EB45D06A-ADFE-44E3-8D41-B7DE150E41AD}\tMSITESTDIR\t0\t\toriginal.txt\n"
1307 "duplicate2\t{B8BA60E0-B2E9-488E-9D0E-E60F25F04F97}\tMSITESTDIR\t0\tDUPLICATE2=1\toriginal3.txt\n";
1310 "FileKey\tComponent_\tFile_\tDestName\tDestFolder\n"
1311 "s72\ts72\ts72\tS255\tS72\n"
1312 "DuplicateFile\tFileKey\n"
1313 "duplicate\tduplicate\toriginal.txt\tduplicate.txt\t\n"
1314 "duplicate2\tduplicate\toriginal2.txt\t\tMSITESTDIR\n"
1315 "duplicate3\tduplicate2\toriginal3.txt\tduplicate2.txt\t\n";
1318 "Action\tCondition\tSequence\n"
1320 "InstallExecuteSequence\tAction\n"
1321 "LaunchConditions\t\t100\n"
1322 "CostInitialize\t\t800\n"
1324 "CostFinalize\t\t1000\n"
1325 "InstallValidate\t\t1400\n"
1326 "InstallInitialize\t\t1500\n"
1327 "ProcessComponents\t\t1600\n"
1328 "RemoveDuplicateFiles\t\t1900\n"
1329 "rd_immediate\tREMOVE\t1901\n"
1330 "rd_deferred\tREMOVE\t1902\n"
1331 "InstallFiles\t\t2000\n"
1332 "DuplicateFiles\t\t2100\n"
1333 "df_immediate\tNOT REMOVE\t2101\n"
1334 "df_deferred\tNOT REMOVE\t2102\n"
1335 "RegisterProduct\t\t5000\n"
1336 "PublishFeatures\t\t5100\n"
1337 "PublishProduct\t\t5200\n"
1338 "UnpublishFeatures\t\t5300\n"
1339 "InstallFinalize\t\t6000\n";
1342 "Action\tType\tSource\tTarget\n"
1343 "s72\ti2\tS64\tS0\n"
1344 "CustomAction\tAction\n"
1345 "df_immediate\t1\tcustom.dll\trd_absent\n"
1346 "df_deferred\t1025\tcustom.dll\trd_present\n"
1347 "rd_immediate\t1\tcustom.dll\trd_present\n"
1348 "rd_deferred\t1025\tcustom.dll\trd_absent\n";
1351 "File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
1352 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
1354 "product.txt\tproduct\tproduct.txt\t1000\t\t\t8192\t1\n";
1357 "Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
1358 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
1359 "Feature\tFeature\n"
1360 "product\t\t\tproduct feature\t1\t2\tMSITESTDIR\t0\n";
1363 "Feature_\tComponent_\n"
1365 "FeatureComponents\tFeature_\tComponent_\n"
1366 "product\tproduct\n";
1369 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
1370 "s72\tS38\ts72\ti2\tS255\tS72\n"
1371 "Component\tComponent\n"
1372 "product\t{44725EE0-EEA8-40BD-8162-A48224A2FEA1}\tMSITESTDIR\t0\t\tproduct.txt\n";
1375 "Action\tType\tSource\tTarget\tISComments\n"
1376 "s72\ti2\tS64\tS0\tS255\n"
1377 "CustomAction\tAction\n"
1378 "TestProp\t19\t\t\tPROP set\n";
1381 "UpgradeCode\tVersionMin\tVersionMax\tLanguage\tAttributes\tRemove\tActionProperty\n"
1382 "s38\tS20\tS20\tS255\ti4\tS255\ts72\n"
1383 "Upgrade\tUpgradeCode\tVersionMin\tVersionMax\tLanguage\tAttributes\n"
1384 "{4C0EAA15-0264-4E5A-8758-609EF142B92D}\t1.1.1\t2.2.2\t\t768\t\tPROP\n";
1387 "Action\tCondition\tSequence\n"
1389 "InstallExecuteSequence\tAction\n"
1390 "FindRelatedProducts\t\t50\n"
1391 "TestProp\tPROP AND NOT REMOVE\t51\n"
1392 "LaunchConditions\t\t100\n"
1393 "CostInitialize\t\t800\n"
1395 "CostFinalize\t\t1000\n"
1396 "InstallValidate\t\t1400\n"
1397 "InstallInitialize\t\t1500\n"
1398 "ProcessComponents\t\t1600\n"
1399 "RemoveFiles\t\t1700\n"
1400 "InstallFiles\t\t2000\n"
1401 "RegisterProduct\t\t5000\n"
1402 "PublishFeatures\t\t5100\n"
1403 "PublishProduct\t\t5200\n"
1404 "UnpublishFeatures\t\t5300\n"
1405 "InstallFinalize\t\t6000\n";
1408 "File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
1409 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
1411 "inifile.txt\tinifile\tinifile.txt\t1000\t\t\t8192\t1\n";
1414 "Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
1415 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
1416 "Feature\tFeature\n"
1417 "inifile\t\t\tinifile feature\t1\t2\tMSITESTDIR\t0\n";
1420 "Feature_\tComponent_\n"
1422 "FeatureComponents\tFeature_\tComponent_\n"
1423 "inifile\tinifile\n";
1426 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
1427 "s72\tS38\ts72\ti2\tS255\tS72\n"
1428 "Component\tComponent\n"
1429 "inifile\t{A0F15705-4F57-4437-88C4-6C8B37ACC6DE}\tMSITESTDIR\t0\t\tinifile.txt\n";
1432 "IniFile\tFileName\tDirProperty\tSection\tKey\tValue\tAction\tComponent_\n"
1433 "s72\tl255\tS72\tl96\tl128\tl255\ti2\ts72\n"
1434 "IniFile\tIniFile\n"
1435 "inifile1\ttest.ini\tMSITESTDIR\tsection1\tkey1\tvalue1\t0\tinifile\n";
1438 "RemoveIniFile\tFileName\tDirProperty\tSection\tKey\tValue\tAction\tComponent_\n"
1439 "s72\tl255\tS72\tl96\tl128\tL255\ti2\ts72\n"
1440 "RemoveIniFile\tRemoveIniFile\n"
1441 "inifile1\ttest.ini\tMSITESTDIR\tsectionA\tkeyA\tvalueA\t2\tinifile\n";
1444 "Action\tCondition\tSequence\n"
1446 "InstallExecuteSequence\tAction\n"
1447 "LaunchConditions\t\t100\n"
1448 "CostInitialize\t\t800\n"
1450 "CostFinalize\t\t1000\n"
1451 "InstallValidate\t\t1400\n"
1452 "InstallInitialize\t\t1500\n"
1453 "ProcessComponents\t\t1600\n"
1454 "RemoveFiles\t\t1700\n"
1455 "InstallFiles\t\t2000\n"
1456 "RemoveIniValues\t\t3000\n"
1457 "riv_immediate\tREMOVE\t3001\n"
1458 "riv_deferred\tREMOVE\t3002\n"
1459 "WriteIniValues\t\t3100\n"
1460 "wiv_immediate\tNOT REMOVE\t3101\n"
1461 "wiv_deferred\tNOT REMOVE\t3102\n"
1462 "RegisterProduct\t\t5000\n"
1463 "PublishFeatures\t\t5100\n"
1464 "PublishProduct\t\t5200\n"
1465 "UnpublishFeatures\t\t5300\n"
1466 "InstallFinalize\t\t6000\n";
1469 "Action\tType\tSource\tTarget\n"
1470 "s72\ti2\tS64\tS0\n"
1471 "CustomAction\tAction\n"
1472 "wiv_immediate\t1\tcustom.dll\tini_absent\n"
1473 "wiv_deferred\t1025\tcustom.dll\tini_present\n"
1474 "riv_immediate\t1\tcustom.dll\tini_present\n"
1475 "riv_deferred\t1025\tcustom.dll\tini_absent\n";
1478 "File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
1479 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
1481 "class.txt\tclass\tclass.txt\t1000\t\t\t8192\t1\n";
1484 "Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
1485 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
1486 "Feature\tFeature\n"
1487 "class\t\t\tclass feature\t1\t2\tMSITESTDIR\t0\n";
1490 "Feature_\tComponent_\n"
1492 "FeatureComponents\tFeature_\tComponent_\n"
1496 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
1497 "s72\tS38\ts72\ti2\tS255\tS72\n"
1498 "Component\tComponent\n"
1499 "class\t{89A98345-F8A1-422E-A48B-0250B5809F2D}\tMSITESTDIR\t0\t\tclass.txt\n";
1502 "AppId\tRemoteServerName\tLocalService\tServiceParameters\tDllSurrogate\tActivateAtStorage\tRunAsInteractiveUser\n"
1503 "s38\tS255\tS255\tS255\tS255\tI2\tI2\n"
1505 "{CFCC3B38-E683-497D-9AB4-CB40AAFE307F}\t\t\t\t\t\t\n";
1508 "CLSID\tContext\tComponent_\tProgId_Default\tDescription\tAppId_\tFileTypeMask\tIcon_\tIconIndex\tDefInprocHandler\tArgument\tFeature_\tAttributes\n"
1509 "s38\ts32\ts72\tS255\tL255\tS38\tS255\tS72\tI2\tS32\tS255\ts38\tI2\n"
1510 "Class\tCLSID\tContext\tComponent_\n"
1511 "{110913E7-86D1-4BF3-9922-BA103FCDDDFA}\tLocalServer\tclass\t\tdescription\t{CFCC3B38-E683-497D-9AB4-CB40AAFE307F}\tmask1;mask2\t\t\t2\t\tclass\t\n";
1514 "Action\tCondition\tSequence\n"
1516 "InstallExecuteSequence\tAction\n"
1517 "LaunchConditions\t\t100\n"
1518 "CostInitialize\t\t800\n"
1520 "CostFinalize\t\t1000\n"
1521 "InstallValidate\t\t1400\n"
1522 "InstallInitialize\t\t1500\n"
1523 "ProcessComponents\t\t1600\n"
1524 "RemoveFiles\t\t1700\n"
1525 "InstallFiles\t\t2000\n"
1526 "UnregisterClassInfo\t\t3000\n"
1527 "uci_immediate\tREMOVE\t3001\n"
1528 "uci_deferred\tREMOVE\t3002\n"
1529 "RegisterClassInfo\t\t4000\n"
1530 "rci_immediate\tNOT REMOVE\t4001\n"
1531 "rci_deferred\tNOT REMOVE\t4002\n"
1532 "RegisterProduct\t\t5000\n"
1533 "PublishFeatures\t\t5100\n"
1534 "PublishProduct\t\t5200\n"
1535 "UnpublishFeatures\t\t5300\n"
1536 "InstallFinalize\t\t6000\n";
1539 "Action\tType\tSource\tTarget\n"
1540 "s72\ti2\tS64\tS0\n"
1541 "CustomAction\tAction\n"
1542 "rci_immediate\t1\tcustom.dll\trci_absent\n"
1543 "rci_deferred\t1025\tcustom.dll\trci_present\n"
1544 "uci_immediate\t1\tcustom.dll\trci_present\n"
1545 "uci_deferred\t1025\tcustom.dll\trci_absent\n";
1548 "File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
1549 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
1551 "extension.txt\textension\textension.txt\t1000\t\t\t8192\t1\n";
1554 "Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
1555 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
1556 "Feature\tFeature\n"
1557 "extension\t\t\textension feature\t1\t2\tMSITESTDIR\t0\n";
1560 "Feature_\tComponent_\n"
1562 "FeatureComponents\tFeature_\tComponent_\n"
1563 "extension\textension\n";
1566 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
1567 "s72\tS38\ts72\ti2\tS255\tS72\n"
1568 "Component\tComponent\n"
1569 "extension\t{9A3060D4-60BA-4A82-AB55-9FB148AD013C}\tMSITESTDIR\t0\t\textension.txt\n";
1572 "Extension\tComponent_\tProgId_\tMIME_\tFeature_\n"
1573 "s255\ts72\tS255\tS64\ts38\n"
1574 "Extension\tExtension\tComponent_\n"
1575 "extension\textension\tProg.Id.1\t\textension\n";
1578 "Extension_\tVerb\tSequence\tCommand\tArgument\n"
1579 "s255\ts32\tI2\tL255\tL255\n"
1580 "Verb\tExtension_\tVerb\n"
1581 "extension\tOpen\t1\t&Open\t/argument\n";
1584 "ProgId\tProgId_Parent\tClass_\tDescription\tIcon_\tIconIndex\n"
1585 "s255\tS255\tS38\tL255\tS72\tI2\n"
1587 "Prog.Id.1\t\t\tdescription\t\t\n";
1590 "Action\tCondition\tSequence\n"
1592 "InstallExecuteSequence\tAction\n"
1593 "LaunchConditions\t\t100\n"
1594 "CostInitialize\t\t800\n"
1596 "CostFinalize\t\t1000\n"
1597 "InstallValidate\t\t1400\n"
1598 "InstallInitialize\t\t1500\n"
1599 "ProcessComponents\t\t1600\n"
1600 "RemoveFiles\t\t1700\n"
1601 "InstallFiles\t\t2000\n"
1602 "UnregisterExtensionInfo\t\t3000\n"
1603 "uei_immediate\tREMOVE\t3001\n"
1604 "uei_deferred\tREMOVE\t3002\n"
1605 "RegisterExtensionInfo\t\t4000\n"
1606 "rei_immediate\tNOT REMOVE\t4001\n"
1607 "rei_deferred\tNOT REMOVE\t4002\n"
1608 "RegisterProduct\t\t5000\n"
1609 "PublishFeatures\t\t5100\n"
1610 "PublishProduct\t\t5200\n"
1611 "UnpublishFeatures\t\t5300\n"
1612 "InstallFinalize\t\t6000\n";
1615 "Action\tType\tSource\tTarget\n"
1616 "s72\ti2\tS64\tS0\n"
1617 "CustomAction\tAction\n"
1618 "rei_immediate\t1\tcustom.dll\trei_absent\n"
1619 "rei_deferred\t1025\tcustom.dll\trei_present\n"
1620 "uei_immediate\t1\tcustom.dll\trei_present\n"
1621 "uei_deferred\t1025\tcustom.dll\trei_absent\n";
1624 "File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
1625 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
1627 "progid.txt\tprogid\tprogid.txt\t1000\t\t\t8192\t1\n";
1630 "Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
1631 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
1632 "Feature\tFeature\n"
1633 "progid\t\t\tprogid feature\t1\t2\tMSITESTDIR\t0\n";
1636 "Feature_\tComponent_\n"
1638 "FeatureComponents\tFeature_\tComponent_\n"
1642 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
1643 "s72\tS38\ts72\ti2\tS255\tS72\n"
1644 "Component\tComponent\n"
1645 "progid\t{89A98345-F8A1-422E-A48B-0250B5809F2D}\tMSITESTDIR\t0\t\tprogid.txt\n";
1648 "AppId\tRemoteServerName\tLocalService\tServiceParameters\tDllSurrogate\tActivateAtStorage\tRunAsInteractiveUser\n"
1649 "s38\tS255\tS255\tS255\tS255\tI2\tI2\n"
1651 "{CFCC3B38-E683-497D-9AB4-CB40AAFE307F}\t\t\t\t\t\t\n";
1654 "CLSID\tContext\tComponent_\tProgId_Default\tDescription\tAppId_\tFileTypeMask\tIcon_\tIconIndex\tDefInprocHandler\tArgument\tFeature_\tAttributes\n"
1655 "s38\ts32\ts72\tS255\tL255\tS38\tS255\tS72\tI2\tS32\tS255\ts38\tI2\n"
1656 "Class\tCLSID\tContext\tComponent_\n"
1657 "{110913E7-86D1-4BF3-9922-BA103FCDDDFA}\tLocalServer\tprogid\tWinetest.Class.1\tdescription\t{CFCC3B38-E683-497D-9AB4-CB40AAFE307F}\tmask1;mask2\t\t\t2\t\tprogid\t\n"
1658 "{904E6BC9-F57F-4412-B460-D40DE2F256E2}\tLocalServer\tprogid\tWinetest.VerClass\tdescription\t{CFCC3B38-E683-497D-9AB4-CB40AAFE307F}\tmask1;mask2\t\t\t2\t\tprogid\t\n"
1659 "{57C413FB-CA02-498A-81F6-7E769BDB7C97}\tLocalServer\tprogid\t\tdescription\t{CFCC3B38-E683-497D-9AB4-CB40AAFE307F}\tmask1;mask2\t\t\t2\t\tprogid\t\n";
1662 "Extension\tComponent_\tProgId_\tMIME_\tFeature_\n"
1663 "s255\ts72\tS255\tS64\ts38\n"
1664 "Extension\tExtension\tComponent_\n"
1665 "winetest\tprogid\tWinetest.Extension\t\tprogid\n";
1668 "Extension_\tVerb\tSequence\tCommand\tArgument\n"
1669 "s255\ts32\tI2\tL255\tL255\n"
1670 "Verb\tExtension_\tVerb\n"
1671 "winetest\tOpen\t1\t&Open\t/argument\n";
1674 "ProgId\tProgId_Parent\tClass_\tDescription\tIcon_\tIconIndex\n"
1675 "s255\tS255\tS38\tL255\tS72\tI2\n"
1677 "Winetest.Class.1\t\t{110913E7-86D1-4BF3-9922-BA103FCDDDFA}\tdescription\t\t\n"
1678 "Winetest.Class\tWinetest.Class.1\t\tdescription\t\t\n"
1679 "Winetest.Class.2\t\t{110913E7-86D1-4BF3-9922-BA103FCDDDFA}\tdescription\t\t\n"
1680 "Winetest.VerClass.1\t\t{904E6BC9-F57F-4412-B460-D40DE2F256E2}\tdescription\t\t\n"
1681 "Winetest.VerClass\tWinetest.VerClass.1\t\tdescription\t\t\n"
1682 "Winetest.NoProgIdClass.1\t\t{57C413FB-CA02-498A-81F6-7E769BDB7C97}\tdescription\t\t\n"
1683 "Winetest.NoProgIdClass\tWinetest.NoProgIdClass.1\t\tdescription\t\t\n"
1684 "Winetest.Orphaned\t\t\tdescription\t\t\n"
1685 "Winetest.Orphaned2\t\t\tdescription\t\t\n"
1686 "Winetest.Extension\t\t\tdescription\t\t\n";
1689 "Action\tCondition\tSequence\n"
1691 "InstallExecuteSequence\tAction\n"
1692 "LaunchConditions\t\t100\n"
1693 "CostInitialize\t\t800\n"
1695 "CostFinalize\t\t1000\n"
1696 "InstallValidate\t\t1400\n"
1697 "InstallInitialize\t\t1500\n"
1698 "ProcessComponents\t\t1600\n"
1699 "RemoveFiles\t\t1700\n"
1700 "UnregisterClassInfo\t\t3000\n"
1701 "UnregisterExtensionInfo\t\t3200\n"
1702 "UnregisterProgIdInfo\t\t3400\n"
1703 "upi_immediate\tREMOVE\t3401\n"
1704 "upi_deferred\tREMOVE\t3402\n"
1705 "InstallFiles\t\t3600\n"
1706 "RegisterClassInfo\t\t4000\n"
1707 "RegisterExtensionInfo\t\t4200\n"
1708 "RegisterProgIdInfo\t\t4400\n"
1709 "rpi_immediate\tNOT REMOVE\t4401\n"
1710 "rpi_deferred\tNOT REMOVE\t4402\n"
1711 "RegisterProduct\t\t5000\n"
1712 "PublishFeatures\t\t5100\n"
1713 "PublishProduct\t\t5200\n"
1714 "UnpublishFeatures\t\t5300\n"
1715 "InstallFinalize\t\t6000\n";
1718 "Action\tType\tSource\tTarget\n"
1719 "s72\ti2\tS64\tS0\n"
1720 "CustomAction\tAction\n"
1721 "rpi_immediate\t1\tcustom.dll\trpi_absent\n"
1722 "rpi_deferred\t1025\tcustom.dll\trpi_present\n"
1723 "upi_immediate\t1\tcustom.dll\trpi_present\n"
1724 "upi_deferred\t1025\tcustom.dll\trpi_absent\n";
1727 "File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
1728 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
1730 "mime.txt\tmime\tmime.txt\t1000\t\t\t8192\t1\n";
1733 "Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
1734 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
1735 "Feature\tFeature\n"
1736 "mime\t\t\tmime feature\t1\t2\tMSITESTDIR\t0\n";
1739 "Feature_\tComponent_\n"
1741 "FeatureComponents\tFeature_\tComponent_\n"
1745 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
1746 "s72\tS38\ts72\ti2\tS255\tS72\n"
1747 "Component\tComponent\n"
1748 "mime\t{A1D630CE-13A7-4882-AFDD-148E2BBAFC6D}\tMSITESTDIR\t0\t\tmime.txt\n";
1751 "Extension\tComponent_\tProgId_\tMIME_\tFeature_\n"
1752 "s255\ts72\tS255\tS64\ts38\n"
1753 "Extension\tExtension\tComponent_\n"
1754 "mime\tmime\t\tmime/type\tmime\n";
1757 "Extension_\tVerb\tSequence\tCommand\tArgument\n"
1758 "s255\ts32\tI2\tL255\tL255\n"
1759 "Verb\tExtension_\tVerb\n"
1760 "mime\tOpen\t1\t&Open\t/argument\n";
1763 "ContentType\tExtension_\tCLSID\n"
1765 "MIME\tContentType\n"
1766 "mime/type\tmime\t\n";
1769 "Action\tCondition\tSequence\n"
1771 "InstallExecuteSequence\tAction\n"
1772 "LaunchConditions\t\t100\n"
1773 "CostInitialize\t\t800\n"
1775 "CostFinalize\t\t1000\n"
1776 "InstallValidate\t\t1400\n"
1777 "InstallInitialize\t\t1500\n"
1778 "ProcessComponents\t\t1600\n"
1779 "RemoveFiles\t\t1700\n"
1780 "InstallFiles\t\t2000\n"
1781 "UnregisterExtensionInfo\t\t3000\n"
1782 "UnregisterMIMEInfo\t\t3500\n"
1783 "umi_immediate\tREMOVE\t3501\n"
1784 "umi_deferred\tREMOVE\t3502\n"
1785 "RegisterExtensionInfo\t\t4000\n"
1786 "RegisterMIMEInfo\t\t4500\n"
1787 "rmi_immediate\tNOT REMOVE\t4501\n"
1788 "rmi_deferred\tNOT REMOVE\t4502\n"
1789 "RegisterProduct\t\t5000\n"
1790 "PublishFeatures\t\t5100\n"
1791 "PublishProduct\t\t5200\n"
1792 "UnpublishFeatures\t\t5300\n"
1793 "InstallFinalize\t\t6000\n";
1796 "Action\tType\tSource\tTarget\n"
1797 "s72\ti2\tS64\tS0\n"
1798 "CustomAction\tAction\n"
1799 "rmi_immediate\t1\tcustom.dll\trmi_absent\n"
1800 "rmi_deferred\t1025\tcustom.dll\trmi_present\n"
1801 "umi_immediate\t1\tcustom.dll\trmi_present\n"
1802 "umi_deferred\t1025\tcustom.dll\trmi_absent\n";
1805 "File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
1806 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
1808 "fake_local.txt\tfake_local\tfake_local.txt\t1000\t\t\t8192\t1\n"
1809 "win32.txt\twin32\twin32.txt\t1000\t\t\t8192\t1\n"
1810 "manifest.txt\twin32\tmanifest.txt\t1000\t\t\t8192\t1\n"
1811 "win32_local.txt\twin32_local\twin32_local.txt\t1000\t\t\t8192\t1\n"
1812 "manifest_local.txt\twin32_local\tmanifest_local.txt\t1000\t\t\t8192\t1\n"
1813 "dotnet.txt\tdotnet\tdotnet.txt\t1000\t\t\t8192\t1\n"
1814 "dotnet_local.txt\tdotnet_local\tdotnet_local.txt\t1000\t\t\t8192\t1\n"
1815 "application_win32.txt\twin32_local\tapplication_win32.txt\t1000\t\t\t8192\t1\n"
1816 "application_dotnet.txt\tdotnet_local\tapplication_dotnet.txt\t1000\t\t\t8192\t1\n";
1819 "Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
1820 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
1821 "Feature\tFeature\n"
1822 "assembly\t\t\tassembly feature\t1\t2\tMSITESTDIR\t0\n";
1825 "Feature_\tComponent_\n"
1827 "FeatureComponents\tFeature_\tComponent_\n"
1828 "assembly\tfake_local\n"
1830 "assembly\twin32_local\n"
1831 "assembly\tdotnet\n"
1832 "assembly\tdotnet_local\n";
1835 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
1836 "s72\tS38\ts72\ti2\tS255\tS72\n"
1837 "Component\tComponent\n"
1838 "fake_local\t{F515549D-7E61-425D-AAC1-9BEF2E066D06}\tMSITESTDIR\t0\t\tfake_local.txt\n"
1839 "win32\t{F515549E-7E61-425D-AAC1-9BEF2E066D06}\tMSITESTDIR\t0\t\twin32.txt\n"
1840 "win32_local\t{D34D3FBA-6789-4E57-AD1A-1281297DC201}\tMSITESTDIR\t0\t\twin32_local.txt\n"
1841 "dotnet\t{8943164F-2B31-4C09-A894-493A8CBDE0A4}\tMSITESTDIR\t0\t\tdotnet.txt\n"
1842 "dotnet_local\t{4E8567E8-8EAE-4E36-90F1-B99D33C663F8}\tMSITESTDIR\t0\t\tdotnet_local.txt\n";
1845 "Component_\tFeature_\tFile_Manifest\tFile_Application\tAttributes\n"
1846 "s72\ts38\tS72\tS72\tI2\n"
1847 "MsiAssembly\tComponent_\n"
1848 "fake_local\tassembly\t\tnonexistent.txt\t0\n"
1849 "win32\tassembly\tmanifest.txt\t\t1\n"
1850 "win32_local\tassembly\tmanifest_local.txt\tapplication_win32.txt\t1\n"
1851 "dotnet\tassembly\t\t\t0\n"
1852 "dotnet_local\tassembly\t\tapplication_dotnet.txt\t0\n";
1855 "Component_\tName\tValue\n"
1857 "MsiAssemblyName\tComponent_\tName\n"
1858 "fake_local\tName\tWine.Fake.Application.Assembly\n"
1859 "fake_local\tprocessorArchitecture\tx86\n"
1860 "fake_local\tpublicKeyToken\tabcdef0123456789\n"
1861 "fake_local\ttype\twin32\n"
1862 "fake_local\tversion\t1.0.0.0\n"
1863 "win32\tName\tWine.Win32.Assembly\n"
1864 "win32\tprocessorArchitecture\tx86\n"
1865 "win32\tpublicKeyToken\tabcdef0123456789\n"
1866 "win32\ttype\twin32\n"
1867 "win32\tversion\t1.0.0.0\n"
1868 "win32_local\tName\tWine.Win32.Local.Assembly\n"
1869 "win32_local\tprocessorArchitecture\tx86\n"
1870 "win32_local\tpublicKeyToken\tabcdef0123456789\n"
1871 "win32_local\ttype\twin32\n"
1872 "win32_local\tversion\t1.0.0.0\n"
1873 "dotnet\tName\tWine.Dotnet.Assembly\n"
1874 "dotnet\tprocessorArchitecture\tMSIL\n"
1875 "dotnet\tpublicKeyToken\tabcdef0123456789\n"
1876 "dotnet\tculture\tneutral\n"
1877 "dotnet\tversion\t1.0.0.0\n"
1878 "dotnet_local\tName\tWine.Dotnet.Local.Assembly\n"
1879 "dotnet_local\tprocessorArchitecture\tMSIL\n"
1880 "dotnet_local\tpublicKeyToken\tabcdef0123456789\n"
1881 "dotnet_local\tculture\tneutral\n"
1882 "dotnet_local\tversion\t1.0.0.0\n";
1885 "Action\tCondition\tSequence\n"
1887 "InstallExecuteSequence\tAction\n"
1888 "LaunchConditions\t\t100\n"
1889 "CostInitialize\t\t800\n"
1891 "CostFinalize\t\t1000\n"
1892 "InstallValidate\t\t1400\n"
1893 "InstallInitialize\t\t1500\n"
1894 "ProcessComponents\t\t1600\n"
1895 "MsiPublishAssemblies\t\t3000\n"
1896 "pa_immediate\tNOT REMOVE AND NOT ALLUSERS\t3001\n"
1897 "pa_deferred\tNOT REMOVE AND NOT ALLUSERS\t3002\n"
1898 "MsiUnpublishAssemblies\t\t4000\n"
1899 "ua_immediate\tREMOVE AND NOT ALLUSERS\t4001\n"
1900 "ua_deferred\tREMOVE AND NOT ALLUSERS\t4002\n"
1901 "RegisterProduct\t\t5000\n"
1902 "PublishFeatures\t\t5100\n"
1903 "PublishProduct\t\t5200\n"
1904 "UnpublishFeatures\t\t5300\n"
1905 "InstallFinalize\t\t6000\n";
1908 "Action\tType\tSource\tTarget\n"
1909 "s72\ti2\tS64\tS0\n"
1910 "CustomAction\tAction\n"
1911 "pa_immediate\t1\tcustom.dll\tpa_absent\n"
1912 "pa_deferred\t1025\tcustom.dll\tpa_present\n"
1913 "ua_immediate\t1\tcustom.dll\tpa_present\n"
1914 "ua_deferred\t1025\tcustom.dll\tpa_absent\n";
1917 "File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
1918 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
1920 "rep.txt\trep\trep.txt\t1000\t\t\t8192\t1\n";
1923 "Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
1924 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
1925 "Feature\tFeature\n"
1926 "rep\t\t\trep feature\t1\t2\tMSITESTDIR\t0\n";
1929 "Feature_\tComponent_\n"
1931 "FeatureComponents\tFeature_\tComponent_\n"
1935 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
1936 "s72\tS38\ts72\ti2\tS255\tS72\n"
1937 "Component\tComponent\n"
1938 "rep\t{A24FAF2A-3B2E-41EF-AA78-331542E1A29D}\tMSITESTDIR\t0\t\trep.txt\n";
1941 "UpgradeCode\tVersionMin\tVersionMax\tLanguage\tAttributes\tRemove\tActionProperty\n"
1942 "s38\tS20\tS20\tS255\ti4\tS255\ts72\n"
1943 "Upgrade\tUpgradeCode\tVersionMin\tVersionMax\tLanguage\tAttributes\n"
1944 "{2967C1CC-34D4-42EE-8D96-CD6836F192BF}\t\t\t\t256\t\tPRODUCT\n";
1949 "Property\tProperty\n"
1952 "InstallMode\tTypical\n"
1953 "Manufacturer\tWine\n"
1954 "PIDTemplate\t###-#######\n"
1955 "ProductCode\t{1699F0BB-0B61-4A89-AFE4-CFD60DFD76F3}\n"
1956 "ProductLanguage\t1033\n"
1957 "ProductName\tMSITEST\n"
1958 "ProductVersion\t1.1.1\n"
1959 "UpgradeCode\t{2967C1CC-34D4-42EE-8D96-CD6836F192BF}\n"
1960 "PRODUCT\t2F41860D-7B4C-4DA7-BED9-B64F26594C56\n"
1961 "MSIFASTINSTALL\t1\n";
1964 "Action\tCondition\tSequence\n"
1966 "InstallExecuteSequence\tAction\n"
1967 "FindRelatedProducts\t\t100\n"
1968 "CostInitialize\t\t800\n"
1970 "CostFinalize\t\t1000\n"
1971 "InstallValidate\t\t1400\n"
1972 "RemoveExistingProducts\t\t1499\n"
1973 "InstallInitialize\t\t1500\n"
1974 "ProcessComponents\t\t1600\n"
1975 "RemoveFiles\t\t1700\n"
1976 "InstallFiles\t\t2000\n"
1977 "UnregisterExtensionInfo\t\t3000\n"
1978 "UnregisterMIMEInfo\t\t3500\n"
1979 "RegisterExtensionInfo\t\t4000\n"
1980 "RegisterMIMEInfo\t\t4500\n"
1981 "RegisterProduct\t\t5000\n"
1982 "PublishFeatures\t\t5100\n"
1983 "PublishProduct\t\t5200\n"
1984 "UnpublishFeatures\t\t5300\n"
1985 "InstallFinalize\t\t6000\n";
2376#define MEDIA_SIZE 0x7FFFFFFF
2385#define GET_PROC(mod, func) \
2386 p ## func = (void*)GetProcAddress(mod, #func); \
2388 trace("GetProcAddress(%s) failed\n", #func);
2410 char *usersid =
NULL;
2469 return pSRSetRestorePointA(&spec,
status);
2476 res = pSRRemoveRestorePoint(seq_number);
2478 trace(
"Failed to remove the restore point : %#lx\n",
res);
2483 if (pRegDeleteKeyExA)
2484 return pRegDeleteKeyExA(
key, subkey,
access, 0 );
2519 ok_(__FILE__,
line)(!
res,
"Failed to query value, error %ld\n",
res);
2539 expect_size = (
p + 1) -
expect;
2544 ok_(__FILE__,
line)(!
res,
"Failed to query value, error %ld\n",
res);
2546 ok_(__FILE__,
line)(
size == expect_size,
"expected size %lu, got %lu\n", expect_size,
size);
2557 ok_(__FILE__,
line)(!
res,
"Failed to query value, error %ld\n",
res);
2563#define CHECK_REG_STR(prodkey, name, expected) \
2564 check_reg_str(prodkey, name, expected, TRUE, FALSE, __LINE__);
2566#define CHECK_DEL_REG_STR(prodkey, name, expected) \
2568 check_reg_str(prodkey, name, expected, TRUE, FALSE, __LINE__); \
2569 RegDeleteValueA(prodkey, name); \
2572#define CHECK_DEL_REG_STR_TODO(prodkey, name, expected) \
2574 check_reg_str(prodkey, name, expected, TRUE, TRUE, __LINE__); \
2575 RegDeleteValueA(prodkey, name); \
2578#define CHECK_REG_ISTR(prodkey, name, expected) \
2579 check_reg_str(prodkey, name, expected, FALSE, FALSE, __LINE__);
2581#define CHECK_DEL_REG_ISTR(prodkey, name, expected) \
2583 check_reg_str(prodkey, name, expected, FALSE, FALSE, __LINE__); \
2584 RegDeleteValueA(prodkey, name); \
2587#define CHECK_REG_MULTI(key, name, expect) \
2588 check_reg_multi(key, name, expect, __LINE__);
2590#define CHECK_DEL_REG_MULTI(key, name, expect) \
2592 check_reg_multi(key, name, expect, __LINE__); \
2593 RegDeleteValueA(key, name); \
2596#define CHECK_REG_DWORD(prodkey, name, expected) \
2597 check_reg_dword(prodkey, name, expected, FALSE, __LINE__);
2599#define CHECK_REG_DWORD_TODO(prodkey, name, expected) \
2600 check_reg_dword(prodkey, name, expected, TRUE, __LINE__);
2602#define CHECK_DEL_REG_DWORD(prodkey, name, expected) \
2604 check_reg_dword(prodkey, name, expected, FALSE, __LINE__); \
2605 RegDeleteValueA(prodkey, name); \
2608#define CHECK_DEL_REG_DWORD_TODO(prodkey, name, expected) \
2610 check_reg_dword(prodkey, name, expected, TRUE, __LINE__); \
2611 RegDeleteValueA(prodkey, name); \
2618 static const char date_fmt[] =
"%d%02d%02d";
2650 ok(
res != 0,
"couldn't find resource\n" );
2666 static const CHAR uninstall[] =
"Software\\Microsoft\\Windows\\CurrentVersion"
2667 "\\Uninstall\\{7DF88A48-996F-4EC8-A022-BF956F9B2CBB}";
2668 static const CHAR userdata[] =
"Software\\Microsoft\\Windows\\CurrentVersion\\Installer"
2669 "\\UserData\\%s\\Products\\84A88FD7F6998CE40A22FB59F6B9C2BB";
2670 static const CHAR ugkey[] =
"Software\\Microsoft\\Windows\\CurrentVersion\\Installer"
2671 "\\UpgradeCodes\\51AAE0C44620A5E4788506E91F249BD2";
2672 static const CHAR userugkey[] =
"Software\\Microsoft\\Installer\\UpgradeCodes"
2673 "\\51AAE0C44620A5E4788506E91F249BD2";
2677 skip(
"process is limited\n");
2698 skip(
"Not enough rights to perform tests\n");
2715 CHECK_DEL_REG_ISTR(hkey,
"ModifyPath",
"MsiExec.exe /X{7DF88A48-996F-4EC8-A022-BF956F9B2CBB}");
2717 CHECK_DEL_REG_STR(hkey,
"UninstallString",
"MsiExec.exe /X{7DF88A48-996F-4EC8-A022-BF956F9B2CBB}");
2740 sprintf(keypath, userdata, usersid);
2820 CHECK_DEL_REG_ISTR(hkey,
"ModifyPath",
"MsiExec.exe /X{7DF88A48-996F-4EC8-A022-BF956F9B2CBB}");
2822 CHECK_DEL_REG_STR(hkey,
"UninstallString",
"MsiExec.exe /X{7DF88A48-996F-4EC8-A022-BF956F9B2CBB}");
2845 sprintf(keypath, userdata,
"S-1-5-18");
2932 CHECK_DEL_REG_ISTR(hkey,
"ModifyPath",
"MsiExec.exe /X{7DF88A48-996F-4EC8-A022-BF956F9B2CBB}");
2934 CHECK_DEL_REG_STR(hkey,
"UninstallString",
"MsiExec.exe /X{7DF88A48-996F-4EC8-A022-BF956F9B2CBB}");
2957 sprintf(keypath, userdata,
"S-1-5-18");
3022 skip(
"64-bit RegisterProduct tests\n");
3033 static const char prodpath[] =
3034 "Software\\Microsoft\\Windows\\CurrentVersion\\Installer\\UserData\\%s\\Products"
3035 "\\84A88FD7F6998CE40A22FB59F6B9C2BB";
3036 static const char cuprodpath[] =
3037 "Software\\Microsoft\\Installer\\Products\\84A88FD7F6998CE40A22FB59F6B9C2BB";
3038 static const char cuupgrades[] =
3039 "Software\\Microsoft\\Installer\\UpgradeCodes\\51AAE0C44620A5E4788506E91F249BD2";
3040 static const char badprod[] =
3041 "Software\\Microsoft\\Windows\\CurrentVersion\\Installer\\Products"
3042 "\\84A88FD7F6998CE40A22FB59F6B9C2BB";
3043 static const char machprod[] =
3044 "Software\\Classes\\Installer\\Products\\84A88FD7F6998CE40A22FB59F6B9C2BB";
3045 static const char machup[] =
3046 "Software\\Classes\\Installer\\UpgradeCodes\\51AAE0C44620A5E4788506E91F249BD2";
3060 skip(
"process is limited\n");
3083 skip(
"Not enough rights to perform tests\n");
3093 sprintf(keypath, prodpath, usersid);
3100 win_skip(
"Windows Installer < 3.0 detected\n");
3102 old_installer =
TRUE;
3107 win_skip(
"Install failed, no need to continue\n");
3188 sprintf(keypath, prodpath,
"S-1-5-18");
3270 static const char cupath[] =
3271 "Software\\Microsoft\\Installer\\Features\\84A88FD7F6998CE40A22FB59F6B9C2BB";
3272 static const char udfeatpath[] =
3273 "Software\\Microsoft\\Windows\\CurrentVersion\\Installer\\UserData\\%s\\Products"
3274 "\\84A88FD7F6998CE40A22FB59F6B9C2BB\\Features";
3275 static const char udpridpath[] =
3276 "Software\\Microsoft\\Windows\\CurrentVersion\\Installer\\UserData\\%s\\Products"
3277 "\\84A88FD7F6998CE40A22FB59F6B9C2BB";
3278 static const char featkey[] =
3279 "Software\\Microsoft\\Windows\\CurrentVersion\\Installer\\Features";
3280 static const char classfeat[] =
3281 "Software\\Classes\\Installer\\Features\\84A88FD7F6998CE40A22FB59F6B9C2BB";
3291 skip(
"process is limited\n");
3312 skip(
"Not enough rights to perform tests\n");
3336 sprintf(keypath, udfeatpath, usersid);
3347 sprintf(keypath, udpridpath, usersid);
3372 sprintf(keypath, udfeatpath,
"S-1-5-18");
3383 sprintf(keypath, udpridpath,
"S-1-5-18");
3417 *owner = *company =
NULL;
3423 "Software\\Microsoft\\MS Setup (ACME)\\User Info", &hkey);
3431 if (!*owner || !*company)
3434 "Software\\Microsoft\\Windows NT\\CurrentVersion", 0,
access, &hkey);
3443 if (!*owner || !*company)
3446 "Software\\Microsoft\\Windows\\CurrentVersion", 0,
access, &hkey);
3462 LPSTR owner, company;
3466 static const CHAR keypropsfmt[] =
3467 "Software\\Microsoft\\Windows\\CurrentVersion\\Installer\\"
3468 "UserData\\%s\\Products\\84A88FD7F6998CE40A22FB59F6B9C2BB\\InstallProperties";
3469 static const CHAR keypridfmt[] =
3470 "Software\\Microsoft\\Windows\\CurrentVersion\\Installer\\"
3471 "UserData\\%s\\Products\\84A88FD7F6998CE40A22FB59F6B9C2BB";
3475 skip(
"process is limited\n");
3498 skip(
"Not enough rights to perform tests\n");
3505 sprintf(keypath, keypropsfmt, usersid);
3518 sprintf(keypath, keypridfmt, usersid);
3527 sprintf(keypath, keypropsfmt,
"S-1-5-18");
3540 sprintf(keypath, keypridfmt,
"S-1-5-18");
3555 static const char keyfmt[] =
3556 "Software\\Microsoft\\Windows\\CurrentVersion\\Installer\\UserData\\%s\\Components\\%s";
3557 static const char compkey[] =
3558 "Software\\Microsoft\\Windows\\CurrentVersion\\Installer\\Components";
3571 skip(
"process is limited\n");
3592 skip(
"Not enough rights to perform tests\n");
3599 sprintf(keypath, keyfmt, usersid,
"CBABC2FDCCB35E749A8944D8C1C098B5");
3609 lstrcatA(program_files_maximus,
"\\msitest\\maximus");
3612 "Expected \"%s\", got \"%s\"\n", program_files_maximus,
val);
3621 sprintf(keypath, keyfmt, usersid,
"241C3DA58FECD0945B9687D408766058");
3630 "Expected \"01\\msitest\\augustus\", got \"%s\"\n",
val);
3645 sprintf(keypath, keyfmt,
"S-1-5-18",
"CBABC2FDCCB35E749A8944D8C1C098B5");
3654 "Expected \"%s\", got \"%s\"\n", program_files_maximus,
val);
3663 sprintf(keypath, keyfmt,
"S-1-5-18",
"241C3DA58FECD0945B9687D408766058");
3672 "Expected \"01\\msitest\\augustus\", got \"%s\"\n",
val);
3690 static const char subkey[] =
"Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall";
3691 static const char subkey_32node[] =
"Software\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall";
3694 HKEY uninstall, prodkey, uninstall_32node =
NULL;
3700 if (!pMsiQueryFeatureStateExA)
3702 win_skip(
"MsiQueryFeatureStateExA is not available\n");
3707 skip(
"process is limited\n");
3770 "{DF2CBABC-3BCC-47E5-A998-448D1C0C895B}", &
state);
3781 skip(
"Not enough rights to perform tests\n");
3785 ok(
pf_exists(
"msitest\\maximus"),
"File not installed\n");
3798 "{DF2CBABC-3BCC-47E5-A998-448D1C0C895B}", &
state);
3808 ok(
pf_exists(
"msitest\\maximus"),
"File not installed\n");
3821 "{DF2CBABC-3BCC-47E5-A998-448D1C0C895B}", &
state);
3842 CHECK_REG_ISTR(prodkey,
"ModifyPath",
"MsiExec.exe /X{7DF88A48-996F-4EC8-A022-BF956F9B2CBB}");
3844 CHECK_REG_STR(prodkey,
"UninstallString",
"MsiExec.exe /X{7DF88A48-996F-4EC8-A022-BF956F9B2CBB}");
3867 ok(
pf_exists(
"msitest\\maximus"),
"File deleted\n");
3880 "{DF2CBABC-3BCC-47E5-A998-448D1C0C895B}", &
state);
3890 ok(
pf_exists(
"msitest\\maximus"),
"File not installed\n");
3927 "{DF2CBABC-3BCC-47E5-A998-448D1C0C895B}", &
state);
3946 CHECK_REG_ISTR(prodkey,
"ModifyPath",
"MsiExec.exe /X{7DF88A48-996F-4EC8-A022-BF956F9B2CBB}");
3948 CHECK_REG_STR(prodkey,
"UninstallString",
"MsiExec.exe /X{7DF88A48-996F-4EC8-A022-BF956F9B2CBB}");
3972 ok(!
pf_exists(
"msitest\\maximus"),
"File not deleted\n");
3973 ok(!
pf_exists(
"msitest"),
"Directory not deleted\n");
3985 "{DF2CBABC-3BCC-47E5-A998-448D1C0C895B}", &
state);