42static const char *
msifile =
"msitest.msi";
44static const char *
mstfile =
"winetest.mst";
60static const CHAR component_dat[] =
"Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
61 "s72\tS38\ts72\ti2\tS255\tS72\n"
62 "Component\tComponent\n"
63 "Five\t{8CC92E9D-14B2-4CA4-B2AA-B11D02078087}\tNEWDIR\t2\t\tfive.txt\n"
64 "Four\t{FD37B4EA-7209-45C0-8917-535F35A2F080}\tCABOUTDIR\t2\t\tfour.txt\n"
65 "One\t{783B242E-E185-4A56-AF86-C09815EC053C}\tMSITESTDIR\t2\tNOT REINSTALL\tone.txt\n"
66 "Three\t{010B6ADD-B27D-4EDD-9B3D-34C4F7D61684}\tCHANGEDDIR\t2\t\tthree.txt\n"
67 "Two\t{BF03D1A6-20DA-4A65-82F3-6CAC995915CE}\tFIRSTDIR\t2\t\ttwo.txt\n"
68 "dangler\t{6091DF25-EF96-45F1-B8E9-A9B1420C7A3C}\tTARGETDIR\t4\t\tregdata\n"
69 "component\t\tMSITESTDIR\t0\t1\tfile\n";
73 "Directory\tDirectory\n"
74 "CABOUTDIR\tMSITESTDIR\tcabout\n"
75 "CHANGEDDIR\tMSITESTDIR\tchanged:second\n"
76 "FIRSTDIR\tMSITESTDIR\tfirst\n"
77 "MSITESTDIR\tProgramFilesFolder\tmsitest\n"
78 "NEWDIR\tCABOUTDIR\tnew\n"
79 "ProgramFilesFolder\tTARGETDIR\t.\n"
80 "TARGETDIR\t\tSourceDir";
82static const CHAR feature_dat[] =
"Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
83 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
85 "Five\t\tFive\tThe Five Feature\t5\t3\tNEWDIR\t0\n"
86 "Four\t\tFour\tThe Four Feature\t4\t3\tCABOUTDIR\t0\n"
87 "One\t\tOne\tThe One Feature\t1\t3\tMSITESTDIR\t0\n"
88 "Three\t\tThree\tThe Three Feature\t3\t3\tCHANGEDDIR\t0\n"
89 "Two\t\tTwo\tThe Two Feature\t2\t3\tFIRSTDIR\t0\n"
90 "feature\t\t\t\t2\t1\tTARGETDIR\t0\n";
94 "FeatureComponents\tFeature_\tComponent_\n"
100 "feature\tcomponent\n";
102static const CHAR file_dat[] =
"File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
103 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
105 "five.txt\tFive\tfive.txt\t1000\t\t\t16384\t5\n"
106 "four.txt\tFour\tfour.txt\t1000\t\t\t16384\t4\n"
107 "one.txt\tOne\tone.txt\t1000\t\t\t0\t1\n"
108 "three.txt\tThree\tthree.txt\t1000\t\t\t0\t3\n"
109 "two.txt\tTwo\ttwo.txt\t1000\t\t\t0\t2\n"
110 "file\tcomponent\tfilename\t100\t\t\t8192\t1\n";
114 "InstallExecuteSequence\tAction\n"
115 "AllocateRegistrySpace\tNOT Installed\t1550\n"
116 "CostFinalize\t\t1000\n"
117 "CostInitialize\t\t800\n"
119 "ResolveSource\t\t950\n"
120 "MoveFiles\t\t1700\n"
121 "InstallFiles\t\t4000\n"
122 "BindImage\t\t4100\n"
123 "DuplicateFiles\t\t4500\n"
124 "WriteEnvironmentStrings\t\t4550\n"
125 "CreateShortcuts\t\t4600\n"
126 "InstallFinalize\t\t6600\n"
127 "InstallInitialize\t\t1500\n"
128 "InstallValidate\t\t1400\n"
129 "LaunchConditions\t\t100\n"
130 "WriteRegistryValues\tSourceDir And SOURCEDIR\t5000";
132static const CHAR media_dat[] =
"DiskId\tLastSequence\tDiskPrompt\tCabinet\tVolumeLabel\tSource\n"
133 "i2\ti4\tL64\tS255\tS32\tS72\n"
135 "1\t3\t\t\tDISK1\t\n"
136 "2\t5\t\tmsitest.cab\tDISK2\t\n";
140 "Property\tProperty\n"
141 "DefaultUIFont\tDlgFont8\n"
144 "InstallMode\tTypical\n"
145 "Manufacturer\tWine\n"
146 "PIDTemplate\t12345<###-%%%%%%%>@@@@@\n"
147 "PRIMARYFOLDER\tTARGETDIR\n"
148 "ProductCode\t{7DF88A48-996F-4EC8-A022-BF956F9B2CBB}\n"
150 "ProductLanguage\t1033\n"
151 "ProductName\tMSITEST\n"
152 "ProductVersion\t1.1.1\n"
153 "PROMPTROLLBACKCOST\tP\n"
155 "UpgradeCode\t{4C0EAA15-0264-4E5A-8758-609EF142B92D}\n"
156 "AdminProperties\tPOSTADMIN\n"
158 "MSIFASTINSTALL\t1\n";
162 "Property\tProperty\n"
163 "DefaultUIFont\tDlgFont8\n"
167 "InstallMode\tTypical\n"
168 "Manufacturer\tWine\n"
169 "PIDTemplate\t12345<###-%%%%%%%>@@@@@\n"
170 "ProductCode\t{7DF88A48-996F-4EC8-A022-BF956F9B2CBB}\n"
172 "ProductLanguage\t1033\n"
173 "ProductName\tMSITEST\n"
174 "ProductVersion\t1.1.1\n"
175 "PROMPTROLLBACKCOST\tP\n"
177 "UpgradeCode\t{4C0EAA15-0264-4E5A-8758-609EF142B92D}\n"
178 "AdminProperties\tPOSTADMIN\n"
180 "MSIFASTINSTALL\t1\n";
184 "Property\tProperty\n"
185 "DefaultUIFont\tDlgFont8\n"
189 "InstallMode\tTypical\n"
190 "Manufacturer\tWine\n"
191 "PIDTemplate\t12345<###-%%%%%%%>@@@@@\n"
192 "ProductCode\t{7DF88A48-996F-4EC8-A022-BF956F9B2CBB}\n"
194 "ProductLanguage\t1033\n"
195 "ProductName\tMSITEST\n"
196 "ProductVersion\t1.1.1\n"
197 "PROMPTROLLBACKCOST\tP\n"
199 "UpgradeCode\t{4C0EAA15-0264-4E5A-8758-609EF142B92D}\n"
200 "AdminProperties\tPOSTADMIN\n"
202 "MSIFASTINSTALL\t1\n";
206 "Property\tProperty\n"
207 "DefaultUIFont\tDlgFont8\n"
210 "InstallMode\tTypical\n"
211 "Manufacturer\tWine\n"
212 "PIDTemplate\t12345<###-%%%%%%%>@@@@@\n"
213 "ProductCode\t{7DF88A49-996F-4EC8-A022-BF956F9B2CBB}\n"
215 "ProductLanguage\t1033\n"
216 "ProductName\tMSITEST\n"
217 "ProductVersion\t1.1.1\n"
218 "PROMPTROLLBACKCOST\tP\n"
220 "UpgradeCode\t{4C0EAA15-0264-4E5A-8758-609EF142B92D}\n"
221 "AdminProperties\tPOSTADMIN\n"
223 "MSIFASTINSTALL\t1\n";
225static const CHAR shortcut_dat[] =
"Shortcut\tDirectory_\tName\tComponent_\tTarget\tArguments\tDescription\tHotkey\tIcon_\tIconIndex\tShowCmd\tWkDir\n"
226 "s72\ts72\tl128\ts72\ts72\tS255\tL255\tI2\tS72\tI2\tI2\tS72\n"
227 "Shortcut\tShortcut\n"
228 "Shortcut\tMSITESTDIR\tShortcut\tcomponent\tShortcut\t\tShortcut\t\t\t\t\t\n";
232 "Condition\tFeature_\tLevel\n"
237 "Property\tProperty\n"
238 "DefaultUIFont\tDlgFont8\n"
241 "InstallMode\tTypical\n"
242 "Manufacturer\tWine\n"
243 "PIDTemplate\t12345<###-%%%%%%%>@@@@@\n"
244 "ProductCode\t{7DF88A48-996F-4EC8-A022-BF956F9B2CBB}\n"
246 "ProductLanguage\t1033\n"
247 "ProductName\tMSITEST\n"
248 "ProductVersion\t1.1.1\n"
249 "PROMPTROLLBACKCOST\tP\n"
251 "UpgradeCode\t{4C0EAA15-0264-4E5A-8758-609EF142B92D}\n"
252 "AdminProperties\tPOSTADMIN\n"
254 "RemovePreviousVersions\t1\n"
255 "MSIFASTINSTALL\t1\n";
259 "Property\tProperty\n"
260 "DefaultUIFont\tDlgFont8\n"
263 "InstallMode\tTypical\n"
264 "Manufacturer\tWine\n"
265 "PIDTemplate\t12345<###-%%%%%%%>@@@@@\n"
266 "ProductCode\t{7DF88A48-996F-4EC8-A022-BF956F9B2CBB}\n"
268 "ProductLanguage\t1033\n"
269 "ProductName\tMSITEST\n"
270 "ProductVersion\t1.1.2\n"
271 "PROMPTROLLBACKCOST\tP\n"
273 "UpgradeCode\t{4C0EAA15-0264-4E5A-8758-609EF142B92D}\n"
274 "AdminProperties\tPOSTADMIN\n"
276 "MSIFASTINSTALL\t1\n";
280 "Property\tProperty\n"
281 "DefaultUIFont\tDlgFont8\n"
284 "InstallMode\tTypical\n"
285 "Manufacturer\tWine\n"
286 "PIDTemplate\t12345<###-%%%%%%%>@@@@@\n"
287 "ProductCode\t{7DF88A48-996F-4EC8-A022-BF956F9B2CBB}\n"
289 "ProductLanguage\t1033\n"
290 "ProductName\tMSITEST\n"
291 "ProductVersion\t1.1.2\n"
292 "PROMPTROLLBACKCOST\tP\n"
294 "UpgradeCode\t{4C0EAA15-0264-4E5A-8758-609EF142B92D}\n"
295 "AdminProperties\tPOSTADMIN\n"
297 "RemovePreviousVersions\t1\n"
298 "MSIFASTINSTALL\t1\n";
301 "s72\ti2\tl255\tL255\tL0\ts72\n"
302 "Registry\tRegistry\n"
303 "Apples\t1\tSOFTWARE\\Wine\\msitest\tName\timaname\tOne\n"
304 "Oranges\t1\tSOFTWARE\\Wine\\msitest\tnumber\t#314\tTwo\n"
305 "regdata\t1\tSOFTWARE\\Wine\\msitest\tblah\tbad\tdangler\n"
306 "OrderTest\t1\tSOFTWARE\\Wine\\msitest\tOrderTestName\tOrderTestValue\tcomponent";
310 "s72\tS38\ts72\ti2\tS255\tS72\n"
311 "Component\tComponent\n"
312 "maximus\t\tMSITESTDIR\t0\t1\tmaximus\n"
313 "augustus\t\tMSITESTDIR\t0\t1\taugustus\n"
314 "caesar\t\tMSITESTDIR\t0\t1\tcaesar\n";
317 "s72\tS38\ts72\ti2\tS255\tS72\n"
318 "Component\tComponent\n"
319 "maximus\t\tMSITESTDIR\t0\t1\tmaximus\n"
320 "augustus\t\tMSITESTDIR\t0\t0\taugustus\n"
321 "caesar\t\tMSITESTDIR\t0\t1\tcaesar\n";
323static const CHAR cc_feature_dat[] =
"Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
324 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
326 "feature\t\t\t\t2\t1\tTARGETDIR\t0";
330 "FeatureComponents\tFeature_\tComponent_\n"
332 "feature\taugustus\n"
335static const CHAR cc_file_dat[] =
"File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
336 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
338 "maximus\tmaximus\tmaximus\t500\t\t\t16384\t1\n"
339 "augustus\taugustus\taugustus\t50000\t\t\t16384\t2\n"
340 "caesar\tcaesar\tcaesar\t500\t\t\t16384\t12";
342static const CHAR cc2_file_dat[] =
"File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
343 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
345 "maximus\tmaximus\tmaximus\t500\t\t\t16384\t1\n"
346 "augustus\taugustus\taugustus\t50000\t\t\t16384\t2\n"
347 "tiberius\tmaximus\ttiberius\t500\t\t\t16384\t3\n"
348 "caesar\tcaesar\tcaesar\t500\t\t\t16384\t12";
350static const CHAR cc_media_dat[] =
"DiskId\tLastSequence\tDiskPrompt\tCabinet\tVolumeLabel\tSource\n"
351 "i2\ti4\tL64\tS255\tS32\tS72\n"
353 "1\t10\t\ttest1.cab\tDISK1\t\n"
354 "2\t2\t\ttest2.cab\tDISK2\t\n"
355 "3\t12\t\ttest3.cab\tDISK3\t\n";
357static const CHAR cc3_media_dat[] =
"DiskId\tLastSequence\tDiskPrompt\tCabinet\tVolumeLabel\tSource\n"
358 "i2\ti4\tL64\tS255\tS32\tS72\n"
360 "1\t10\t\ttest1.cab\tDISK1\t\n"
361 "2\t2\t\ttest2_.cab\tDISK2\t\n"
362 "3\t12\t\ttest3.cab\tDISK3\t\n";
364static const CHAR co_file_dat[] =
"File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
365 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
367 "maximus\tmaximus\tmaximus\t500\t\t\t16384\t1\n"
368 "augustus\taugustus\taugustus\t50000\t\t\t16384\t2\n"
369 "caesar\tcaesar\tcaesar\t500\t\t\t16384\t3";
371static const CHAR co_media_dat[] =
"DiskId\tLastSequence\tDiskPrompt\tCabinet\tVolumeLabel\tSource\n"
372 "i2\ti4\tL64\tS255\tS32\tS72\n"
374 "1\t10\t\ttest1.cab\tDISK1\t\n"
375 "2\t2\t\ttest2.cab\tDISK2\t\n"
376 "3\t3\t\ttest3.cab\tDISK3\t\n";
378static const CHAR co2_media_dat[] =
"DiskId\tLastSequence\tDiskPrompt\tCabinet\tVolumeLabel\tSource\n"
379 "i2\ti4\tL64\tS255\tS32\tS72\n"
381 "1\t10\t\ttest1.cab\tDISK1\t\n"
382 "2\t12\t\ttest3.cab\tDISK3\t\n"
383 "3\t2\t\ttest2.cab\tDISK2\t\n";
385static const CHAR mm_file_dat[] =
"File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
386 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
388 "maximus\tmaximus\tmaximus\t500\t\t\t512\t1\n"
389 "augustus\taugustus\taugustus\t500\t\t\t512\t2\n"
390 "caesar\tcaesar\tcaesar\t500\t\t\t16384\t3";
392static const CHAR mm_media_dat[] =
"DiskId\tLastSequence\tDiskPrompt\tCabinet\tVolumeLabel\tSource\n"
393 "i2\ti4\tL64\tS255\tS32\tS72\n"
395 "1\t3\t\ttest1.cab\tDISK1\t\n";
397static const CHAR ss_media_dat[] =
"DiskId\tLastSequence\tDiskPrompt\tCabinet\tVolumeLabel\tSource\n"
398 "i2\ti4\tL64\tS255\tS32\tS72\n"
400 "1\t2\t\ttest1.cab\tDISK1\t\n"
401 "2\t2\t\ttest2.cab\tDISK2\t\n"
402 "3\t12\t\ttest3.cab\tDISK3\t\n";
406 "s72\tS38\ts72\ti2\tS255\tS72\n"
407 "Component\tComponent\n"
408 "maximus\t\tMSITESTDIR\t0\tHASUIRUN=1\tmaximus\n"
409 "augustus\t\tMSITESTDIR\t0\t1\taugustus\n"
410 "caesar\t\tMSITESTDIR\t0\t1\tcaesar\n";
414 "InstallUISequence\tAction\n"
415 "SetUIProperty\t\t5\n"
416 "ExecuteAction\t\t1100\n";
419 "s72\ti2\tS64\tS0\tS255\n"
420 "CustomAction\tAction\n"
421 "SetUIProperty\t51\tHASUIRUN\t1\t\n";
424 "s72\tS38\ts72\ti2\tS255\tS72\n"
425 "Component\tComponent\n"
426 "maximus\t\tMSITESTDIR\t0\t1\tmaximus\n";
428static const CHAR rof_feature_dat[] =
"Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
429 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
431 "feature\t\tFeature\tFeature\t2\t1\tTARGETDIR\t0\n"
432 "montecristo\t\tFeature\tFeature\t2\t1\tTARGETDIR\t0";
436 "FeatureComponents\tFeature_\tComponent_\n"
438 "montecristo\tmaximus";
440static const CHAR rof_file_dat[] =
"File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
441 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
443 "maximus\tmaximus\tmaximus\t500\t\t\t8192\t1";
445static const CHAR rof_media_dat[] =
"DiskId\tLastSequence\tDiskPrompt\tCabinet\tVolumeLabel\tSource\n"
446 "i2\ti4\tL64\tS255\tS32\tS72\n"
448 "1\t1\t\t\tDISK1\t\n";
450static const CHAR rofc_file_dat[] =
"File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
451 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
453 "maximus\tmaximus\tmaximus\t500\t\t\t16384\t1";
455static const CHAR rofc_media_dat[] =
"DiskId\tLastSequence\tDiskPrompt\tCabinet\tVolumeLabel\tSource\n"
456 "i2\ti4\tL64\tS255\tS32\tS72\n"
458 "1\t1\t\ttest1.cab\tDISK1\t\n";
462 "InstallExecuteSequence\tAction\n"
463 "AllocateRegistrySpace\tNOT Installed\t1550\n"
464 "CostFinalize\t\t1000\n"
465 "CostInitialize\t\t800\n"
467 "InstallFiles\t\t4000\n"
468 "InstallFinalize\t\t6600\n"
469 "InstallInitialize\t\t1500\n"
470 "InstallValidate\t\t1400\n"
471 "LaunchConditions\t\t100\n"
472 "SetDirProperty\t\t950";
475 "s72\ti2\tS64\tS0\tS255\n"
476 "CustomAction\tAction\n"
477 "SetDirProperty\t51\tMSITESTDIR\t[CommonFilesFolder]msitest\\\t\n";
481 "InstallExecuteSequence\tAction\n"
482 "LaunchConditions\t\t100\n"
483 "CostInitialize\t\t800\n"
485 "CostFinalize\t\t1000\n"
486 "InstallValidate\t\t1400\n"
487 "InstallInitialize\t\t1500\n"
488 "InstallFiles\t\t4000\n"
489 "InstallFinalize\t\t6600\n";
492 "s72\tS38\ts72\ti2\tS255\tS72\n"
493 "Component\tComponent\n"
494 "maximus\t\tMSITESTDIR\t0\t1\tmaximus\n"
495 "augustus\t\tMSITESTDIR\t0\t1\taugustus\n"
496 "caesar\t\tMSITESTDIR\t0\t1\tcaesar\n"
497 "gaius\t\tMSITESTDIR\t0\t1\tgaius\n";
501 "FeatureComponents\tFeature_\tComponent_\n"
503 "feature\taugustus\n"
507static const CHAR cie_file_dat[] =
"File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
508 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
510 "maximus\tmaximus\tmaximus\t500\t\t\t16384\t1\n"
511 "augustus\taugustus\taugustus\t50000\t\t\t16384\t2\n"
512 "caesar\tcaesar\tcaesar\t500\t\t\t16384\t12\n"
513 "gaius\tgaius\tgaius\t500\t\t\t8192\t11";
515static const CHAR cie_media_dat[] =
"DiskId\tLastSequence\tDiskPrompt\tCabinet\tVolumeLabel\tSource\n"
516 "i2\ti4\tL64\tS255\tS32\tS72\n"
518 "1\t1\t\ttest1.cab\tDISK1\t\n"
519 "2\t2\t\ttest2.cab\tDISK2\t\n"
520 "3\t12\t\ttest3.cab\tDISK3\t\n";
523 "s72\tS38\ts72\ti2\tS255\tS72\n"
524 "Component\tComponent\n"
525 "maximus\t{DF2CBABC-3BCC-47E5-A998-448D1C0C895B}\tMSITESTDIR\t0\tUILevel=5\tmaximus\n";
529 "FeatureComponents\tFeature_\tComponent_\n"
532static const CHAR ci2_file_dat[] =
"File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
533 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
535 "augustus\taugustus\taugustus\t500\t\t\t8192\t1";
539 "InstallExecuteSequence\tAction\n"
540 "ValidateProductID\t\t700\n"
541 "CostInitialize\t\t800\n"
543 "CostFinalize\t\t1000\n"
544 "InstallValidate\t\t1400\n"
545 "InstallInitialize\t\t1500\n"
546 "ProcessComponents\tPROCESS_COMPONENTS=1 Or FULL=1\t1600\n"
547 "UnpublishFeatures\tUNPUBLISH_FEATURES=1 Or FULL=1\t1800\n"
548 "RemoveFiles\t\t3500\n"
549 "InstallFiles\t\t4000\n"
550 "RegisterUser\tREGISTER_USER=1 Or FULL=1\t6000\n"
551 "RegisterProduct\tREGISTER_PRODUCT=1 Or FULL=1\t6100\n"
552 "PublishFeatures\tPUBLISH_FEATURES=1 Or FULL=1\t6300\n"
553 "PublishProduct\tPUBLISH_PRODUCT=1 Or FULL=1\t6400\n"
554 "InstallFinalize\t\t6600";
557 "s72\tS38\ts72\ti2\tS255\tS72\n"
558 "Component\tComponent\n"
559 "augustus\t\tMSITESTDIR\t0\tprop=\"val\"\taugustus\n";
562 "s72\tS38\ts72\ti2\tS255\tS72\n"
563 "Component\tComponent\n"
564 "augustus\t\tMSITESTDIR\t0\t\taugustus\n";
567 "s72\tS38\ts72\ti2\tS255\tS72\n"
568 "Component\tComponent\n"
569 "augustus\t\tMSITESTDIR\t0\tPOSTADMIN=1\taugustus";
572 "s72\ti2\tS64\tS0\tS255\n"
573 "CustomAction\tAction\n"
574 "SetPOSTADMIN\t51\tPOSTADMIN\t1\t\n";
578 "AdminExecuteSequence\tAction\n"
579 "CostFinalize\t\t1000\n"
580 "CostInitialize\t\t800\n"
582 "SetPOSTADMIN\t\t950\n"
583 "InstallFiles\t\t4000\n"
584 "InstallFinalize\t\t6600\n"
585 "InstallInitialize\t\t1500\n"
586 "InstallValidate\t\t1400\n"
587 "LaunchConditions\t\t100";
590 "s72\tS38\ts72\ti2\tS255\tS72\n"
591 "Component\tComponent\n"
592 "augustus\t\tMSITESTDIR\t0\tMYPROP=2718 and MyProp=42\taugustus\n";
596 "InstallExecuteSequence\tAction\n"
597 "ValidateProductID\t\t700\n"
598 "CostInitialize\t\t800\n"
600 "CostFinalize\t\t1000\n"
601 "InstallValidate\t\t1400\n"
602 "InstallInitialize\t\t1500\n"
603 "ProcessComponents\t\t1600\n"
604 "UnpublishFeatures\t\t1800\n"
605 "RemoveFiles\t\t3500\n"
606 "InstallFiles\t\t4000\n"
607 "RegisterProduct\t\t6100\n"
608 "PublishFeatures\t\t6300\n"
609 "PublishProduct\t\t6400\n"
610 "InstallFinalize\t\t6600";
613 "s72\tS38\ts72\ti2\tS255\tS72\n"
614 "Component\tComponent\n"
615 "maximus\t\tMSITESTDIR\t0\t1\tmaximus\n"
616 "augustus\t\tMSITESTDIR\t0\t1\taugustus\n"
617 "caesar\t\tMSITESTDIR\t0\t1\tcaesar\n"
618 "gaius\t\tMSITESTDIR\t0\tGAIUS=1\tgaius\n"
619 "tiberius\t\tMSITESTDIR\t0\t\ttiberius\n";
621static const CHAR mc_file_dat[] =
"File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
622 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
624 "maximus\tmaximus\tmaximus\t500\t\t\t16384\t1\n"
625 "augustus\taugustus\taugustus\t500\t\t\t0\t2\n"
626 "caesar\tcaesar\tcaesar\t500\t\t\t16384\t3\n"
627 "gaius\tgaius\tgaius\t500\t\t\t16384\t4\n"
628 "tiberius\ttiberius\ttiberius\t500\t\t\t0\t5\n";
630static const CHAR mc_media_dat[] =
"DiskId\tLastSequence\tDiskPrompt\tCabinet\tVolumeLabel\tSource\n"
631 "i2\ti4\tL64\tS255\tS32\tS72\n"
633 "1\t1\t\ttest1.cab\tDISK1\t\n"
634 "2\t2\t\ttest2.cab\tDISK2\t\n"
635 "3\t3\t\ttest3.cab\tDISK3\t\n"
636 "4\t4\t\ttest3.cab\tDISK3\t\n"
637 "5\t5\t\ttest4.cab\tDISK4\t\n";
640 "s72\ti2\ti4\ti4\ti4\ti4\n"
641 "MsiFileHash\tFile_\n"
642 "caesar\t0\t850433704\t-241429251\t675791761\t-1221108824";
645 "s72\tS38\ts72\ti2\tS255\tS72\n"
646 "Component\tComponent\n"
647 "augustus\t\tMSITESTDIR\t0\t\taugustus\n";
651 "InstallExecuteSequence\tAction\n"
652 "CostInitialize\t\t100\n"
654 "CostFinalize\t\t300\n"
655 "InstallValidate\t\t400\n"
656 "InstallInitialize\t\t500\n"
658 "maintest\tMAIN_TEST\t700\n"
659 "testretval\tTEST_RETVAL\t710\n"
660 "process1\tTEST_PROCESS\t720\n"
661 "process2\tTEST_PROCESS\t721\n"
662 "process_deferred\tTEST_PROCESS\t722\n"
663 "async1\tTEST_ASYNC\t730\n"
664 "async2\tTEST_ASYNC\t731\n"
665 "InstallFinalize\t\t800\n";
669 "CustomAction\tAction\n"
670 "embednull\t51\tembednullprop\ta[~]b\n"
671 "nested51\t51\tnested\t1\n"
672 "nested1\t1\tcustom.dll\tnested\n"
673 "maintest\t1\tcustom.dll\tmain_test\n"
674 "process1\t1\tcustom.dll\tprocess1\n"
675 "process2\t1\tcustom.dll\tprocess2\n"
676 "process_deferred\t1025\tcustom.dll\tprocess2\n"
677 "async1\t129\tcustom.dll\tasync1\n"
678 "async2\t1\tcustom.dll\tasync2\n"
679 "testretval\t1\tcustom.dll\ttest_retval\n";
683 "TestSequence\tAction\n"
694 "Table\tColumn\tNullable\tMinValue\tMaxValue\tKeyTable\tKeyColumn\tCategory\tSet\tDescription\n"
695 "s32\ts32\ts4\tI4\tI4\tS255\tI2\tS32\tS255\tS255\n"
696 "_Validation\tTable\tColumn\n"
697 "test2\tA\tN\t\t\t\t\t\t\t\n"
698 "test2\tB\tN\t\t\t\t\t\t\t\n";
701 "s72\tS38\ts72\ti2\tS255\tS72\n"
702 "Component\tComponent\n"
703 "augustus\t\tMSITESTDIR\t0\tMYPROP=42\taugustus\n";
707 "InstallExecuteSequence\tAction\n"
708 "ValidateProductID\t\t700\n"
709 "GoodSetProperty\t\t725\n"
710 "BadSetProperty\t\t750\n"
711 "CostInitialize\t\t800\n"
712 "ResolveSource\t\t810\n"
714 "SetSourceDir\tSRCDIR\t910\n"
715 "CostFinalize\t\t1000\n"
716 "InstallValidate\t\t1400\n"
717 "InstallInitialize\t\t1500\n"
718 "InstallFiles\t\t4000\n"
719 "InstallFinalize\t\t6600";
723 "CustomAction\tAction\n"
724 "GoodSetProperty\t51\tMYPROP\t42\n"
725 "BadSetProperty\t51\t\tMYPROP\n"
726 "SetSourceDir\t51\tSourceDir\t[SRCDIR]\n";
728static const CHAR is_feature_dat[] =
"Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
729 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
731 "one\t\t\t\t2\t1\t\t0\n"
732 "two\t\t\t\t2\t1\t\t1\n"
733 "three\t\t\t\t2\t1\t\t4\n"
734 "four\t\t\t\t2\t0\t\t0";
737 "s72\tS38\ts72\ti2\tS255\tS72\n"
738 "Component\tComponent\n"
739 "alpha\t\tMSITESTDIR\t0\t\talpha_file\n"
740 "beta\t\tMSITESTDIR\t1\t\tbeta_file\n"
741 "gamma\t\tMSITESTDIR\t2\t\tgamma_file\n"
742 "theta\t\tMSITESTDIR\t0\t\ttheta_file\n"
743 "delta\t\tMSITESTDIR\t1\t\tdelta_file\n"
744 "epsilon\t\tMSITESTDIR\t2\t\tepsilon_file\n"
745 "zeta\t\tMSITESTDIR\t0\t\tzeta_file\n"
746 "iota\t\tMSITESTDIR\t1\t\tiota_file\n"
747 "eta\t\tMSITESTDIR\t2\t\teta_file\n"
748 "kappa\t\tMSITESTDIR\t0\t\tkappa_file\n"
749 "lambda\t\tMSITESTDIR\t1\t\tlambda_file\n"
750 "mu\t\tMSITESTDIR\t2\t\tmu_file\n";
754 "FeatureComponents\tFeature_\tComponent_\n"
768static const CHAR is_file_dat[] =
"File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
769 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
771 "alpha_file\talpha\talpha\t500\t\t\t8192\t1\n"
772 "beta_file\tbeta\tbeta\t500\t\t\t8291\t2\n"
773 "gamma_file\tgamma\tgamma\t500\t\t\t8192\t3\n"
774 "theta_file\ttheta\ttheta\t500\t\t\t8192\t4\n"
775 "delta_file\tdelta\tdelta\t500\t\t\t8192\t5\n"
776 "epsilon_file\tepsilon\tepsilon\t500\t\t\t8192\t6\n"
777 "zeta_file\tzeta\tzeta\t500\t\t\t8192\t7\n"
778 "iota_file\tiota\tiota\t500\t\t\t8192\t8\n"
779 "eta_file\teta\teta\t500\t\t\t8192\t9\n"
780 "kappa_file\tkappa\tkappa\t500\t\t\t8192\t10\n"
781 "lambda_file\tlambda\tlambda\t500\t\t\t8192\t11\n"
782 "mu_file\tmu\tmu\t500\t\t\t8192\t12";
784static const CHAR is_media_dat[] =
"DiskId\tLastSequence\tDiskPrompt\tCabinet\tVolumeLabel\tSource\n"
785 "i2\ti4\tL64\tS255\tS32\tS72\n"
787 "1\t12\t\t\tDISK1\t\n";
790 "s72\tS38\ts72\ti2\tS255\tS72\n"
791 "Component\tComponent\n"
792 "augustus\t\tTWODIR\t0\t\taugustus\n";
796 "Directory\tDirectory\n"
797 "TARGETDIR\t\tSourceDir\n"
798 "ProgramFilesFolder\tTARGETDIR\t.\n"
799 "MSITESTDIR\tProgramFilesFolder\tmsitest:.\n"
800 "ONEDIR\tMSITESTDIR\t.:shortone|longone\n"
801 "TWODIR\tONEDIR\t.:shorttwo|longtwo";
804 "s72\tS38\ts72\ti2\tS255\tS72\n"
805 "Component\tComponent\n"
806 "hydrogen\t{C844BD1E-1907-4C00-8BC9-150BD70DF0A1}\tMSITESTDIR\t2\t\thydrogen\n"
807 "helium\t{5AD3C142-CEF8-490D-B569-784D80670685}\tMSITESTDIR\t2\t\thelium\n"
808 "lithium\t{4AF28FFC-71C7-4307-BDE4-B77C5338F56F}\tMSITESTDIR\t2\tPROPVAR=42\tlithium\n";
810static const CHAR mcp_feature_dat[] =
"Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
811 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
813 "hydroxyl\t\thydroxyl\thydroxyl\t2\t1\tTARGETDIR\t0\n"
814 "heliox\t\theliox\theliox\t2\t5\tTARGETDIR\t0\n"
815 "lithia\t\tlithia\tlithia\t2\t10\tTARGETDIR\t0";
819 "FeatureComponents\tFeature_\tComponent_\n"
820 "hydroxyl\thydrogen\n"
824static const CHAR mcp_file_dat[] =
"File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
825 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
827 "hydrogen\thydrogen\thydrogen\t0\t\t\t8192\t1\n"
828 "helium\thelium\thelium\t0\t\t\t8192\t1\n"
829 "lithium\tlithium\tlithium\t0\t\t\t8192\t1\n"
830 "beryllium\tmissingcomp\tberyllium\t0\t\t\t8192\t1";
832static const CHAR ai_file_dat[] =
"File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
833 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
835 "five.txt\tFive\tfive.txt\t1000\t\t\t16384\t5\n"
836 "four.txt\tFour\tfour.txt\t1000\t\t\t16384\t4\n"
837 "one.txt\tOne\tone.txt\t1000\t\t\t16384\t1\n"
838 "three.txt\tThree\tthree.txt\t1000\t\t\t16384\t3\n"
839 "two.txt\tTwo\ttwo.txt\t1000\t\t\t16384\t2\n"
840 "file\tcomponent\tfilename\t100\t\t\t8192\t1\n";
844 "InstallExecuteSequence\tAction\n"
845 "CostFinalize\t\t1000\n"
846 "ValidateProductID\t\t700\n"
847 "CostInitialize\t\t800\n"
849 "RemoveFiles\t\t3500\n"
850 "InstallFiles\t\t4000\n"
851 "RegisterUser\t\t6000\n"
852 "RegisterProduct\t\t6100\n"
853 "PublishFeatures\t\t6300\n"
854 "PublishProduct\t\t6400\n"
855 "InstallFinalize\t\t6600\n"
856 "InstallInitialize\t\t1500\n"
857 "ProcessComponents\t\t1600\n"
858 "UnpublishFeatures\t\t1800\n"
859 "InstallValidate\t\t1400\n"
860 "LaunchConditions\t\t100\n"
861 "TestInstalledProp\tInstalled AND NOT REMOVE\t950\n";
864 "s72\ti2\tS64\tS0\tS255\n"
865 "CustomAction\tAction\n"
866 "TestInstalledProp\t19\t\tTest failed\t\n";
870 "InstallExecuteSequence\tAction\n"
871 "CostFinalize\t\t1000\n"
872 "ValidateProductID\t\t700\n"
873 "CostInitialize\t\t800\n"
875 "RemoveFiles\t\t3500\n"
876 "InstallFiles\t\t4000\n"
877 "RegisterUser\t\t6000\n"
878 "RegisterProduct\t\t6100\n"
879 "PublishFeatures\t\t6300\n"
880 "PublishProduct\t\t6400\n"
881 "InstallFinalize\t\t6600\n"
882 "InstallInitialize\t\t1500\n"
883 "ProcessComponents\t\t1600\n"
884 "UnpublishFeatures\t\t1800\n"
885 "InstallValidate\t\t1400\n"
886 "LaunchConditions\t\t100\n"
887 "TestAllUsersProp\tALLUSERS AND NOT REMOVE\t50\n";
891 "InstallExecuteSequence\tAction\n"
892 "CostFinalize\t\t1000\n"
893 "ValidateProductID\t\t700\n"
894 "CostInitialize\t\t800\n"
896 "RemoveFiles\t\t3500\n"
897 "InstallFiles\t\t4000\n"
898 "RegisterUser\t\t6000\n"
899 "RegisterProduct\t\t6100\n"
900 "PublishFeatures\t\t6300\n"
901 "PublishProduct\t\t6400\n"
902 "InstallFinalize\t\t6600\n"
903 "InstallInitialize\t\t1500\n"
904 "ProcessComponents\t\t1600\n"
905 "UnpublishFeatures\t\t1800\n"
906 "InstallValidate\t\t1400\n"
907 "LaunchConditions\t\t100\n"
908 "TestAllUsersProp\tALLUSERS=2 AND NOT REMOVE\t50\n";
912 "InstallExecuteSequence\tAction\n"
913 "CostFinalize\t\t1000\n"
914 "ValidateProductID\t\t700\n"
915 "CostInitialize\t\t800\n"
917 "RemoveFiles\t\t3500\n"
918 "InstallFiles\t\t4000\n"
919 "RegisterUser\t\t6000\n"
920 "RegisterProduct\t\t6100\n"
921 "PublishFeatures\t\t6300\n"
922 "PublishProduct\t\t6400\n"
923 "InstallFinalize\t\t6600\n"
924 "InstallInitialize\t\t1500\n"
925 "ProcessComponents\t\t1600\n"
926 "UnpublishFeatures\t\t1800\n"
927 "InstallValidate\t\t1400\n"
928 "LaunchConditions\t\t100\n"
929 "TestAllUsersProp\tALLUSERS=1 AND NOT REMOVE\t50\n";
932 "s72\ti2\tS64\tS0\tS255\n"
933 "CustomAction\tAction\n"
934 "TestAllUsersProp\t19\t\tTest failed\t\n";
936static const CHAR fo_file_dat[] =
"File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
937 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
939 "override.txt\toverride\toverride.txt\t1000\t\t\t8192\t1\n"
940 "preselected.txt\tpreselected\tpreselected.txt\t1000\t\t\t8192\t2\n"
941 "notpreselected.txt\tnotpreselected\tnotpreselected.txt\t1000\t\t\t8192\t3\n";
943static const CHAR fo_feature_dat[] =
"Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
944 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
946 "override\t\t\toverride feature\t1\t1\tMSITESTDIR\t0\n"
947 "preselected\t\t\tpreselected feature\t1\t1\tMSITESTDIR\t0\n"
948 "notpreselected\t\t\tnotpreselected feature\t1\t1\tMSITESTDIR\t0\n";
952 "Condition\tFeature_\tLevel\n"
953 "preselected\t0\tPreselected AND NOT REMOVE\n"
954 "notpreselected\t0\tNOT Preselected AND NOT REMOVE\n";
958 "FeatureComponents\tFeature_\tComponent_\n"
959 "override\toverride\n"
960 "preselected\tpreselected\n"
961 "notpreselected\tnotpreselected\n";
964 "s72\tS38\ts72\ti2\tS255\tS72\n"
965 "Component\tComponent\n"
966 "override\t{0A00FB1D-97B0-4B42-ADF0-BB8913416623}\tMSITESTDIR\t0\t\toverride.txt\n"
967 "preselected\t{44E1DB75-605A-43DD-8CF5-CAB17F1BBD60}\tMSITESTDIR\t0\t\tpreselected.txt\n"
968 "notpreselected\t{E1647733-5E75-400A-A92E-5E60B4D4EF9F}\tMSITESTDIR\t0\t\tnotpreselected.txt\n";
971 "s72\ti2\tS64\tS0\tS255\n"
972 "CustomAction\tAction\n"
973 "SetPreselected\t51\tPreselected\t1\t\n";
977 "InstallExecuteSequence\tAction\n"
978 "LaunchConditions\t\t100\n"
979 "SetPreselected\tpreselect=1\t200\n"
980 "CostInitialize\t\t800\n"
982 "CostFinalize\t\t1000\n"
983 "InstallValidate\t\t1400\n"
984 "InstallInitialize\t\t1500\n"
985 "ProcessComponents\t\t1600\n"
986 "RemoveFiles\t\t1700\n"
987 "InstallFiles\t\t2000\n"
988 "RegisterProduct\t\t5000\n"
989 "PublishFeatures\t\t5100\n"
990 "PublishProduct\t\t5200\n"
991 "UnpublishFeatures\t\t5300\n"
992 "InstallFinalize\t\t6000\n";
994static const CHAR uc_file_dat[] =
"File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
995 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
997 "upgradecode.txt\tupgradecode\tupgradecode.txt\t1000\t\t\t8192\t1\n";
999static const CHAR uc_feature_dat[] =
"Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
1000 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
1001 "Feature\tFeature\n"
1002 "upgradecode\t\t\tupgradecode feature\t1\t2\tMSITESTDIR\t0\n";
1006 "FeatureComponents\tFeature_\tComponent_\n"
1007 "upgradecode\tupgradecode\n";
1010 "s72\tS38\ts72\ti2\tS255\tS72\n"
1011 "Component\tComponent\n"
1012 "upgradecode\t{6952B732-2FCB-4E47-976F-989FCBD7EDFB}\tMSITESTDIR\t0\t\tupgradecode.txt\n";
1016 "Property\tProperty\n"
1018 "ProductCode\t{E5FB1241-F547-4BA7-A60E-8E75797268D4}\n"
1019 "ProductName\tMSITEST\n"
1020 "ProductVersion\t1.1.1\n"
1021 "UpgradeCode\t#UPGEADECODE#\n"
1022 "MSIFASTINSTALL\t1\n";
1026 "InstallExecuteSequence\tAction\n"
1027 "LaunchConditions\t\t100\n"
1028 "CostInitialize\t\t200\n"
1030 "CostFinalize\t\t400\n"
1031 "InstallInitialize\t\t500\n"
1032 "ProcessComponents\t\t600\n"
1033 "InstallValidate\t\t700\n"
1034 "RemoveFiles\t\t800\n"
1035 "InstallFiles\t\t900\n"
1036 "RegisterProduct\t\t1000\n"
1037 "PublishFeatures\t\t1100\n"
1038 "PublishProduct\t\t1200\n"
1039 "UnpublishFeatures\t\t1250\n"
1040 "InstallFinalize\t\t1300\n";
1043 "Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
1044 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
1045 "Feature\tFeature\n"
1046 "feature1\t\t\t\t1\t2\tMSITESTDIR\t0\n"
1047 "feature2\t\t\t\t1\t2\tMSITESTDIR\t0\n";
1050 "Feature_\tComponent_\n"
1052 "FeatureComponents\tFeature_\tComponent_\n"
1054 "feature2\tcomp2\n";
1057 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
1058 "s72\tS38\ts72\ti2\tS255\tS72\n"
1059 "Component\tComponent\n"
1060 "comp1\t{DE9F0EF4-0ED3-495A-8105-060C0EA457B8}\tTARGETDIR\t4\t\tregdata1\n"
1061 "comp2\t{4912DBE7-FC3A-4F91-BB5C-88F5C15C19A5}\tTARGETDIR\t260\t\tregdata2\n";
1064 "Registry\tRoot\tKey\tName\tValue\tComponent_\n"
1065 "s72\ti2\tl255\tL255\tL0\ts72\n"
1066 "Registry\tRegistry\n"
1067 "regdata1\t2\tSOFTWARE\\Wine\\msitest\ttest1\t\tcomp1\n"
1068 "regdata2\t2\tSOFTWARE\\Wine\\msitest\ttest2\t\tcomp2\n"
1069 "regdata3\t0\tCLSID\\{8dfef911-6885-41eb-b280-8f0304728e8b}\t\tCLSID_Winetest32\tcomp1\n"
1070 "regdata4\t0\tCLSID\\{8dfef911-6885-41eb-b280-8f0304728e8b}\\InProcServer32\t\twinetest32.dll\tcomp1\n"
1071 "regdata5\t0\tCLSID\\{8dfef911-6885-41eb-b280-8f0304728e8b}\t\tCLSID_Winetest64\tcomp2\n"
1072 "regdata6\t0\tCLSID\\{8dfef911-6885-41eb-b280-8f0304728e8b}\\InProcServer32\t\twinetest64.dll\tcomp2\n";
1075 "Action\tCondition\tSequence\n"
1077 "InstallExecuteSequence\tAction\n"
1078 "LaunchConditions\t\t100\n"
1079 "CostInitialize\t\t200\n"
1081 "CostFinalize\t\t400\n"
1082 "InstallValidate\t\t500\n"
1083 "InstallInitialize\t\t600\n"
1084 "ProcessComponents\t\t700\n"
1085 "UnpublishFeatures\t\t800\n"
1086 "RemoveRegistryValues\t\t900\n"
1087 "WriteRegistryValues\t\t1000\n"
1088 "RegisterProduct\t\t1100\n"
1089 "PublishFeatures\t\t1200\n"
1090 "PublishProduct\t\t1300\n"
1091 "InstallFinalize\t\t1400\n";
1094 "File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
1095 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
1097 "volumeprop\tcomp\tvolumeprop.txt\t1000\t\t\t8192\t1\n";
1100 "Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
1101 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
1102 "Feature\tFeature\n"
1103 "feature\t\t\t\t1\t2\tMSITESTDIR\t0\n";
1106 "Feature_\tComponent_\n"
1108 "FeatureComponents\tFeature_\tComponent_\n"
1112 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
1113 "s72\tS38\ts72\ti2\tS255\tS72\n"
1114 "Component\tComponent\n"
1115 "comp\t{24364AE7-5B7F-496C-AF5A-54893639C567}\tMSITESTDIR\t0\t\tvolumeprop\n";
1118 "Action\tType\tSource\tTarget\tISComments\n"
1119 "s72\ti2\tS64\tS0\tS255\n"
1120 "CustomAction\tAction\n"
1121 "TestPrimaryVolumePath0\t19\t\tPrimaryVolumePath set before CostFinalize\t\n"
1122 "TestPrimaryVolumeSpaceAvailable0\t19\t\tPrimaryVolumeSpaceAvailable set before CostFinalize\t\n"
1123 "TestPrimaryVolumeSpaceRequired0\t19\t\tPrimaryVolumeSpaceRequired set before CostFinalize\t\n"
1124 "TestPrimaryVolumeSpaceRemaining0\t19\t\tPrimaryVolumeSpaceRemaining set before CostFinalize\t\n"
1125 "TestPrimaryVolumePath1\t19\t\tPrimaryVolumePath set before InstallValidate\t\n"
1126 "TestPrimaryVolumeSpaceAvailable1\t19\t\tPrimaryVolumeSpaceAvailable not set before InstallValidate\t\n"
1127 "TestPrimaryVolumeSpaceRequired1\t19\t\tPrimaryVolumeSpaceRequired not set before InstallValidate\t\n"
1128 "TestPrimaryVolumeSpaceRemaining1\t19\t\tPrimaryVolumeSpaceRemaining not set before InstallValidate\t\n"
1129 "TestPrimaryVolumePath2\t19\t\tPrimaryVolumePath not set after InstallValidate\t\n"
1130 "TestPrimaryVolumeSpaceAvailable2\t19\t\tPrimaryVolumeSpaceAvailable not set after InstallValidate\t\n"
1131 "TestPrimaryVolumeSpaceRequired2\t19\t\tPrimaryVolumeSpaceRequired not set after InstallValidate\t\n"
1132 "TestPrimaryVolumeSpaceRemaining2\t19\t\tPrimaryVolumeSpaceRemaining not set after InstallValidate\t\n";
1135 "Action\tCondition\tSequence\n"
1137 "InstallExecuteSequence\tAction\n"
1138 "LaunchConditions\t\t100\n"
1139 "CostInitialize\t\t200\n"
1141 "TestPrimaryVolumePath0\tPrimaryVolumePath AND NOT REMOVE\t400\n"
1142 "TestPrimaryVolumeSpaceAvailable0\tPrimaryVolumeSpaceAvailable AND NOT REMOVE\t500\n"
1143 "TestPrimaryVolumeSpaceRequired0\tPrimaryVolumeSpaceRequired AND NOT REMOVE\t510\n"
1144 "TestPrimaryVolumeSpaceRemaining0\tPrimaryVolumeSpaceRemaining AND NOT REMOVE\t520\n"
1145 "CostFinalize\t\t600\n"
1146 "TestPrimaryVolumePath1\tPrimaryVolumePath AND NOT REMOVE\t600\n"
1147 "TestPrimaryVolumeSpaceAvailable1\tNOT PrimaryVolumeSpaceAvailable AND NOT REMOVE\t800\n"
1148 "TestPrimaryVolumeSpaceRequired1\tNOT PrimaryVolumeSpaceRequired AND NOT REMOVE\t810\n"
1149 "TestPrimaryVolumeSpaceRemaining1\tNOT PrimaryVolumeSpaceRemaining AND NOT REMOVE\t820\n"
1150 "InstallValidate\t\t900\n"
1151 "TestPrimaryVolumePath2\tNOT PrimaryVolumePath AND NOT REMOVE\t1000\n"
1152 "TestPrimaryVolumeSpaceAvailable2\tNOT PrimaryVolumeSpaceAvailable AND NOT REMOVE\t1100\n"
1153 "TestPrimaryVolumeSpaceRequired2\tNOT PrimaryVolumeSpaceRequired AND NOT REMOVE\t1110\n"
1154 "TestPrimaryVolumeSpaceRemaining2\tNOT PrimaryVolumeSpaceRemaining AND NOT REMOVE\t1120\n"
1155 "InstallInitialize\t\t1200\n"
1156 "ProcessComponents\t\t1300\n"
1157 "RemoveFiles\t\t1400\n"
1158 "InstallFiles\t\t1500\n"
1159 "RegisterProduct\t\t1600\n"
1160 "PublishFeatures\t\t1700\n"
1161 "PublishProduct\t\t1800\n"
1162 "UnpublishFeatures\t\t1850\n"
1163 "InstallFinalize\t\t1900\n";
1168 "Property\tProperty\n"
1170 "ProductCode\t{5CD99CD0-69C7-409B-9905-82DD743CC840}\n"
1171 "ProductName\tMSITEST\n"
1172 "ProductVersion\t1.1.1\n"
1173 "MSIFASTINSTALL\t1\n";
1178 "Property\tProperty\n"
1180 "ProductCode\t{4CEFADE5-DAFB-4C21-8EF2-4ED4F139F340}\n"
1181 "ProductName\tMSITEST2\n"
1182 "ProductVersion\t1.1.1\n"
1183 "MSIFASTINSTALL\t1\n";
1186 "File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
1187 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
1189 "sharedcomponent\tsharedcomponent\tsharedcomponent.txt\t1000\t\t\t8192\t1\n";
1192 "Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
1193 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
1194 "Feature\tFeature\n"
1195 "feature\t\t\t\t1\t2\tMSITESTDIR\t0\n";
1198 "Feature_\tComponent_\n"
1200 "FeatureComponents\tFeature_\tComponent_\n"
1201 "feature\tsharedcomponent\n";
1204 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
1205 "s72\tS38\ts72\ti2\tS255\tS72\n"
1206 "Component\tComponent\n"
1207 "sharedcomponent\t{900A4ACB-DC6F-4795-A04B-81B530183D41}\tMSITESTDIR\t0\t\tsharedcomponent\n";
1210 "Action\tType\tSource\tTarget\tISComments\n"
1211 "s72\ti2\tS64\tS0\tS255\n"
1212 "CustomAction\tAction\n"
1213 "TestComponentAction\t19\t\twrong component action on install\t\n"
1214 "TestDisallowedAction\t19\t\twrong component action on disallowed remove\t\n"
1215 "TestRemoveAction\t19\t\twrong component action on remove\t\n";
1218 "Action\tCondition\tSequence\n"
1220 "InstallExecuteSequence\tAction\n"
1221 "LaunchConditions\t\t100\n"
1222 "CostInitialize\t\t200\n"
1224 "CostFinalize\t\t600\n"
1225 "TestDisallowedAction\tREMOVE AND ($sharedcomponent <> -1)\t700\n"
1226 "InstallValidate\t\t900\n"
1227 "InstallInitialize\t\t1200\n"
1228 "ProcessComponents\t\t1300\n"
1229 "RemoveFiles\t\t1400\n"
1230 "InstallFiles\t\t1500\n"
1231 "TestComponentAction\tNOT REMOVE AND ($sharedcomponent <> 3)\t1600\n"
1232 "RegisterProduct\t\t1700\n"
1233 "PublishFeatures\t\t1800\n"
1234 "PublishProduct\t\t1900\n"
1235 "UnpublishFeatures\t\t1950\n"
1236 "InstallFinalize\t\t2000\n";
1239 "Action\tCondition\tSequence\n"
1241 "InstallExecuteSequence\tAction\n"
1242 "LaunchConditions\t\t100\n"
1243 "CostInitialize\t\t200\n"
1245 "CostFinalize\t\t600\n"
1246 "TestRemoveAction\tREMOVE AND ($sharedcomponent <> 2)\t700\n"
1247 "InstallValidate\t\t900\n"
1248 "InstallInitialize\t\t1200\n"
1249 "ProcessComponents\t\t1300\n"
1250 "RemoveFiles\t\t1400\n"
1251 "InstallFiles\t\t1500\n"
1252 "TestComponentAction\tNOT REMOVE AND ($sharedcomponent <> 3)\t1600\n"
1253 "RegisterProduct\t\t1700\n"
1254 "PublishFeatures\t\t1800\n"
1255 "PublishProduct\t\t1900\n"
1256 "UnpublishFeatures\t\t1950\n"
1257 "InstallFinalize\t\t2000\n";
1260 "File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
1261 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
1263 "featuretree\tcomp\tfeaturetree.txt\t1000\t\t\t8192\t1\n";
1266 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
1267 "s72\tS38\ts72\ti2\tS255\tS72\n"
1268 "Component\tComponent\n"
1269 "comp\t{12345678-1234-1234-1234-222222222222}\tTARGETDIR\t0\t\t\n"
1270 "comp2\t{12345678-1234-1234-1234-333333333333}\tTARGETDIR\t0\t\tfeaturetree\n";
1273 "Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
1274 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
1275 "Feature\tFeature\n"
1276 "A\t\t\t\t2\t1\t\t0\n"
1277 "C\tB\t\t\t2\t1\t\t0\n"
1278 "B\tA\t\t\t4\t1\t\t0\n"
1279 "D\t\t\t\t2\t1\t\t0\n";
1282 "Feature_\tComponent_\n"
1284 "FeatureComponents\tFeature_\tComponent_\n"
1289 "Feature_\tLevel\tCondition\n"
1291 "Condition\tFeature_\tLevel\n"
1292 "A\t0\t\"0\"<>INSTALLTYPE\n";
1295 "Action\tType\tSource\tTarget\tISComments\n"
1296 "s72\ti2\tS64\tS0\tS255\n"
1297 "CustomAction\tAction\n"
1298 "Run A\t19\t\tA\t\n"
1299 "Run B\t19\t\tB\t\n"
1300 "Run C\t19\t\tC\t\n";
1303 "Action\tCondition\tSequence\n"
1305 "InstallExecuteSequence\tAction\n"
1306 "CostInitialize\t\t100\n"
1308 "CostFinalize\t\t300\n"
1309 "InstallValidate\t\t400\n"
1310 "InstallInitialize\t\t500\n"
1311 "Run C\t3 = &C AND NOT Installed\t600\n"
1312 "Run B\t3 = &B AND NOT Installed\t700\n"
1313 "Run A\t3 = &A AND NOT Installed\t800\n"
1314 "ProcessComponents\t\t900\n"
1315 "RemoveFiles\t\t1000\n"
1316 "InstallFiles\t\t1100\n"
1317 "RegisterProduct\t\t1200\n"
1318 "PublishFeatures\t\t1300\n"
1319 "PublishProduct\t\t1400\n"
1320 "UnpublishFeatures\t\t1450\n"
1321 "InstallFinalize\t\t1500\n";
1324 "Action\tType\tSource\tTarget\n"
1325 "s72\ti2\tS64\tS0\n"
1326 "CustomAction\tAction\n"
1327 "setprop\t51\tdeferred\t[TESTPATH]\n"
1328 "immediate\t1\tcustom.dll\tda_immediate\n"
1329 "deferred\t1025\tcustom.dll\tda_deferred\n";
1332 "Action\tCondition\tSequence\n"
1334 "InstallExecuteSequence\tAction\n"
1335 "CostInitialize\t\t200\n"
1337 "CostFinalize\t\t400\n"
1338 "InstallInitialize\t\t500\n"
1341 "immediate\t\t800\n"
1342 "InstallFinalize\t\t1100\n";
1345 "Directory\tDirectory_Parent\tDefaultDir\n"
1347 "Directory\tDirectory\n"
1348 "CABOUTDIR\tMSITESTDIR\tcabout\n"
1349 "CHANGEDDIR\tMSITESTDIR\tchanged:second\n"
1350 "FIRSTDIR\tMSITESTDIR\tfirst\n"
1351 "MSITESTDIR\tProgramFiles64Folder\tmsitest\n"
1352 "NEWDIR\tCABOUTDIR\tnew\n"
1353 "ProgramFiles64Folder\tTARGETDIR\t.\n"
1354 "TARGETDIR\t\tSourceDir";
1357 "Action\tCondition\tSequence\n"
1359 "InstallExecuteSequence\tAction\n"
1360 "CostInitialize\t\t200\n"
1362 "CostFinalize\t\t400\n"
1363 "InstallValidate\t\t500\n"
1364 "InstallInitialize\t\t600\n"
1365 "sourcedir_unset\tSourceDir\t700\n"
1366 "ResolveSource\tRESOLVE_SOURCE\t800\n"
1367 "ProcessComponents\tPROCESS_COMPONENTS\t800\n"
1368 "InstallFiles\tINSTALL_FILES\t800\n"
1369 "sourcedir_set\tNOT SourceDir\t900\n"
1370 "InstallFinalize\t\t1000\n";
1373 "Action\tType\tSource\tTarget\n"
1374 "s72\ti2\tS64\tS0\n"
1375 "CustomAction\tAction\n"
1376 "sourcedir_unset\t19\t\tSourceDir should not be set\n"
1377 "sourcedir_set\t19\t\tSourceDir should be set\n";
1380 "File\tComponent_\tFileName\tFileSize\tVersion\tLanguage\tAttributes\tSequence\n"
1381 "s72\ts72\tl255\ti4\tS72\tS20\tI2\ti2\n"
1383 "five.txt\tFive\tfive.txt\t1000\t\t\t0\t5\n"
1384 "four.txt\tFour\tfour.txt\t1000\t\t\t0\t4\n";
1387 "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
1388 "s72\tS38\ts72\ti2\tS255\tS72\n"
1389 "Component\tComponent\n"
1390 "Five\t{8CC92E9D-14B2-4CA4-B2AA-B11D02078087}\tNEWDIR\t2\t\tfive.txt\n"
1391 "Four\t{FD37B4EA-7209-45C0-8917-535F35A2F080}\tCABOUTDIR\t2\t\tfour.txt\n";
1394 "Feature\tFeature_Parent\tTitle\tDescription\tDisplay\tLevel\tDirectory_\tAttributes\n"
1395 "s38\tS38\tL64\tL255\tI2\ti2\tS72\ti2\n"
1396 "Feature\tFeature\n"
1397 "Five\t\tFive\tThe Five Feature\t5\t3\tNEWDIR\t0\n"
1398 "Four\t\tFour\tThe Four Feature\t4\t3\tCABOUTDIR\t0\n";
1401 "Feature_\tComponent_\n"
1403 "FeatureComponents\tFeature_\tComponent_\n"
2105#define MEDIA_SIZE 0x7FFFFFFF
2106#define FOLDER_THRESHOLD 900000
2132 BOOL fContinuation,
void *pv)
2141 DWORD dwShareMode = 0;
2153 dwCreateDisposition, 0,
NULL);
2167 ok(
res,
"Failed to ReadFile\n");
2179 ok(
res,
"Failed to WriteFile\n");
2206 ok(
ret,
"Failed to DeleteFile %s\n", pszFile);
2242 if (tempname && (
strlen(tempname) < (
unsigned)cbTempName))
2268 ok(
res,
"Expected GetFileInformationByHandle to succeed\n");
2300 pCabParams->
setID = 0xbeef;
2301 pCabParams->
iCab = 1;
2321 ok(hfci !=
NULL,
"Failed to create an FCI context\n");
2327 ok(
res,
"Failed to add file: %s\n",
ptr);
2332 ok(
res,
"Failed to flush the cabinet\n");
2335 ok(
res,
"Failed to destroy the cabinet\n");
2344 "Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders", &hkey))
2512 ok(
delete_pf(
"msitest\\cabout\\new\\five.txt",
TRUE),
"File not installed\n");
2514 ok(
delete_pf(
"msitest\\cabout\\four.txt",
TRUE),
"File not installed\n");
2516 ok(
delete_pf(
"msitest\\changed\\three.txt",
TRUE),
"File not installed\n");
2518 ok(
delete_pf(
"msitest\\first\\two.txt",
TRUE),
"File not installed\n");
2536 const char *
template,
const char *packagecode)
2580 ok(
res != 0,
"couldn't find resource\n" );
2620 res =
run_query(hdb, 0,
"CREATE TABLE `Binary` (`Name` CHAR(72) NOT NULL, `Data` OBJECT NOT NULL PRIMARY KEY `Name`)");
2627 res =
run_query(hdb,
record,
"INSERT INTO `Binary` (`Name`, `Data`) VALUES ('custom.dll', ?)");
2634 INT version,
INT wordcount,
const char *
template,
const char *packagecode)
2649 for (
j = 0;
j < num_tables;
j++)
2682 skip(
"process is limited\n");
2703 "Expected ERROR_PATH_NOT_FOUND, got %d\n",
r);
2712 skip(
"Not enough rights to perform tests\n");
2737 ok(
num == 314,
"Expected 314, got %lu\n",
num);
2876 skip(
"Not enough rights to perform tests\n");
2925 query =
"SELECT * FROM `Media`";
2934 ok(
check_record(rec, 2,
"LastSequence"),
"wrong column label\n");
2965 static CHAR cab_context[] =
"test%d.cab";
2978 ok(hfci !=
NULL,
"Failed to create an FCI context\n");
2981 ok(
res,
"Failed to add file maximus\n");
2984 ok(
res,
"Failed to add file augustus\n");
2987 ok(
res,
"Failed to add file tiberius\n");
2990 ok(
res,
"Failed to flush the cabinet\n");
2993 ok(
res,
"Failed to destroy the cabinet\n");
3027 skip(
"process is limited\n");
3039 skip(
"Not enough rights to perform tests\n");
3062 skip(
"Not enough rights to perform tests\n");
3088 skip(
"Not enough rights to perform tests\n");
3104 ok(
MoveFileA(
"test2.cab",
"test2_.cab"),
"Cannot rename test2.cab to test2_.cab\n");
3112 skip(
"Not enough rights to perform tests\n");
3148 skip(
"Not enough rights to perform tests\n");
3220 skip(
"process is limited\n");
3238 skip(
"Not enough rights to perform tests\n");
3305 ok(!
delete_pf(
"msitest\\maximus",
TRUE),
"UI install occurred, but execute-only was requested.\n");
3340 skip(
"process is limited\n");
3364 skip(
"Not enough rights to perform tests\n");
3389 skip(
"process is limited\n");
3416 skip(
"Not enough rights to perform tests\n");
3428 ok(!
memcmp(
buf,
"maximus",
sizeof(
"maximus")-1 ),
"Expected file to be overwritten, got '%s'\n",
buf);
3446 skip(
"process is limited\n");
3459 skip(
"Not enough rights to perform tests\n");
3479 skip(
"process is limited\n");
3500 skip(
"Not enough rights to perform tests\n");
3588 "{7DF88A48-996F-4EC8-A022-BF956F9B2CBB}1.1.1;"
3589 "{7DF88A48-996F-4EC8-A022-BF956F9B2CBB}1.1.1;"
3590 "{4C0EAA15-0264-4E5A-8758-609EF142B92D}");
3621 query =
"INSERT INTO `Property` ( `Property`, `Value` ) VALUES ( 'prop', 'val' )";
3641static const WCHAR name1[] = { 0x4840, 0x3f3f, 0x4577, 0x446c, 0x3b6a, 0x45e4, 0x4824, 0 };
3642static const WCHAR name2[] = { 0x4840, 0x3f3f, 0x4577, 0x446c, 0x3e6a, 0x44b2, 0x482f, 0 };
3643static const WCHAR name3[] = { 0x4840, 0x4559, 0x44f2, 0x4568, 0x4737, 0 };
3657 0x0201, 0x0001, 0x0002,
3660static const struct {
3680 const CLSID CLSID_MsiTransform = { 0xc1082,0,0,{0xc0,0,0,0,0,0,0,0x46}};
3685 ok(
r ==
S_OK,
"failed to create storage\n");
3689 r = IStorage_SetClass(stg, &CLSID_MsiTransform);
3690 ok(
r ==
S_OK,
"failed to set storage type\n");
3698 ok(0,
"failed to create stream %#lx\n",
r);
3705 ok(0,
"failed to write stream\n");
3706 IStream_Release(stm);
3709 IStorage_Release(stg);
3720 skip(
"process is limited\n");
3734 skip(
"Not enough rights to perform tests\n");