Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

994 lines
57 KiB

Darwin Setup Development Notes for Testing Releases
01-09-14 cnapier WinSE Bug 21522 (Bug 397957): Wireless QFE. Run from a temp copy of a patch to handle
media/network issues
01-09-14 cnapier WinSE Bug 21523 (Bug 452314): Wireless QFE. Run from a temp copy of a transform to handle
network issues
01-08-09 rahulth Bug 453276: Windows Installer crashes when applying an Office patch.
msiregmv.exe strips the last null terminator from REG_MULTI_SZ values during
migration. To fix this, msi was made more robust by padding any read REG_MULTI_SZ
values with 2 terminating nulls to be safe.
01-08-08 chetanp Bug 452635: MsiProvideAssembly sometimes returns ERROR_MORE_DATA even if no buffer is passed in
01-08-08 cgouge Bug 452101: Eliminate random failure in action APIs where generated action cookie has 0
in the first byte.
01-07-31 chetanp Bug 447897: MsiCollectUserInfo broken on Win9x
01-08-01 cgouge Bug 437248: MSI will no longer implicitly clean up the HKLM\RunOnce key if a component
removes the last value.
01-07-27 cnapier Bug 446200: MsiAdvertiseScript fails on Win2K ADE due to RunningAsLocalSystem check.
RunningAsLocalSystem check is not performed when a registry handle is provided to
perform the fake advertise.
01-07-27 rahulth Bug 442681 : Instmsi fails on system with Intel 82815 Graphics controller.
This was caused by igfxtray.exe and hkcmd.exe holding on to handles to the MSI
service. Solution was to nuke these processes.
01-07-24 cnapier Build 250 of msi.chm, msi.chi
01-07-24 cnapier Bug 441847 - Allow use of /L+, /L!, /L+!, /L!+ option for logging from command line.
This was supported in 1.0/1.1 Darwin.
01-07-20 weiruc Bug 440303 - Validation: AdvtExecuteSequence table must contain PublishFeatures
and PublishProduct actions
01-07-20 cgouge Bugs 438366, 438408, 438723. Remove memory leak, crash, UI issue from Orca.
01-07-20 cnapier Bug 440505: MsiZap doesn't clean up HKCU advertise info on Win9X
01-07-19 rahulth Fixed the following bugs:
Bug 433271 : setup.exe and msistuff.exe source should be published to PSDK.
Bug 438445 : New file schema.log should be listed in Readme.txt file.
Also made the following SDK changes:
- Removed Beta/RC1/RC2 references.
- Updated product and package codes for various released MSIs for the SDK RTM release.
01-07-18 cnapier Bug 436419 - fix Patch management code to handle cases where transforms have updates
for missing rows (like BizTalk SP1 patch when applied to standard edition)
01-07-18 chetanp Bug 438764 - MsiGetComponentPAthA fns failing on assembly components
01-07-17 weiruc Fixed bug 437312 - validation should warn about missing UpgradeCode.
01-07-17 rahulth Fixed the following issues in the internet download sample setup.exe.
Bug 217629 : Handle minor upgrades and patches.
Bug 402643 : Check signature on Instmsi.exe after it is downloaded.
Bug 185987 : Add the ability to perform admin install using downloaded setup.exe
01-07-16 chetanp Bug 435087 - add verbose logging to indicate exact assembly installation error
01-07-13 rahulth Bug 432407 : 32-bit clients on IA64 looked for files in the wrong
folder during costfinalize because the translation of paths was not
being done, i.e. system32 was not getting translated to syswow64
in certain code paths.
01-07-11 cgouge Bug 431025: Transitive components added by a patch but conditionalized out now have
request states of local with action states NULL to ensure that they are registered
for the product (to prevent later ops from dropping the feature to advertise).
01-07-06 cgouge 146505 - add row dialog in orca now supports larger number of columns in the table.
01-07-06 cgouge 422160 Orca validation pane support
01-07-05 cgouge 54019 - added manifest and SXS support to mergemod
01-07-05 cgouge 427458 added scroll bar to cell error dialog description field.
01-07-05 cgouge 431025 minor header file tweak to mergemod.h
01-07-05 rahulth 416074 : Prevent explorer AV while running instmsi.exe on Win2K with buggy IE5.5 mshtml.dll
424877 : Prevent windows installer hangs in SHChangeNotify.
01-07-03 cgouge 419705 - external UI can now resolve source in quiet mode by using the new
INSTALLUILEVEL_SOURCERESONLY flag in MsiSetInternalUI
01-07-02 eugend Bug 332443 - revisited: on 64bit machines, MsiZap lowers SharedDll counts
when info about a specific product is removed.
Bug 287593: MsiZap deletes now cached databases, patches & transforms
that are orphaned = not referenced in the registry.
01-06-30 mattwe Bug 146598: sdk command line tools don't fail when run from directories
containing hyphens
01-06-27 cnapier Bug 399793. Added wilogutl.exe (from nmanis in PSS) to MSI SDK. This
is a logfile viewer utility to help "decrypt" WI logfiles.
01-06-26 cnapier Bug 341831, 355521, 355522, 355530. Various PatchWiz bug fixes.
01-06-22 cgouge Bug 413579, 413598. Two stress failures in WBEM stress, optimized CApiConvertString usage.
01-06-22 cnapier Bug 417993. Fix localization problem in JPN language (msijpn.res)
01-06-22 cnapier Bug 418074. Do not clear InstallSource property when applying a patch.
01-06-14 weiruc new ICE94 and ICE95 to fix bugs 146359 and 194100. Updated ICE68 to fix bug 199901
01-06-06 chetanp Bug 409400 - User can view and delete folders on the system without logging on
01-06-15 cnapier Bug 302199. Unfriendly error message from web download bootstrap when MsiInstallProduct
returns failure -- fix to use error message in msi.dll
01-06-15 cnapier Bug 417540. Instmsi.msi is not stamped with all of the languages that it supports in the
template summary information stream. Fixed by adding msiinfo.exe to %sdxroot%\tools\x86.
01-06-14 weiruc bug 146530, 257560, 258284, 276240
01-05-30 chetanp Bug 415414 MSI 2.0 fails on Win9X - fix use of lstrcmpw on Win9x
01-06-14 mattwe Bug 414174: Network installs from cabinets get clobbered when
overwriting files on NTFS drives
01-06-12 eugend Bug 412195: Maintenance mode runs now properly with full UI for
Localization Studio.
01-06-12 cgouge Bug 413105: Crash in MsiProvideComponentW when passing NULL as lpPathBuf and pcchPathBuf.
01-06-12 mattwe Bug 393428: Prevent custom actions from allocating gobs of memory when passing NULL as buffer
but large size value.
01-06-09 cnapier Bug 410205: ApplyAppcompatTransforms handles product key changes (from either multi-language transform
or major update patch) for the ApplyPoint=2 call.
01-06-07 weiruc bug 146293, 146367, 146385 checked in.
01-06-07 cgouge Bug 407990: reduce CAPIConvertString default buffer size to reduce stack usage in
common APIs which were causing faults.
01-06-07 cnapier Bugs 404595, 404597. Complete the patchwiz.dll error list and make sure that patchwiz errors
are written to the log file.
01-06-05 eugend Bug 332443 revisited: I've fixed the Win64 problem where 32-bit MsiZap.exe was not
able to remove redirected 64-bit registry keys.
01-05-30 chetanp Bug 399165: enable installations via ui custom action
01-06-01 cnapier Bug 406294: Quiet mode always used when making AppHelp calls in the service.
01-06-01 cgouge Bug 405016. Enabled appcompat shimming of self-reg.
01-05-31 cnapier Bug 404892: AppHelp message shown twice when running install with full or reduced UI. AppHelp message
is now only shown once (and on the client)
01-05-30 chetanp Bug 389384: mscoree.dll issue during .net bootstrapping
01-05-30 cgouge Bug 410505. MsiViewModify with VALIDATE flags now sets error character array based on column in
view, not column in table. This prevents MsiViewGetError from trying to dereference column
names with indexes beyond the view size, which crashed.
01-05-30 cgouge Bug: 403099 - transform display issues in orca
01-05-30 cnapier Build 244 of msi.chm, msi.chi
01-05-30 cnapier Bug 404910: PatchWiz no longer uses MessageBox in CHK builds to enable automation. Instead
it uses OutputDebugString
01-05-30 cnapier Bug 404599: PatchWiz + msimsp.exe can concatenate log files.
01-05-30 cnapier Bug 153689: PatchWiz, DiskId, FileSequenceStart, and MediaSrcProp are no longer required in
the ImageFamilies table (i.e. can be NULL) when creating a patch that targets Installer 2.0
or greater
01-05-25 eugend Bug 332443: MsiZap is now Win64 aware, i.e. all builds work properly on Win64
and lowers SharedDLL refcounts in both 64 and 32-bit hives.
01-05-24 rahulth Changed the name of the .pdb for the downlevel msi.dll from msi.pdb to msi_l.pdb. This
allows the postbuild script for debuggers to pick up the pdb for indexing and have a signature
that is different from that of the symbol file for the whistler version of msi.dll (see
change 57919 in the root depot for the postbuild change for picking up the downlevel pdb
for indexing the symbols).
01-05-24 rahulth Bug 300071: Prevent Shared dll ref. count from getting decremented twice on x86.
01-05-24 chetanp Bug 400332: Handle various cases of the "Name" valuename for Assembly names in MsiAssemblyName table
01-05-23 cnapier Build 243 of msi.chm, msi.chi
01-05-23 cnapier Bug 340023: PatchWiz returns ERROR_PCW_TARGET_IMAGE_NAME_TOO_LONG instead of ERROR_PCW_BAD_TARGET_IMAGE_NAME
when the TargetImages.Target column value exceeds the maximum allowed length.
01-05-23 cgouge Bug: 146373 - mergemod now has support for merging modules into databases where the schemas
are compatible but not exactly the same.
01-05-22 cnapier Integrate Lab04 into MsiDev private branch.
01-05-17 mattwe Bug 396116: Fixed token privilege leak when creating folders with lockpermissions
01-05-17 cgouge Bug 385954. Orca can now view 2.0 patches by creating the correct patch
table schema if it doesn't already exist.
01-05-17 cnapier Bug 268351: Increase subfolder buffer in PatchWiz to prevent stack corruption
01-05-17 cnapier Bug 165265: Improved compressed image error in PatchWiz
01-05-17 cnapier Bug 204707: Improved patchwiz performance by using a patch cache
01-05-17 cnapier Bug 159892: WiFilVer.vbs supports MsiFileHash functionality.
01-05-17 cnapier Bug 313094: MsiZap removes cached patches and cleans up patch data
01-05-17 cnapier Bug 355848: MsiZap misses some things if package is installed by non-admin user
01-05-17 cnapier Bug 396491: 2330 debug error when uninstalling with a folder (created by CreateFolder table)
help open in cmd prompt or explorer
01-05-16 cgouge Bug 396511: remove crash when logging that cached database can't be deleted.
01-05-16 eugend Bug 395227: Fixed cabinet extraction code as not to fail when it extracts
assemblies on Win64 machines.
01-05-15 cnapier Bug 150879. Fixed Simple.msi's DiskPrompt property.
01-05-15 cnapier Bug 169843: Fixed Testdb.msi's VBScript custom action (incorrectly referenced Application when it should
have referenced Installer)
01-05-14 cgouge Bug 389812. problems with extra columns in orca when a transform is being edited.
01-05-14 mattwe Bug 393692: Fixed memcmp after memory freed - really old bug in LookupSid for LockPermissions
01-05-13 cgouge Bug 357608. orca now HOLDs tables in memory to prevent OLE failures on repeated row adds.
01-05-11 cnapier Bug 316651: Web download bootstrap asks user if they want to upgrade the Installer version prior to
running instmsi
01-05-11 cnapier Bug 323663: Fixed failure to create patch with patchwiz when .PCP file was read-only
01-05-11 cnapier Bug 381067: Fixed MsiFiler to update file hash for unversioned files with companion file versions.
01-05-11 cnapier Bug 388207: Updated CHT error strings.
01-05-11 cnapier Bug 388944: On the fly new schema patch table only created when a patch will be applied (instead of
all of the time)
01-05-11 cnapier Bug 389496: Updated CAT action text and error strings.
01-05-11 cnapier Bug 390641: We now handle bogus minor update multi-target patches without product version validation
01-05-11 cnapier Bug 390984: We output the HRESULT from the failed IComAdminCatalog::InstallApplication call in
RegisterComPlus action to the log file via an info message.
01-05-11 cnapier Bug 391096: Removed private and unused properties from wilstprd.vbs
01-05-11 cnapier Bug 392192: Fixed msizap to not delete files and folders when adjusting ACLs
01-05-08 eugend Bug 386114: Calling MsiAdvertiseScript from a 32-bit service on 64-bit machine doesn't fail anymore.
01-05-11 chetanp Bug 385303: APPCOMPAT bug regarding winway.fon and crash in version.dll
01-05-07 cgouge Bug 387418. timing issue with non-admin deferred elevated custom action servers being
denied access to the synchronization event.
01-05-04 mattwe Bug 356798. Security descriptors from existing files are now correctly applied when overwritten from cabinets.
01-05-04 chetanp Bug 370483: remove attempt to fix start menu mess up on WINME korean when running darwin packages
01-05-04 cgouge Bug 385955. Watch log dialog in Orca truncates text at a certain length.
01-05-04 cgouge Bug 385601. Fixed Orca hang when extracting from mergemod CABs that span a CAB set.
01-05-04 cnapier Bug 381320: Fixed patchwiz to create patches and fixed the Installer to handle old schema and new schema
Patch tables. Because of the FTK fix, the change in the nullability of the Header column causes problems
when applying a transform if the old schema (where the column can't be null) is used first. This is because
a patch with the FTK limit issue has this column as null and uses the StreamRef_ column to reference the
MsiPatchHeaders table. To fix this, the Patch table is dropped and created automatically with the new
schema before application of any patches or transforms. This guarantees that the new schema always wins which
is compatible with old and new patches.
01-05-04 cnapier Bug 155046: Remaining languages -- EUQ, SLV, SKY, HRV, ROM, and CAT. Note that CAT's Error table is not
completely localized.
01-05-04 rahulth Bug 376181 : Grabbed a new version (5.0.2147.1) of cabinet.dll for downlevel platforms
(NT4 and Win9X). This not only ensures version parity for cabinet.dll with newer platforms
like Win2K but also fixes installation problems caused by the old cabinet.dll's inability
to handle varying sizes in the reserved fields of the cabs.
01-05-04 rahulth Bug 383958 : Instmsi no longer pops up any message boxes if it is invoked in quiet mode.
(caveat: unicode instmsi on Win95 Gold will cause the system to pop up a message box
about setupapi.dll missing.)
01-05-02 chetanp Bug 338432: Fixed feature caching logic to dump stale caching across installations
01-05-01 cnapier Bug 363989: AppCompat fix for minor update multi-target patches with bogus validation flags (product version
check is specified but no corresponding comparison flag is specified). The fix is similar to our fix for small
update patches -- we'll apply the first set of transforms and then skip remaining transforms. Also fixed patchwiz
to no longer create patches that specify these bogus validation flags.
01-05-01 chetanp Bug 370483: Fix start menu mess up on WINME korean when running darwin packages
01-05-01 cnapier Bug 155046. Drop of 29 (of 35) localized languages for Windows XP. Includes updated ActionText, Error, resource
files and instXXXX.msi files (for instmsi.exe language transforms). Updated languages are: ARA, CHS, CHT, DEU,
HEB, JPN, KOR, THA, VIT, CSY, ELL, ITA, PTB, RUS, PTG, DAN, ESN, FIN, ENU, FRA, HUN, NLD, PLK, SVE, TRK, NOR. New
languages are: ETI (estonian), LTH (lithuanian), LVI (latvian).
01-05-01 cnapier Bug 356192. Fix msi assert msiutil.cpp -- unable to delete file due to sharing violation. Added
retry loop with sleep.
01-05-01 cnapier Bug 373864. Can now import CHT, JPN, CHS, and KOR IDT files (IDT files with DBCS char).
01-05-01 cnapier Bug 349328. Remove obsolete ApiPatchingOption flags from template.pcp
01-05-01 cnapier Bug 373304. Fix confirmation message in msizap to be more polite.
01-05-01 cnapier Bug 381702. Fix buffer overrun in PatchIDToSourceProp
01-05-01 cnapier Bug 372166: Preserve ERROR_MORE_DATA return by a custom action
01-05-01 cnapier Bug 373210: Preserve icon specification in MsiProcessMessage, defaults only used when icon
is not specified
01-05-01 cnapier Bug 373009: User cancelled install actually cancels.
01-05-01 cnapier Build 240 of msi.chm, msi.chi
01-04-30 rahulth Picked up a newer version of rich edit(5.30.23.1205).
01-04-30 mattwe Bug 370215: Client side caching of database running as LocalSystem no longer
receives security descriptors - this matches behavior of any other user.
01-04-30 cgouge Bug 323874: initial checkin for appcompat hook support in MSI custom actions.
01-04-29 chetanp Bug 368867: Help files are uninstalled with the SAPI SDK after upgrade from downlevel OS
01-04-29 chetanp Bug 367320: On WIN9x, avoid call to IsImpersonating function
01-04-29 chetanp Bug 343336: Buffer overflow in OpenAdvertizedSubkeyPacked
01-04-29 chetanp Bug 367755: send message to shell to refresh when we create and delete admin tolls folder
01-04-27 mattwe Bug 370485: Environment variables in the service are refreshed with each new install
_MSI_TEST test flags are also requeried.
01-04-27 cgouge Bug 370482: deferred elevated custom action server would not launch when
client is on a non-console session on Win2K.
01-04-27 chetanp Bug 375995: Add Codebase hint for private assembly COM classic interop
01-04-27 weiruc Validation bugs checked in in change list 29739: 146438, 289920, 290601, 304111, 320934, 353603.
01-04-27 cgouge Bug 367251: Remove Orca text limit in editing cell.
01-04-27 cgouge Bug 377568: remove hang when pasting row with null binary data.
01-04-27 eugend Bug 356767: I've fixed up instances in the code where due to an incorrect value
returned by GetLastError() we took either incorrect decisions or we've returned
wrong values.
01-04-25 mattwe Fixed RI blocker in instmsi.mak. Make files should use "CD" not "CD /D"
01-04-24 rahulth Fix for bug 376037 : Assert in oleaut32 about freeing unallocated memory.
01-04-18 rahulth Fixed the following bugs:
360257 : Instmsi should pick up real appcompat binaries.
369896 : DllCache is not being updated when instmsi runs on Win2K.
346279 : Instmsi should run msiregmv.exe deferred but elevated.
01-04-18 mattwe Bug 366273: Long DBCS product names on Windows Me cause crash after setting system
restore checkpoint.
01-04-18 eugend Bug 357718: If we cannot retrieve CRC checksums for a file, we display now the ship
error that fits in that context. Beforehand we've displayed a silly internal error.
01-04-18 cgouge Bug 370673: No crash on multiple search dialogs in Orca
01-04-18 cnapier Bug 349328: Removed ApiPatchingOption flags from Properties table of example.pcp file included
with the SDK. This is an obsolete property.
01-04-18 cnapier Bug 180824: Fixed msizap to include admin full control when adjusting ACLs for files and folders.
Formerly it would replace all ACLs with admin full control, thus ACLing out Local_System, etc.
01-04-18 cnapier Bug 301218: Fixed msifiler.exe and wifilver.vbs to properly handle companion files. Formerly it
would overwrite the companion file information in the Version column of the File table.
01-04-18 cnapier Checked in build #238 of msi.chm, msi.chi
01-04-18 cgouge Bug 313836: Orca can now view integer columns in Hex
01-04-13 chetanp Bug 342421: we now honour clients across assignment types (user + machine installations)
To do this correctly, we need to clean up HKCR information on platforms Win2k and above
in the scenarios where the last client for that component in a particular context is being
removed (last per user client going away, should take away the HKCU\S\C info, since the per machine
client would have written to HKLM\S\C. Hence needed to introduce 2 new iisEnum action states -
iisHKCRAbsent= 11 (only HKCR data to be removed), iisHKCRFileAbsent = 12 (HKCR + Files to be removed)
01-04-13 chetanp Bug 357314: fix assert when extracting empty custom action from binary table
01-04-12 mattwe Bug 356798: Files installed from cabinets now get permissions set with LockPermissions
01-04-12 mattwe Bug 355997: Fixed last error clobber in lock permissions code. Fixes error
message reporting when failing to look up user.
01-04-12 cnapier Bug 367212: fixed AV in IsolateComponents action.
01-04-12 mattwe Removed assert when System Restore is frozen - BVT fix.
01-04-12 bench Bug 365593: fixed assert in Engine.Initialize when passed in an invalid command-line
01-04-12 bench Bug 366732: we now use the public shimdb.h instead of a private version.
01-04-10 cnapier Bug 268360: Patches can now be created when the file table key is long, causing
us to hit the OLE stream name limitation. Patchwiz and Msi now handle this by
using a MsiPatchHeaders table that maps a row in the Patch table to the patch
header stream. A patch containing a populated MsiPatchHeaders table can only
be applied with Windows Installer version 2.0 or greater. Patchwiz only creates
this table if it has to.
01-04-10 cnapier Checked in build #236 of msi.chm, msi.chi
01-04-09 weiruc Fix bug 300071, LowerSharedDLLRefCount now handles 64 and
32 bit paths correctly.
01-04-09 eugend Bug 357718: CRC checking displays now errors also for files whose checksums
it cannot get.
01-04-09 eugend Bug 359082: ScrollableText control displays now text that's over the 32K characters limit.
01-04-09 cgouge Bug 359886: Watch Merge Log option unsupported on 9x.
01-04-09 cgouge Bug 355665: Orca validation error when no CUB file selected.
01-04-09 cgouge Bug 359879: temp CAB file is now deleted by mergemod on Win9X.
01-04-06 bench Bug 345536: changed the text for error 2735.
01-04-06 bench Bug 356951: fixed assert during major upgrade patch. The assert was pointing out that we
were orphaning cached .msi files.
01-04-06 bench Bug 359878: fixed AV when installing a patch that updated some files which were also duplicated
in the DuplicateFiles action.
01-04-05 rahulth Bug 263973: fixed the TLS slot leak. We used to allocate the TLS slot g_dwImpersonationSlot
only once in msi.dll and then hold on to it as long as the dll was loaded. However we had
forgotten to free the slot when the dll is unloaded. Therefore, any process that loaded and
unloaded msi.dll would leak a TLS slot per load-unload.
01-04-03 eugend Bug 357028: fixed AV caused in the client by missing Directory table.
01-03-29 bench Bug 292811: added support for disallowing installs that have application compatibility
issues on Whistler (assuming that's ok with the user).
01-03-29 chetanp Bug 180771: converted debug assembly errors to ship
01-03-29 rahulth Bug: 341111. Fixed the problem where we were getting a "The specified service
has been marked for deletion" popup after running instmsi on Win2K.
Bug: 284005. Fixed icon registration for msi files in the 32-bit hive on IA64 machines.
01-03-29 rahulth Bug: 339688. Fixed the custom action failures for non-admin users on NT4.
The cause of the problem was that advapi32!GetSecurityInfo does not like
pseudo handles on NT4.0. This was causing the custom action server to fail
when it tried to set the synchronize rights for non-admin users. The fix involves
passing in a real handle to the process rather than a pseudo handle.
01-03-29 cnapier Bug 353248: Return ERROR_DISK_FULL when out of disk space while attempting to cache
the msi package temporarily. If running with the UI, we give the user the option
to retry or cancel.
01-03-29 mattwe Bug 347901: We now ref-count our use of the Security token privilege (SE_SECURITY_NAME).
This allows us to set/unset the privilege in winlogon for reading file security off
existing shortcuts and re-apply it without being in the service.
01-03-29 mattwe Bug 316661: orca.msi and msival2.msi in the flat file tree for the SDK now have their cabs.
01-03-29 bench Bug 339781: allow multi-target, small update patches to apply with 1.5
01-03-28 cnapier Build 233 of msi.chm and msi.chi is available
01-03-28 cnapier Bug 279840: enforce running as local_system for calls to MsiAdvertiseScript
01-03-28 chetanp Bug 350947: appcompat fix for speech package on Whistler
01-03-28 chetanp Bug 351640: backprop WIN2K SP bug 13441
01-03-28 eugend Bug 302675 revisited: we swap now only the C:\Windows\Syswow64 into C:\Windows\System32
(on Win64, when we write data into the 32-bit SharedDll - this is for 32-bit components).
01-03-28 bench Bug 148734: when a debug error occurs, the log will contain the full-text of the debug error, rather
than just the generic string with the error parameters. As part of this fix, we now store all of our
debug error strings in the ship msi.dll (as global strings in the code).
01-03-27 chetanp Bug 282068: Fix uninstall key cleanup
01-03-27 chetanp Bug 350743: Fix admin install involving assemblies
01-03-26 eugend Bug 331291: Assert will not fire now when source resolution encounters a drive that
does not support long file names.
01-03-23 mattwe Bug 335467: Msi.Dll in InstMsi redist is rebased to Windows 2000 location.
01-03-23 mattwe Bug 346820: Updating autoexec.bat with brand new path variable adds garbaged
01-03-22 cnapier Bug 343570: Msi is now version 2.0! (formerly 1.5)
01-03-22 cnapier Bug 346569: Script custom actions from DoAction control events were never executed if no
other custom actions had run in the InstallUISequence. This is now fixed.
01-03-22 cnapier Bug 207348: Fixed Internal Validation to special case scrollable text controls in the Control
table. These are no longer validated as formatted text as they have their own format to
follow (RTF).
01-03-22 cnapier Bug 343671: FilesInUse dialog did not appear when uninstalling Office XP with WinWord.exe running.
01-03-21 bench Bug 347830: fixed AV in appcompat code caused by incorrect header file.
01-03-20 chetanp Bug 288515: fix bug that looks for SPF key files only in the system32 folder. We now check for
SFP for all locatoins.
01-03-21 bench Bugs 347762, 347773: fix logging for appcompat matching, and fixed bug when appcompat XML
contains no optional data.
01-03-20 eugend Bug 218473: HideTarget custom action option flag doesn't trash anymore the
Target and CustomActionData script fields.
01-03-20 chetanp Bug 343749: fix code bug that prevented removal of feature registration for disabled features
01-03-19 eugend Bug 311545: For files in use I've eliminated redundant data the service was
sending to the client and this will prevent the service from reaching the
limit of 255 fields in a record that could cause nowadays the client to display
empty listboxes in FilesInUse dialog.
01-03-19 eugend Bug 302641: Darwin doesn't hang anymore when it sends ignore commands to FDIServer
and keeps getting back the same response.
01-03-19 chetanp Bug 343342: fixed extra null termination when creating inprogress strings
01-03-16 bench Bug 207675: validation no longer requires Media.Cabinet to contain an SFN name.
01-03-16 bench Bug 158817: fix appcompat problem with Streets & Trips and MapPoint 2001.
01-03-16 chetanp Bug 317061: fixed writing registry entries for never overwrite reg component
01-03-15 cgouge Bug 344675: fix validation errors in mergemod.msm
01-03-15 cnapier Bug 343881: fixed duplicate accelerator keys on UISample's MaintenanceTypeDlg dialog.
01-03-15 cgouge Bug 343278: leaked handle in mergemod on bad configurable MSM.
01-03-15 cgouge Bug 343854: Fixed image extraction command line in orca.
01-03-14 cgouge Bug 146405: Fixed problem with mergemod extraction on 9X when using "-x .".
01-03-14 bench Bugs 283833, 303917, 303923: MSI+AppCompat:
added more package matching support, more flexible application options, and added
downlevel client support.
01-03-13 rahulth Bug 146318: InstMsi now creates a MIF file if the SMS client
is installed on the system.
01-03-13 cnapier Bug 146277: Added COM+ costing. Private assemblies are costed the same way as files.
Cost of global assemblies is attributed to the Windows folder volume (location of GAC).
01-03-13 rahulth Bug 337684 : SDB Api dlls are now placed in the system folder
rather than the apppatch folder.
01-03-13 cgouge Bug 146514: mergemod CAs are not generated for orphaned directory table rows.
01-03-13 cgouge Bug 339371: Fixed problem with file extraction from mergemod on Win9X.
01-03-12 rahulth Bug 325070: Ensure we don't overwrite a newer sdb with instmsi.
01-03-12 bench Bug 189654: appcompat fix for package with null source root property name.
01-03-11 chetanp Bug 318317: allow bootstrapping of URT assembly installations. We now allow for the core
assembly installation files to be placed (by a CA) in a temp but secure location (URTTemp
under system32). We fall back to looking for the core URT dlls in that location if not found
in the "regular" location
01-03-08 RahulTh Added new msi.chi and msi.chm files.
Also fixed the following bugs:
179330 : InstMsi always returns ERROR_SUCCESS_REBOOT_REQUIRED on NT systems.
272003 : Handle migration of WinXP Installer Binaries on upgrades from NT4 to Win2K
337684 : InstMsi.exe should contain sdbapi.dll and msimain.sdb
179206 : Add the UI level property msiUILevelHideCancel for the installer automation
object. Had missed this in previous checkin for the fix for 179206
01-03-08 eugend Bug 335918: On Win64, 32-bit msiexec.exe registers now the automation handler
in the 32-bit registry hive.
01-03-08 eugend Bugs 317008 & 317009: On Win64, for 32-bit packages, AppSearch will operate on the proper
32-bit paths & shortcuts' WkDir will get corrected on the fly to 32-bit paths.
01-03-08 cgouge Bug 331309: Orca: if a merge module is not configurable, we don't throw up an empty
configuration dialog.
01-03-08 eugend Bug 331618: Fixed alignment faults in TRANSFRM.CPP
01-03-07 mattwe Bug 151680: Token privileges for Restore and Take Ownership are now enabled as necessary
via the CRefCountedTokenPrivileges privs(itkpSD_WRITE) automatic variable addition.
This is necessary before applying security that includes owner information.
01-03-07 mattwe Bug 337688: Updating security on shortcuts needed elevation
01-03-07 cgouge Bug 292429: missing else clause of condition in QI call of ConfigurableItem implemenation
was causing collection query for each item to return E_UNEXPECTED when marshaling item
interface to remote machine.
01-03-06 cgouge Bug 146423: mergemod now correctly fixes up file sequence numbers when passed a database
by handle.
01-03-05 chetanp Bug 330733: fix sxs assembly sharing
01-03-05 chetanp Bug 332434: fix sxs assembly installations
01-03-02 bench Bug 326524: we now perform the necessary 64-bit to 32-bit folder mapping for 32-bit packages
in SetTargetPath (type 35 CAs).
01-03-02 cnapier Bug 318875. Updated fix in registry cost adjuster to include times when component is also
installed RFS.
01-03-01 cnapier Bugs 182012, 318875. Various ARP estimated size fixes.
01-03-01 cnapier Bug 313359: disable messages from script custom actions in the UI thread (DoAction control event
invocation)
01-03-01 cgouge Bug 318991: 64bit MSM story.
01-03-01 cgouge Bug 331307: Orca could not set NULL into a nullable integer column, it would convert to 0.
01-03-01 eugend Bug 146389: On Win64, for components that install into the 64-bit c:\windows\system32
folder we now refcount the keyfile when the component does not have the
msidbComponentAttributesSharedDllRefCount bit set in its Attributes field.
01-02-28 eugend Bug 268610: MsiEnumComponentCosts skips disabled components now.
01-02-28 cgouge Bug 287024: non-admins can no longer uninstall a per-machine managed app unless it is
during an upgrade to another managed per-machine application.
01-02-28 eugend Bug 299218: I've corrected the functionality of MsiGetComponentPath on Win9x
so that the assert doesn't fire anymore.
01-02-28 bench Bug 320839: we now retain the acl's on shortcuts that we overwrite
01-02-28 eugend Bug 302675: On Win64 we write now 64-bit like paths into the 32-bit SharedDLLs key,
just as any 32-bit legacy installer would do.
01-02-27 bench Bug 282294: prevent basic UI dialog during upgrade install
01-02-27 chetanp Bug 324175 - Absent Features not registered in multi-user scenario
01-02-26 bench Bug 152180: to workaround a change in behaviour in Whistler where RunOnce values
are not run by default as a non-admin, we now prepend our RunOnce values with a '!'
on Whistler only, which causes the shell to revert to Win2K behaviour.
01-02-26 bench Bug 260091: made a change to prevent INVALID_COMMAND_LINE error when passing properties
to service.
01-02-26 bench Bug 262580: we use the proper event id when logging an internal error in the event log.
01-02-26 bench Bug 263670: we now set the QFEUpgrade property whenever the "recache package" reinstallmode
is used, even if the PackageCode isn't changing. this enables minor upgrades in cases where
we can't tell the PackageCode is changing, as in Intellimirror deployments.
01-02-26 bench Bug 278200: re-worded ambiguous internal error for CRC checking.
01-02-26 bench Bug 304429: when performing a major upgrade patch, we check the per-user vs. per-machine
state of the product being upgraded and ensure that the new install follows the same state.
01-02-26 bench Bug 304472: fixed problem when patching an admin image as a non-user. we weren't elevating when
creating temp files in %windir%\installer.
01-02-26 cnapier Bugs 282835, 295342. Improved error messages for transforms and patches rejected by SAFER and
for attempting to install a package while running in SAFE mode on Whistler (our service doesn't
run in SAFE mode).
01-02-26 chetanp Bug 312906 - installing same assembly via 2 packages fails during second install.
01-02-26 chetanp Bug 295229 - Win32assembly installation failure on IA64
01-02-26 chetanp Bug 281738 - Allow fault in of Win32 assemblies via MsiProvideAssembly API
01-02-26 chetanp Bug 279284 - reboot action failure with assembly installation
01-02-26 chetanp Bug 232662 - design issues with fusion and minor upgrades. The resolution is to mandate that
the darwin component id remains the same for assemblies that have been patched for minor upgrades.
We will not uninstall the published assembly information and remove the old assembly, if the assembly
has changed.
01-02-22 eugend Bug 146251: Selected radio button controls have now their focus right after the user
jumps there from checkboxes disabled via ControlCondition table.
01-02-20 weiruc Fix bug 179620, 180518, 181671. Ship error code 1609 added.
01-02-19 mattwe Bug 315791: We now create system restore points for deployed/advertised apps.
01-02-19 mattwe Bug 188786: inprocserver entries for msi.dll are marked apartment threading model.
01-02-19 eugend Bugs 291277 & 231021: MsiAdvertiseProductEx sets Intel property correctly & MSICHECKCRCS
works correctly with source files that are split across several cabinets.
01-02-16 cgouge Bug 310484, added additional shutdown code to config manager to handle advertise script
CA Manager leak.
01-02-16 rahulth Integrate from VBL04. Also added admin\published\msi to the
private branch.
01-02-15 cnapier Build 230 of msi.chm, msi.chi is now available.
01-02-12 cnapier Bugs 207142, 249814: MsiZap requires admin privileges to run. MsiZap doesn't look like it is
rezapping entries when run twice in a row for the same product (UI improvement).
01-02-10 nadima Bug 302805 (related to 215380): removed instmsia.exe and instmsiw.exe. Terminal Server Client
needs them gone after all. CR by mattwe
01-02-10 cgouge Bug 305678. Eliminated potential crash if there is no previous record when unserializing
a NULL record.
01-02-08 mattwe Bug 215380: removed instmsia.exe and instmsiw.exe. Terminal Server Client
needs them gone after all. Will be checked in by NadimA.
01-02-08 cnapier Build 229 of msi.chm, msi.chi is now available. This is the first post-Beta 2 build.
01-02-08 cnapier Bug 284098: Product and package codes need to change for SDK packages (orca, msival2,
and msisdk) for RC1 SDK release
01-02-07 eugend Bug # 292411: We can rest assured now that 32-bit MSI.DLL looks for
Darwin's config data in the 64-bit registry hive, when run on Win64.
01-02-07 cnapier Bug 303015: LocalOnly component is not patched when its feature is RFS
01-02-07 cgouge Bug 254349: Second fix for more scenarios where the UI menu options were incorrectly enabled.
01-02-07 cgouge Bug 146377: Mergemod couldn't handle duplicate Directory CAs caused by multi-language modules.
01-02-06 cnapier Bug 304760: MsiOpenPackage[Ex] returns wrong error code when file is not found
01-02-06 cgouge Bug 275224: Orca no longer creates a no-name table on validation errors, and ICE03 now provides
a table name when complaining about missing _Validation entries.
01-02-05 cgouge Bug 167515: Orca extract CAB from mergemod now has ".cab" as the default extension.
01-02-05 cnapier Build 228 of msi.chm, msi.chi is now available. This is the official Beta 2 build of the docs.
01-02-05 cnapier Bug 303027: new feature is installed during minor upgrade if attributes include
DisallowUIAbsent and FollowParent
01-02-04 cgouge Bug 293622: Fixed problem with Orca where a new database would not save until after
the user visited the SummaryInfo dialog.
01-02-02 cnapier Bug 302971: Remove dead code in CMsiInifileCost::GetDynamicCost. No costing is done
on IniFiles (never has been done, even since Darwin 1.0). Code was simply commented
out in case we decide to perform inifile costing in the future.
01-02-02 cnapier Bug 288000, 288032. Orca and MsiVal2 no longer prompt for CD-Key during setup.
MsiVal2 now has license agreement text.
01-02-02 cgouge Bug 285411: added assembly information for Orca to use new common controls.
01-02-02 cgouge Bug 199842: persist "show info" option in Orca validation dialog.
01-02-02 rahulth Bug # 303966 : Fix AV in CSecurityDescription constructor when
invoked from CSharedCount::Initialize.
01-02-02 cgouge Bug 146364, 146366: Fix mergemod sequence merging issues when attempting to resequence an
action to a sequence number less than 0.
01-02-02 cgouge Bug 146364, 146366: Fix mergemod sequence merging issues when attempting to resequence an
action to a sequence number less than 0.
01-02-02 cnapier Bug 275805: Reading order of Hebrew and Arabic is wrong on mirrored dialogs (Windows 2000
and Whistler only). On a mirrored dialog, WS_EX_RTLREADING style does not need to be
applied since the mirroring performs this automatically.
01-02-02 cnapier Build 227 of msi.chm, msi.chi is now available.
01-02-01 rahulth Bug 179330 : Fix instmsi so that it does not always return
ERROR_SUCCESS_REBOOT_REQUIRED on NT platforms. Note: The fix
to the darwin sources uses a new option in the sed file which
won't start working until IExpress is modified to handle the
new option.
01-02-01 cnapier Bug 301070: Remove dead code for Digital Signature stuff
01-02-01 chetanp Bug 295229 Win32 Assembly installation were failing on ia64 machine. Cause - non IMsiData derived
interface pointerbeing stored in a table column
01-02-01 cgouge Bug 271080: HKCU remap not working during after reboot. We now reinitialize the key remap
state after loading the inprogress information.
01-02-01 cgouge Bug 271085: HKCU remap on TS machines not working during rollback. The TS-remap
attribute is now stored in the script header and changed if necessary when the header opcode
is read. This may involve restarting the elevated CA servers if the key-remap state changes.
01-01-31 cgouge Bug 288482: deferred custom action now correctly fails on 0 byte DLL from binary table. The failure
is ignorable if the icaContinue bit is used.
01-01-31 cgouge Bug 270225: installing from DBCS URL causes problems in volume object and source resolution.
01-01-31 cgouge Bug 299247: Fixed regression. CA writing to HKCU on TS machines now writes to .Default again.
01-01-31 rahulth Bugs: 126069, 179206, 276317
126069 : named shared section for feature cache created with incorrect ACLs.
179206 : Disable Cancel on InstMsi
276317 : Non-admin. users cannot install 32-bit apps. on IA64
01-01-31 cnapier Bug 273764: MsiAdvertiseProduct[Ex] only returns ERROR_CALL_NOT_IMPLEMENTED on Win9x and NT4
when trying to create a script. Per-machine and Per-user advertisements succeed.
01-01-29 bench Bug 239223: fixed appcompat problem with Corel Draw 10. this app was conditionalizing
out the InstallValidate action during uninstall. the fix was to move some code that was
added in 1.5 to InstallInitialize, which will never be conditioned.
01-01-29 bench Bugs 158817, 195574: checked in initial appcompat-transform integration infrastructure.
01-01-29 eugend Bug 208157: I've reduced the number of registry API calls from
MsiProvideComponent[FromDescriptor] APIs.
01-01-29 cnapier Bug 298516: MsiSip should not ignore digital signature streams of embedded substorages. Only
the digital signature stream of the base storage file should be ignored.
01-01-29 rahulth Bug 294166: Fix instmsi install on NT4 and hang during rollback of installations.
01-01-29 cnapier Bug 258218: Cabinet downloads from the web ignore suminfo compression marking and instead,
makes an assumption as to the source type.
01-01-29 cgouge Bug 292313: removed double critsec exit on failure in RemoteAPI thread. This was causing a hang in
the service while waiting on the critsec even though it wasn't owned by any threads.
01-01-25 weiruc Fixed bug 184647 and 146314. Added resource strings for
MUI shell friendly display name and shell verbs. Added
ICE80 that verifies that packages containing 64 bit
components and scripts have "Intel64" in their template
summary information stream and that their page count
is greater than or equal to 150.
01-01-25 rahulth Bug 285469 and bug 282032: Make NT4 SP6 the min. requirement and make instmsi
prompt for reboots on Win2K.
01-01-25 mattwe Bug 252300: Suspended installs now get correct system restore checkpoints.
01-01-25 bench Bug 292525: checked in a new private fusion.h to correspond to some changes being made
in fusion.dll.
01-01-25 mattwe Bug 252903: LimitSystemRestoreCheckpointing machine policy set to 1 disables calls to
system restore.
01-01-25 eugend Bug 291476: On Win64 MsiSourceListClearAll called from a 32-bit process looks now for
configuration data in the right spot in the registry (in the 64-bit hive).
01-01-25 cgouge Bug 271067: client with restricted token rights was failing to create CA due to a request
for too many access rights on the token while detecting enabled token privileges.
01-01-24 mattwe Bug 268319: System restore checkpoints will not be created when install is run with no UI.
This prevents checkpoints from being created during logon/logoff deployment.
01-01-24 mattwe Bug 249859: System restore checkpoints will not be created during admin installs (msiexec /a)
01-01-24 cnapier Bug 254547: Logitech Wingman 3.62 software no longer installs (due to
ComputeAccessTokenFromCodeAuthzLevel failing to return a primary token when supplied
an impersonated token marked inert)
01-01-24 bench Bug 281076: fix to enable having 3 binary patches applied to a single file at the same time.
01-01-24 bench Bug 285290: hashing now works properly with 0-byte files. previously a 0-byte file would always
mismatch with the hash in the .msi.
01-01-24 bench Bug 285313: when applying a patch containing a full-file, we would still resolve the original source
path, which may prompt for CD or network, even though the file is in a .msp file which isn't at that
source. this has been fixed.
01-01-24 cgouge Bug 278238: IA64, failure when registering typelib from 32bit CA server for RFS component. The
elevated CA servers can now impersonate the user using standard CImpersonate, etc.
01-01-24 eugend Bug 275768: Fixed an error in ...\src\msiexec\server.rc file.
01-01-24 cgouge Bug 275093: Improperly registering DBCS RFS path with some Kanji characters.
01-01-24 cgouge Bug 271872: MSI service now shuts down 10 minutes after the last connection to it is
destroyed.
01-01-18 cnapier Bug 287807: Non-admins could not install office 2002
01-01-19 cgouge Bug 283920: Mergemod not merging directory tables due to bad conditional statement.
01-01-19 mattwe Bug 254685: MSI+SR bug where we reported failure to create restore point when
system restore was simply disabled. See also 287584 for System restore return
code bug.
01-01-15 cnapier RI-Blocker bug 280623, bugs 280605, 280693, 280716, 280779. Problems with Safer -- Installer
interaction with app deployment. Basic gist was invocation of advertised product install via
product code was not properly applying Safer policy to the package (which wasn't cached at the
time)
01-01-12 bench Bug 258432: our check for writable drives has changed to creating a temp folder at the root
of the drive rather than a temp file. this was prompted by changes to the default ACLs on drives
in Whistler.
01-01-12 mattwe Bug 249859: System Restore integration with MSI now only writes checkpoints
for installing and uninstalling a product.
01-01-12 eugend Reverted previous changes:
Bug 221770: I've fixed MsiGetcomponentPath as not to look for components installed
by other users.
Bug 248662: I've reverted MsiGetProductCode to the way it was before my 00-12-14 checkin.
01-01-12 eugend Bug 269922: On Win64, 32-bit Darwin is able now to locate files in the
64-bit %windir%\System32 directory.
01-01-12 rahulth Bugs 254703, 272083: Fix theming problems which prevented
certain dialogs from showing up on Whistler. Make instmsi and
darwin 1.5 custom actions work on NT 4.0.
01-01-12 mattwe Bug 275994: Off by one error in setting restore point names crashed.
01-01-12 cgouge Bug 249790: changed error string for error 2762.
01-01-12 mattwe Bug 267121: instmsi.sed is re-generated when a full postbuild is re-run.
This fixes problems with localization builds.
01-01-11 cnapier bugs 277515, 277885: Msi files can now be digitally signed and include timestamps.
MsiGetFileSignatureInformation can now handle timestamped files.
01-01-11 cnapier bugs 172263, 224218, 224335: SDK bug fixes. MergeMod.cub now has all correct entries in
its _Validation table. DbReadme.txt and PReadme.txt are now installed in the DATABASE and
PATCHING folders to describe the contents (part of PSDK sample scrub).
01-01-11 cnapier bug 253489: Changed string for internal error (id 5 in Error table)
01-01-11 cnapier bug 146132: Support for transforms at URL sources.
01-01-11 cnapier bug 193684: ODBC DSNs are registered incorrectly on Win64. Elevated custom action servers
now remap HKCU. On Win2K and above for terminal server per-machine installs, HKCU is not
remapped and instead, remains HKCU\.Default
01-01-11 bench Bug 202751: fixed appcompat issue with embedded nested installs using compressed files.
Specifically this affected Commerce Server 2000.
01-01-11 cgouge Bug 151868: Mergemod extract files fails for second file on UNC path.
01-01-11 cgouge Bug 146587: Mergemod file extraction from CAB needed to convert file date/time to UTC
before setting time on disk.
01-01-11 cgouge Bug 254329: Disable patch UI when no document loaded in Orca.
01-01-11 cgouge Bug 254325: UI change for editing transforms in Orca.
01-01-11 cgouge Bug 247819: Scripts that create installer objects via CreateObject now have the creation
process hooked and passed to the service. This is primarily an appcompat fix for apps
that assume the script is running in-proc with the engine and thus objects can be
freely passed between the two.
01-01-10 cgouge Bug 195877: Added force commit option to orca command line.
01-01-10 cgouge Bug 225867: Invalid CA source on IA64 caused reboot due to error translation problem.
01-01-10 cgouge Bug 122597: AppCompat fix for packages with first DiskId not 1.
01-01-10 cgouge Bug 273472: Orca sometimes does not show rows after viewing a patch or transform.
00-01-10 cgouge Bug 273853: Remove blocking message in TS per-user install mode.
01-01-08 rahulth bug 272260: make instmsi exit more gracefully in case of errors.
Especially if it fails to register successfully from the temp.
store or if setupapi fails to install the files on Win2K.
01-01-03 chetanp bug 172602: fix when to remove product registration in legacy location in multi-user scenario
01-01-03 chetanp bug 175007: remove thread-unsafe global regkey in APIs
01-01-03 cnapier bug 266869: uninstall of Office10 from ARP now works (problem was missing initialized
SAFER level)
01-01-03 rahulth Bug 214325, 253110: Register installer from the system folder
right after installation on NT systems. NT allows rename and replace
and therefore at the end of the installation, all the right binaries
are already in the system folder.
Bug 256849: Use MsiCreateAndVerifyInstallerDirectory() in msiinst to
create the installer folder with the right security.
01-01-03 chetanp bug 269368: change msi to use new URT/ Win32 interfaces
01-01-03 chetanp bug 146207: pass HOMESHARE across from client on NT < Whistler
01-01-03 eugend Bug 254703: Darwin's UI supports theming now.
01-01-02 mattwe Bug 261363: reverted 151680 that broke token privileges needed
to restore ownership on files being overwritten by a user.
01-01-02 mattwe bug 257423: Establish DACL for global mutex objects.
01-01-02 chetanp bug 239042: managed apps enumerated twice via MsiEnumProducts
01-01-02 chetanp bug 265042: alignment fault when using jpegs in UI