2824 lines
146 KiB
Plaintext
2824 lines
146 KiB
Plaintext
|
|
||
|
|
||
|
Darwin Setup Development Notes for Testing Releases
|
||
|
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.1209
|
||
|
-----------------------------
|
||
|
|
||
|
99-12-09 eugend Fixed bug # 9909: the latebinding functionality got
|
||
|
extended as not to attempt to load again a DLL it
|
||
|
couldn't load on the first attempt.
|
||
|
|
||
|
99-12-09 eugend Fixed OEM bugs # 9931 & 9959. In the fix to 9959
|
||
|
I've replaced calls to GetFileAttributes with
|
||
|
GetFileAttributesEx which is faster. 9919 addresses all other
|
||
|
speed optimizations. See spec at
|
||
|
http://dartools/dardev/Specs/OEM%20Fast%20Install.htm for the list.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.1029.1
|
||
|
-----------------------------
|
||
|
|
||
|
99-11-30 mattwe Bug 10209: If the system Environment key in NT
|
||
|
contains blank REG_EXPAND_SZ values, they'll be
|
||
|
deleted by running instmsi/copymsi
|
||
|
|
||
|
99-11-30 mattwe Bug 10258: InstMsi/CopyMsi will silently succeed
|
||
|
on Windows 2000 and later versions of the
|
||
|
non-9X operating systems.
|
||
|
|
||
|
99-11-29 cnapier Fixed bug 10275. SDK. Changed hardwired product
|
||
|
code used by msival2.exe to new product code (see bug
|
||
|
10002). Dropped release of msival2_100 from SDK.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.1029.1
|
||
|
-----------------------------
|
||
|
|
||
|
99-11-23 cgouge Bug 12049. The GetTokenInformation call on NT4 TSE
|
||
|
was failing when trying to grab the Session Id out of
|
||
|
the impersonation token on NT4 TSE. WE now bypass
|
||
|
that codepath because we don't support remote session
|
||
|
installs on NT4 anyway.
|
||
|
|
||
|
99-11-21 bench Rebased msi.dll, msihnd.dll and msimsg.dll to avoid
|
||
|
conflicts with Office10 files. New base will only apply
|
||
|
for downlevel systems, as the NT build lab automatically
|
||
|
bases these files in the system range.
|
||
|
#
|
||
|
# bases - our address range for downlevel systems
|
||
|
# (reserved for us by the Office team) is 0x24400000-0x248FFFFF
|
||
|
#
|
||
|
# msi.dll : 0x24400000 - 0x246A0000 (approx. 2,750,000)
|
||
|
# msihnd.dll : 0x246A0000 - 0x247A0000 (approx. 1,050,000)
|
||
|
# msimsg.dll : 0x247A0000 - 0x248FFFFF (approx. 1,440,000)
|
||
|
#
|
||
|
#
|
||
|
|
||
|
99-11-19 cnapier Fixed bug 10259. SDK. Readme.txt date changed to
|
||
|
December 1999. Redist.txt changed to reference 1.1
|
||
|
redistributables. ProductVersion in Property table
|
||
|
changed to 1.1
|
||
|
|
||
|
99-11-12 cnapier Updated wimakcab.vbs to be able to generate a DDF on
|
||
|
the fly with a sourcepath that contains spaces.
|
||
|
Furthermore, fixed intelmsi.bat to be able to handle a
|
||
|
release location with spaces when generating the SDK
|
||
|
msi's.
|
||
|
|
||
|
|
||
|
99-11-09 eugend Fixed bug # 10199: I've checked in the latest
|
||
|
RichEdit binaries:
|
||
|
- RICHED20.DLL ver. 5.30.22.2300 - got it from
|
||
|
- MSLS31.DLL ver. 3.10.337.0 - got it from GHeino
|
||
|
- USP10.DLL ver. 1.325.2145.1 - got it from build
|
||
|
2714 fre.wks of NT.
|
||
|
|
||
|
|
||
|
99-11-08 cnapier Fixed bug 10201. Validation: ICE66. Warning of new
|
||
|
functionality only output if column of table (with
|
||
|
new schema) actually present in database.
|
||
|
|
||
|
99-11-02 cnapier Fixed bug 10175. MakeSDK.bat file for generating
|
||
|
1.1 SDK. Takes 3 arguments: %1 = release share target
|
||
|
(placed in x86 directory that is created if not
|
||
|
exist), %2 = MSI release build (instmsi.exe), %3 = TOOLS
|
||
|
release build. Finally calls intelmsi.bat to create
|
||
|
the msi's for the SDK. To test on own machine, you
|
||
|
can set the COPYBLDSERVER and COPYBLDSHARE environment
|
||
|
variables. Finally, the product and package code
|
||
|
guids for the 1.1 SDK package have changed (as per
|
||
|
arrangement with bug 10002). Note: we never register the
|
||
|
SDK since we never call RegisterProduct in our
|
||
|
sequence table.
|
||
|
|
||
|
99-11-01 cnapier Fixed bug 10002. Changed package and product codes
|
||
|
for msival2.msi, orca.msi and msispy.msi (our SDK
|
||
|
packages). Added a file to %DARWIN%\data called
|
||
|
msipkgs.log which logs the product, package, and upgrade
|
||
|
codes of our SDK packages from 1.0 SDK to the current
|
||
|
SDK. This also lists the new GUID,
|
||
|
{8FC7****-88A0-4b41-82B8-8905D4AA904C}, which we will use for subsequent
|
||
|
SDK packages.
|
||
|
|
||
|
99-11-01 cnapier Fixed bug 10176. Validation. ICE73 (new).
|
||
|
Verifies that your package does not reuse Windows Installer
|
||
|
SDK packages package, product, and upgrade codes.
|
||
|
The new GUID range for subsequent installer SDK
|
||
|
packages (1.1 and on) is
|
||
|
{8FC7****-88A0-4b41-82B8-8905D4AA904C}.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.1029
|
||
|
-----------------------------
|
||
|
|
||
|
99-10-29 cgouge Bug 10185. Added missing StopImpersonating() call at
|
||
|
the end of the CustomEXE thread which would throw
|
||
|
off impersonation counts on future threads with the
|
||
|
same ThreadID.
|
||
|
|
||
|
99-10-28 cnapier Fixed bug 10177. SDK. Added msiloc.cpp to SDK.
|
||
|
The .cpp file as well as the msiloc.txt file (a readme)
|
||
|
will be included with the other sample source files.
|
||
|
|
||
|
99-10-28 cnapier Fixed bug 10133. Msizap. Now removes a product's
|
||
|
published component information from the components'
|
||
|
keys in per user, per user managed, and per machine
|
||
|
locations. The affected options of msizap are T and O.
|
||
|
(RemoveAll unaffected since it deltrees the registry
|
||
|
keys).
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.1028
|
||
|
-----------------------------
|
||
|
|
||
|
99-10-27 chetanp fixed bug 10167 - cleanup of orphaned disabled
|
||
|
feature registration in roaming profile for "managed" user
|
||
|
apps.
|
||
|
|
||
|
99-10-27 mattwe Bug 10164: LocalSystem or Local Administrators can
|
||
|
now own managed app keys, instead of just system.
|
||
|
|
||
|
99-10-27 cnapier Fixed bug 9962. Fixed pullsdk.bat so that it did
|
||
|
not copy over the ship bits for instmsi* since these
|
||
|
are not the released bits (the lego versions). Also
|
||
|
fixed pullsdk.bat so that msi.h and msi.lib were the
|
||
|
public headers and libs and not our private ones.
|
||
|
Previously we copied over the private header and lib to
|
||
|
the SDK folder on united\darwin\darwin.rel\%build%.
|
||
|
|
||
|
99-10-27 cgouge Bug 10173. Deferred elevated custom actions in
|
||
|
non-managed installs would be impersonated but not run
|
||
|
through the CA server. This resulted in a non-elevated
|
||
|
app gaining system rights if the custom action could
|
||
|
bypass the thread token.
|
||
|
|
||
|
99-10-27 cnapier Fixed bug 10050. alpha removed from the SDK folder.
|
||
|
The x86 had already been ALPHA-clean. The fix here
|
||
|
was to change copybld.bat so that it would not call
|
||
|
pullsdk.bat if the platform was Alpha.
|
||
|
|
||
|
99-10-27 cgouge Bug 10150. Script actions are now run through the
|
||
|
custom action server to prevent spawned child processes
|
||
|
from gaining elevated rights.
|
||
|
|
||
|
99-10-27 mattwe Bug 8218: We no longer clobber the policy settings
|
||
|
in instmsi. We now only clobber them via service
|
||
|
startup if not owned by the appropriate people.
|
||
|
(That code is old, the instmsi is the only current
|
||
|
change)
|
||
|
|
||
|
99-10-27 cgouge Bug 9899. Fixed ANSI orca validation problem when
|
||
|
using qualified component CUB file, plus problem with
|
||
|
orca installer that led to bad validation COM
|
||
|
registration
|
||
|
|
||
|
99-10-27 cgouge Bug 9710. MergeMod.Dll. We no longer require the MSI
|
||
|
sequence table schema in the module if the
|
||
|
corresponding module table is empty and we are not generating
|
||
|
any directory actions for that MSI sequence table.
|
||
|
|
||
|
99-10-26 cnapier Fixed bug 10092. Msiinfo handling of codepage
|
||
|
validation updated to ignore the case where the property
|
||
|
doesn't exist in the property stream (VT_EMPTY
|
||
|
returned). This was added because internally Darwin
|
||
|
supports this where it defaults to codepage neutral (0) if
|
||
|
the PID_CODEPAGE property doesn't exist.
|
||
|
|
||
|
99-10-26 cgouge Bug 9894. Added a select subset of standard ICE
|
||
|
validators to the merge module CUB file. These validators
|
||
|
apply equally to modules and full databases.
|
||
|
|
||
|
99-10-22 cnapier Fixed bug 10143. Validation. ICE06. Changed error
|
||
|
message so that arguments are correct (column goes
|
||
|
with column, table goes with table).
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.1022.1
|
||
|
-----------------------------
|
||
|
|
||
|
99-10-22 eugend I revisited the checkin for bug # 10131: several
|
||
|
screen-readers expect the text in the STATIC control
|
||
|
that precedes an EDIT control to end in ':' so I've
|
||
|
changed the functionality to append ':' to the text
|
||
|
MaskEdit control serves the screen-readers.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.1021
|
||
|
-----------------------------
|
||
|
|
||
|
|
||
|
99-10-21 mattwe 9718: The SFC dll will no longer be loaded on Win9X.
|
||
|
|
||
|
99-10-21 cgouge Fixed bug 10130. Exe custom actions on TS. STARTUPINFO.lpDesktop
|
||
|
is now set to Winsta0\Default (instead of NULL) so that together with
|
||
|
the TS sessionID, the UI is placed on the visible desktop of the
|
||
|
appropriate session.
|
||
|
|
||
|
99-10-21 eugend Fixed bug # 10131: MaskedEdit control is now
|
||
|
sensitive to screen readers.
|
||
|
|
||
|
99-10-20 cnapier Fixed bug 10096. Validation (MM). ICEM10. Verifies
|
||
|
that a merge module does not contain disallowed
|
||
|
properties. (Dev note: Disallowed properties are listed
|
||
|
in the _Disallowed table stored in the mergemod.cub
|
||
|
file).
|
||
|
|
||
|
99-10-19 cnapier Fixed bug 10091. Validation: ICE12. ICE12 can now
|
||
|
validate type 35 and type 51 custom actions that also
|
||
|
specify scheduling options (like TypeFirstSequence).
|
||
|
|
||
|
99-10-19 cnapier Fixed bug 10092. Msiinfo now will only set the
|
||
|
codepage (/c option) of the summary information stream if
|
||
|
the system supports the codepage supplied.
|
||
|
Furthermore, the summary information strings are only
|
||
|
displayed if the system supports the codepage of the summary
|
||
|
information stream (this is only on a NT/W2K
|
||
|
system...no such verification is done on Win9X since no
|
||
|
translation from ANSI to WIDE occurs on Win9X platforms).
|
||
|
|
||
|
99-10-18 cnapier Fixed bug 10095. Schemalog.txt which is NOW
|
||
|
SCHEMA.LOG (for 8.3 filename verification) has been updated.
|
||
|
It includes the listing of tables, columns added
|
||
|
since schema 100 (upto schema 110) plus any columns
|
||
|
whose attributes changed within that time period.
|
||
|
Additionally, the SDK msi was modified so as to pass the
|
||
|
full validation suite.
|
||
|
|
||
|
99-10-18 cnapier Fixed bugs 9962 and 10050. 9962 dealt with the
|
||
|
inclusion of the SDK drop in our regular builds. It was
|
||
|
fixed, but made the assumption of pulling everything
|
||
|
from the United\Darwin\...\Public folder, which is
|
||
|
the folder that it now replaces. PullSdk.bat now picks
|
||
|
up everything from the places that it can find the
|
||
|
files at. 10050: ALPHA removed from SDK (directly).
|
||
|
This basically means that msispy.msi no longer has
|
||
|
ALPHA support. NONE of the msispy alpha files are
|
||
|
dropped in the SDK or in msispy now (the ALPHA features,
|
||
|
etc. have been removed as well). Furthermore,
|
||
|
msispy only contains the SHIP version of the resource
|
||
|
DLLs, however they are tied to a separate feature so are
|
||
|
still available when installing the debug features
|
||
|
(DEBUG=1 on msiexec command line) for msispy or
|
||
|
installing the "ship/x86" features.
|
||
|
|
||
|
99-10-18 cnapier Fixed bug 9866. Resource DLL's for msispy
|
||
|
(spyjpn.dll, spyenu.dll, spyara.dll, and spydeu.dll) now have
|
||
|
versions. All msispy DLL's now track MSI version.
|
||
|
Msispy's file table is now authored correctly (updated
|
||
|
during build process by reading from spycab.ddf
|
||
|
although msispy files are not actually cabbed). For
|
||
|
resources to work with the resource DLL's, msitool.mak
|
||
|
was modified. A .cpp file can now optionally specify a
|
||
|
LANGUAGE and CODEPAGE in hex to work with properly
|
||
|
languaging the DLLs. For example, spydeu.dll uses
|
||
|
spydeu.cpp which specifies CODEPAGE = 0x04E4 (for 1252)
|
||
|
and LANGUAGE = 0x0407 (for 1031 = GERMAN).
|
||
|
Furthermore, a .cpp file can now specify both generation of a
|
||
|
VERSION resource as well as inclusion of a separate
|
||
|
resource file (.res). The spydeu.cpp files in
|
||
|
%DARWIN%\src\tools\spy is an example that utilizes this new
|
||
|
feature.
|
||
|
|
||
|
99-10-13 cgouge Bug 9892. Merge Module validation, ICEM09, checks
|
||
|
that if you are installing to predefined directories
|
||
|
that you have aliased the directory primary keys and
|
||
|
either generated the appropriate custom actions and
|
||
|
placed them in the right place in the sequence tables or
|
||
|
that you have left it completely to the merge tool.
|
||
|
|
||
|
99-10-12 cnapier Fixed bug 10078. ICE72: new validator. The only
|
||
|
customactions allowed in the AdvtExecuteSequence table
|
||
|
are type 19, type 35, and type 51 custom actions.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.1012.1
|
||
|
-----------------------------
|
||
|
|
||
|
99-10-11 mattwe Bug 9962: The SDK now replaces our release
|
||
|
PUBLIC directory. All your favorites should
|
||
|
be there, you may just need to look in a
|
||
|
different spot. The SDK flat files are copied
|
||
|
out, and the actual SDK package with the
|
||
|
cabinets is at the root of the x86 branch.
|
||
|
|
||
|
99-10-11 mattwe Bug 10014: continued: removed WRITE_DAC and
|
||
|
WRITE_OWNER from the custom action server
|
||
|
process as well.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.1012
|
||
|
-----------------------------
|
||
|
|
||
|
99-10-11 mattwe Bug 10014: The custom action server is now secured
|
||
|
against being debugged by the current user.
|
||
|
This is necessary to prevent the user from having
|
||
|
a trusted channel back into the service to modify
|
||
|
the install.
|
||
|
|
||
|
99-10-09 cgouge Bug 10024. A Work2000 CA was failing because COM is
|
||
|
already initialized on the CA thread in a different
|
||
|
threading model than they were trying to use. We now
|
||
|
spawn a separate thread for the action and don't
|
||
|
initialize COM.
|
||
|
|
||
|
99-10-07 cnapier Fixed bug 9955 (exempt). ICEM04. Merge Module
|
||
|
validator that ensures that required empty tables are
|
||
|
indeed empty in the Merge Module. ICEMAN was fixed up
|
||
|
as well (ICEMXX validators no longer have hyphens).
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.1007
|
||
|
-----------------------------
|
||
|
|
||
|
99-10-06 cgouge Bug 10053. ANSI API calls with DBCS characters were
|
||
|
returning the wrong buffer size for DBCS characters.
|
||
|
We have gone back to the sub-optimal solution of
|
||
|
returning twice the required buffer size in this
|
||
|
situation.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.1006
|
||
|
-----------------------------
|
||
|
|
||
|
99-10-06 eugend Fixed bug # 10042: if we were failing to open the
|
||
|
destination file for any reason, we weren't closing the
|
||
|
previously open source file handle.
|
||
|
|
||
|
99-10-05 cgouge Bug 9967. Several APIs were failing when passing
|
||
|
NULL as an input string buffer when they should have
|
||
|
been succeeding (such as clearing a property). These
|
||
|
string arguments now correctly handle NULL arguments.
|
||
|
|
||
|
99-10-05 cnapier Fixed bug 9899. (exempt). Orca. Fix infinite loop
|
||
|
if publish component information is not registered.
|
||
|
|
||
|
99-10-01 bench Fixed bug 10048: MsiConfigureProductEx is now
|
||
|
exported from the public msi.lib.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0930
|
||
|
-----------------------------
|
||
|
|
||
|
99-09-29 cnapier Fixed bug 10013. Msi.rc. Network dialog resource
|
||
|
chopped off parts of German text (and potentially
|
||
|
Spanish as well). MsiDlgs tool was updated as well since
|
||
|
its resources must match those in msi.dll. Msidlgs
|
||
|
also did not have a large enough buffer to handle the
|
||
|
German prompt string, possibly leading to not having
|
||
|
found this bug sooner.
|
||
|
|
||
|
99-09-29 cgouge Bug 10018. Custom actions that throw exceptions now
|
||
|
return failure instead of random value.
|
||
|
|
||
|
99-09-28 mattwe 9994: Updated readme in SDK to point new users to
|
||
|
msi.chm as starting point for authoring, and to
|
||
|
find descriptions of examples.
|
||
|
|
||
|
99-09-27 cnapier Fixed bug 9887. Msizap now has an undocumented
|
||
|
option (o) for "orphaning" parts of a product. This was
|
||
|
provided for OEMs to use. It works similar to the T
|
||
|
option for removing a product, however it does not
|
||
|
remove cached icons or clear shared DLL references
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0923
|
||
|
-----------------------------
|
||
|
|
||
|
99-09-23 cgouge Bug 10017. MsiBreak on action running via custom
|
||
|
action server was not activating JIT Debugging because
|
||
|
the breakpoint exception was getting caught by the
|
||
|
custom action entry point exception handler.
|
||
|
|
||
|
|
||
|
99-09-23 mattwe Bug 9966: Registering directories on 9X no longer fails
|
||
|
the install when we run out of registry space.
|
||
|
Registering fails, and orphans the directory, but allows
|
||
|
install to continue.
|
||
|
|
||
|
99-09-20 cgouge Exempt - no bug #. Checked in code for the new
|
||
|
version of the IceMan ActiveX control on \\dartools. This
|
||
|
DLL is internal use only and is not part of the build
|
||
|
process.
|
||
|
|
||
|
99-09-20 cgouge Bug 9897. Added ICE-M07, which ensures that the
|
||
|
sequence order of files in the CAB matches the sequence
|
||
|
of files in the file table.
|
||
|
|
||
|
99-09-20 cgouge Bug 9896. Added ICE-M06, which ensures that merge
|
||
|
modules have no explicit feature references.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0917
|
||
|
-----------------------------
|
||
|
|
||
|
99-09-14 chetanp bug 9805 - we ignore installed component
|
||
|
registrations if component path is not accessible for current
|
||
|
user (in multi-user installation scenarios)
|
||
|
|
||
|
99-09-13 bench Fixed bug 9957: logging started during the install
|
||
|
when an error occurs is now handled the same as
|
||
|
logging started via policy, where we stop using the log at
|
||
|
the end of the install.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0904
|
||
|
-----------------------------
|
||
|
|
||
|
99-09-10 cgouge Bug 9960: eliminated crash on NT4SP3 caused by too
|
||
|
many release calls on a marshaling object.
|
||
|
|
||
|
99-09-04 bench Bug 9944: rebuilt the AXP64 and IA64 builds with the
|
||
|
latest tools, libs and headers (from Win2000 build
|
||
|
2121). the IA64 compiler changed and a rebuild using
|
||
|
the new compiler was necessary.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0902
|
||
|
-----------------------------
|
||
|
|
||
|
99-09-02 chetanp bug 9918 - latebind fix. dont call GetProcAddress
|
||
|
with null hModule
|
||
|
|
||
|
99-09-02 chetanp bug 9913 - avoid expensive call to
|
||
|
WNetGetResourceInformation with "filename only" args
|
||
|
|
||
|
99-09-02 cnapier Fixed bug 9895. MM validator. ICE-M05. This is
|
||
|
the Merge Module validator that validates for stray
|
||
|
components in the merge module. A stray component is
|
||
|
defined as (1) Component listed in Component table but
|
||
|
not in ModuleComponents table or (2) Component listed
|
||
|
in ModuleComponents table but not in the Component
|
||
|
table. In addition, it catches those Components listed
|
||
|
in the ModuleComponents table whose ModuleID does not
|
||
|
match the current ModuleID (signature) of the Merge
|
||
|
Module.
|
||
|
|
||
|
99-09-03 cgouge Bug 9893, MM Validation. Added ICEM03, which checks
|
||
|
that all Module*Sequence tables form a proper forest
|
||
|
under valid root nodes. (Fixed for 0902, but relnotes
|
||
|
added later)
|
||
|
|
||
|
99-09-03 cgouge Bug 9890: Added ICEM02, which checks that a merge
|
||
|
module has valid exclusions and dependencies. (Fixed
|
||
|
for 0902, but relnotes added later)
|
||
|
|
||
|
99-09-03 cgouge Bug 9752. Added initial merge module validation
|
||
|
infrastructure. mergemod.cub file is now built and
|
||
|
dropped with other CUB files. It is also installed in the
|
||
|
msival2 installer. (Fixed for 0902, but relnotes added later)
|
||
|
|
||
|
99-09-02 cnapier Fixed bug 9669. ICE66. Changed warning message to
|
||
|
place warning on the table instead of on the
|
||
|
SummaryInformation stream. This affects Orca's graphical
|
||
|
display (now on the table instead of the pop-up msg
|
||
|
about the SummaryInformation stream containing errors).
|
||
|
|
||
|
99-09-02 cgouge Bug 9914, missing namespace on CoInitializeEx call
|
||
|
short-circuited latebinding, which caused creating the
|
||
|
process to fail on Win95 gold, even though the
|
||
|
function was never called on that platform.
|
||
|
|
||
|
99-09-01 eugend Fixed bug # 9906: I've removed an unnecessary Assert
|
||
|
I've added while fixing 9864.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0831
|
||
|
-----------------------------
|
||
|
|
||
|
99-08-31 chetanp bug 8062 - use case insensitivity for file path
|
||
|
comparisons when determining when to clean up HKCR
|
||
|
registrations
|
||
|
|
||
|
99-08-31 mattwe Bug 9796: On Win9X, the Environment actions are now
|
||
|
more robust about recognizing "set" lines, including
|
||
|
whitespace, and making the "set" optional.
|
||
|
Example: path=foo, and set path=foo are now both
|
||
|
acceptable in existing lines of the autoexec.bat
|
||
|
|
||
|
99-08-30 cnapier Fixed bug 9885. MsiZap. Deleting an UpgradeCode
|
||
|
value from the UpgradeCodes key failed because the key
|
||
|
was only opened with Read access. Delete requires
|
||
|
KEY_SET_VALUE access.
|
||
|
|
||
|
99-08-30 bench Bug 9886: we no longer attempt to bind WFP-protected
|
||
|
files (with the BindImage action, BindImage table,
|
||
|
etc...)
|
||
|
|
||
|
99-08-30 cnapier Fixed bug 9868. EvalCom.dll. Two potential trouble
|
||
|
areas where we could be calling through a garbage
|
||
|
pointer or we could be attempting to get the length of
|
||
|
a null string.
|
||
|
|
||
|
99-08-30 cnapier Fixed bug 9872. Use of CTempBuffer without
|
||
|
services. Changed to use CAPITempBuffer. This was exposed
|
||
|
on NT 4 Server when MsiUseFeature was called (it then
|
||
|
called IsTerminalServerInstalled which is where the
|
||
|
CTempBuffer was used).
|
||
|
|
||
|
99-08-27 cgouge Bug 9772, 9773. We now build merge modules for
|
||
|
mergemod.dll and evalcom.dll. These will be build into the
|
||
|
data directory and dropped at samples\modules. These
|
||
|
are generally for MS use only.
|
||
|
|
||
|
99-08-26 eugend Fixed bugs # 9852, 9864 & 9880: all of these have to
|
||
|
do with a bad fix I made to 9566. The fix to 9864
|
||
|
consists mainly of removing the calls to
|
||
|
SfcConnectToService and SfcClose from DllMain and putting them
|
||
|
into MsiUIMessageContext's Initialize and Terminate.
|
||
|
9852 is tracking the performance issue resulting from
|
||
|
the condition that caused 9864, so that this one got
|
||
|
fixed as well by the fix to 9864. The fix to 9870
|
||
|
consists of moving the call to SFC::Unbind from
|
||
|
UnbindLibraries into MsiUIMessageContext::Terminate, right
|
||
|
after the call to SfcClose.
|
||
|
|
||
|
99-08-25 cgouge Bug 9644, 9762. The custom action server was not
|
||
|
secure and would fail when the client was not the same
|
||
|
as the user owning the desktop. To work around this,
|
||
|
Darwin has taken over management of the custom action
|
||
|
server process. Security is now enforced through a
|
||
|
combination of ACLs and cookies, and the owner of the
|
||
|
server is now the determined by the impersonation
|
||
|
token held in the service. See the bugs for details.
|
||
|
|
||
|
99-08-25 cgouge Bug 9857, thread problems with custom actions. When
|
||
|
custom actions were run from the custom action
|
||
|
server, there was no relationship between the thread in the
|
||
|
service and the thread in the client (especially for
|
||
|
async actions.) This meant that handle management
|
||
|
was all goofed up, because the service would think that
|
||
|
the wrong threads were trying to close the handles.
|
||
|
We now pass the thread id of the caller across to the
|
||
|
service to be used in these cases instead of using
|
||
|
the real thread id.
|
||
|
|
||
|
99-08-24 chetanp bug 9818 - hack to prevent premature removal of
|
||
|
class registration (to work around incorrect component
|
||
|
definition)
|
||
|
|
||
|
99-08-23 cnapier Fixed bug 9803. Security. We now verify that the
|
||
|
owner of our registry keys (Installer, Policy, and
|
||
|
Managed) is system or admin. The MSI folder must also
|
||
|
be admin or system owned (unless on a FAT system where
|
||
|
there is no security with files or folders).
|
||
|
Non-system or admin owned keys are deleted (and would
|
||
|
therefore be recreated).
|
||
|
|
||
|
99-08-23 cnapier Fixed bug 9836. String pool corruption occured if a
|
||
|
table was loaded in memory with no persistent data
|
||
|
changes and the string pool index was bumped from 2 to
|
||
|
3 (over 64K strings). The table is then released
|
||
|
(and no changes saved since no persistent data
|
||
|
changed). Upon re-load, table is read in incorrectly since
|
||
|
the index size bumped. We read in a 2 byte persisted
|
||
|
format as 3 bytes. Fix was to include the string
|
||
|
index bump as a "data change" and to mark all
|
||
|
non-temporary tables when the string index was bumped.
|
||
|
|
||
|
99-08-18 mattwe Bug 9844/9845: Minor fixes to MsiGetShortcutTarget and
|
||
|
its automation for buffers being too short for the null.
|
||
|
Added logic for CFixedLengthParam to detect overruns in
|
||
|
DEBUG only.
|
||
|
|
||
|
99-08-17 cnapier Fixed bugs 9832, 9833. ICES 44 and 45. Fixed so
|
||
|
that the ICE UNKNOWN error is not returned. For ICE44,
|
||
|
UNKNOWN was returned if you didn't have a Dialog
|
||
|
Table but had a ControlEvent table. This was corrected
|
||
|
to not report an error if ControlE table is empty and
|
||
|
reports an error that the Dialog table is missing if
|
||
|
ControlE table is not empty. ICE45 fixed the buffer
|
||
|
problem when getting a summary information stream.
|
||
|
We didn't handle the ERROR_MORE_DATA case correctly.
|
||
|
|
||
|
99-08-17 bench Fixed suggestion bug 9834: MsiFiler now sets the
|
||
|
Language column of the File table along with the Version
|
||
|
and FileSize columns.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0816
|
||
|
-----------------------------
|
||
|
|
||
|
99-08-16 mattwe Bug 9636: Implemented new API MsiGetShortcutTarget
|
||
|
to retrieve product, feature, and component from a
|
||
|
Installer shortcut.
|
||
|
|
||
|
99-08-13 chetanp bug 9801 - replace global feature cache semaphore
|
||
|
with local one.
|
||
|
|
||
|
99-08-13 cnapier Fixed bug 9776 (regression). The ModuleDependency
|
||
|
ModuleLanguage column was entered incorrectly in the
|
||
|
_Validation table used with schema.msm and schema.msi
|
||
|
|
||
|
|
||
|
99-08-12 eugend Fixed bugs # 9566 & 9817: both of these two fixes
|
||
|
improved Darwin's performance with regard to its
|
||
|
interactions with SFP (system file protection).
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0811.1
|
||
|
-----------------------------
|
||
|
|
||
|
99-08-11 chetanp bug 9381 - incorrect param to CreateFileMapping and
|
||
|
premature return from fn, in case of error, w/o
|
||
|
releasing semaphore causes hang.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0811
|
||
|
-----------------------------
|
||
|
|
||
|
99-08-11 bench Fixed bug 9820: regression of bug 9760. reset a
|
||
|
global flag when necessary to prevent calling Wx86 apis
|
||
|
when emulation not loaded.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0810.1
|
||
|
-----------------------------
|
||
|
|
||
|
99-08-10 cnapier Fixed bug 9813. ICE64 -- which validates
|
||
|
directories in user profile are added to RemoveFile table.
|
||
|
However, if the DefaultDir column uses the specification
|
||
|
of ".:MyDir", then it is valid (provided all parents
|
||
|
up to profile folder have .:).
|
||
|
|
||
|
99-08-10 bench Fixed bug 9819: we always return
|
||
|
ERROR_INSTALL_FAILURE from MsiAdvertiseScript for invalid script
|
||
|
problems.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0809
|
||
|
-----------------------------
|
||
|
|
||
|
99-08-09 cnapier Updated pullsdk.bat, copypub.bat, and makefile to
|
||
|
handle building the msival2.msi 1.0 SDK refresh files
|
||
|
to specific alpha and intel directories (since the
|
||
|
cube file stuffed in the package is platform specific).
|
||
|
Pullsdk.bat was modified to pull the correct package
|
||
|
based on platform. Copypub.bat copies both versions
|
||
|
to Alpha and X86 directories beneath the
|
||
|
packages\100 archive.
|
||
|
|
||
|
99-08-09 chetanp bug 9816 - check return of while enumerating scripts
|
||
|
on alpha for bogus script file.
|
||
|
|
||
|
99-08-09 chetanp bug 9719 - remove shared read/write section from
|
||
|
msi.dll. Replace with shared memory mechanism
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0808
|
||
|
-----------------------------
|
||
|
|
||
|
99-08-08 bench Fixed bug 9760: several problems with advertising
|
||
|
x86 scripts on alpha machines. Emulation was not
|
||
|
correctly being enabled.
|
||
|
|
||
|
99-08-08 bench Fixed bug 9810: AdminTools folder not properly
|
||
|
handling cross-machine script generation/execution.
|
||
|
|
||
|
99-08-04 cnapier Fixed bugs 9699, 9765, 9776. These deal with the
|
||
|
logo cube files and the 1.0 SDK refresh. We now cab
|
||
|
the logo.cub file with msival2.msi and install it as
|
||
|
well. For 1.0 SDK refresh, the original cub file was
|
||
|
modified to work with 1.1 darwin (change schema in
|
||
|
SumInfo from 28 to 100). An x86 and alpha version are
|
||
|
available and built from %DARWIN%\public\packages\100
|
||
|
(x86 and alpha directories respectively). A 1.0 SDK
|
||
|
refresh msival2.msi is built and put in the
|
||
|
public\packages\100 directory. The _Validation table now
|
||
|
contains entries for the MergeModule tables that could be
|
||
|
merged into your database.
|
||
|
|
||
|
99-08-04 cnapier Fixed bug 9792. Removed line where we assumed a
|
||
|
record had transform data during uninstall. Apparently
|
||
|
this was overlooked when we changed how we obtained
|
||
|
transform information (now from registry). During
|
||
|
remove, we only populate the record with the names of
|
||
|
the transforms, not name-data pairs. We now remove all
|
||
|
transforms (not every other) on Per Machine
|
||
|
installs.
|
||
|
|
||
|
99-08-03 chetanp bug 9731 - we no longer ACL the files (profile
|
||
|
transforms and icons) that are put in the appdata folder
|
||
|
during per user installs.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0803
|
||
|
-----------------------------
|
||
|
|
||
|
99-08-02 bench Fixed bug 9780. made a few Win64-only code changes and a
|
||
|
couple of non-specific ones to get Win64 builds going with
|
||
|
the latest build tools. We should now be dropping ship and
|
||
|
debug Win64 builds to \\united\darwin.
|
||
|
|
||
|
99-08-02 bench Bug 9313 - fixed minor problem with previous fix. when profiles
|
||
|
were enabled, a different user would be allowed to continue an install
|
||
|
after reboot. an error would be thrown, but as a warning and not a
|
||
|
fatal error.
|
||
|
|
||
|
99-08-02 johndelo Bug 9581 - sequence.msi built which has recommended
|
||
|
sequence tables. Darwin 1.0 version for 1.0 SDK
|
||
|
checked in under DARWIN\public\packages\100
|
||
|
Header files conditionalized with MSI version check
|
||
|
for 1.1 definitions that are not available in 1.0
|
||
|
Version 110 (MSI 1.0) forced if _WIN32_MSI not defined
|
||
|
AND _WIN32_WINNT >= 0x0500. Core components set _WIN32_MSI
|
||
|
to 110, but tools use 100 to insure 1.0 compatibility.
|
||
|
|
||
|
99-08-02 cnapier Fixed bug 9726 (regression). Caused by bug 9751 fix
|
||
|
which overwrote these changes. Removed trailing
|
||
|
quote from WFP error strings in Error table. Updated
|
||
|
inst1033.msi and error.enu. All localized files were
|
||
|
correct.
|
||
|
|
||
|
99-08-02 cnapier Fixed bug 9684 (regression feature request). New
|
||
|
ICE71 to verify that the Media table has an entry with
|
||
|
DiskId = 1.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0729
|
||
|
-----------------------------
|
||
|
|
||
|
99-07-29 mattwe Bug 9767: Removed the full system path on system
|
||
|
library loads on Win9X. This isn't necessary to
|
||
|
security, and busts instmsi/copymsi.
|
||
|
|
||
|
99-07-28 cnapier Fixed bug 9766. Fix the S option with msizap so
|
||
|
that it actually does work. (S removes rollback
|
||
|
information).
|
||
|
|
||
|
99-07-28 cnapier Fixed bug 8905 (regression new feature request).
|
||
|
X-ref components in same feature is a warning. X-ref
|
||
|
components in different feature, parent feature, or
|
||
|
child feature is an error. Verb-Ext, AppId-Class
|
||
|
validations are all warnings (open to author
|
||
|
interpretation).
|
||
|
|
||
|
|
||
|
99-07-28 bench Fixed bug 9313: on Win9X, allow a user to resume a
|
||
|
ForceReboot install after reboot if profiles are
|
||
|
disabled. This didn't work previously if the user started
|
||
|
the install when logged in as themselves (or dialed
|
||
|
up to the network) but after the reboot they
|
||
|
cancelled the login prompt (or didn't dial up).
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0728
|
||
|
-----------------------------
|
||
|
|
||
|
99-07-27 mattwe Bug 9601: Shell folder Admin Tools will
|
||
|
be deleted if it is empty. Since our lookup
|
||
|
mechanism may create it, we don't want empty
|
||
|
copies lying about.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0727
|
||
|
-----------------------------
|
||
|
|
||
|
99-07-27 mattwe Bug 9763: added .DLL to system library loads
|
||
|
|
||
|
99-07-26 cgouge Bug 9643, cleaned up mergemod header file.
|
||
|
|
||
|
99-07-26 cnapier Fixed bug 9751. In all of the error.XXX tables in
|
||
|
%DARWIN%\data\intl (and instXXXX.msi in
|
||
|
%DARWIN%\src\intl) updated the 1301 error message by changing
|
||
|
parameter from [3] to [2]. (Used a script for this and
|
||
|
made sure I was on a machine with all of the language
|
||
|
codepage supports).
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0722
|
||
|
-----------------------------
|
||
|
|
||
|
99-07-23 cgouge Bug 9637 (regression) Wide versions of the APIs now
|
||
|
will succeed when remoted.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0722
|
||
|
-----------------------------
|
||
|
|
||
|
99-07-22 cgouge Bug 9743. MergeMod was generating invalid sequence
|
||
|
tables when multiple predefined directories were used
|
||
|
in a module that already had multiple predefined
|
||
|
directories from earlier modules.
|
||
|
|
||
|
99-07-22 cgouge Bug 9596 regression. Change to command line parsing
|
||
|
had broken the ability to use merge modules from the
|
||
|
command line (caused by a variable initialization in
|
||
|
the wrong place.)
|
||
|
|
||
|
99-07-22 chetanp bug 9732 - We now accomodate the case where a CA
|
||
|
calls Modify on a SELECT query w/o calling Execute.
|
||
|
|
||
|
99-07-22 mattwe Fixed bug 9722: "latebound" DLLs now are expected
|
||
|
to be in the system directory, and will only load from
|
||
|
there. Non-optional system components (like msi.dll)
|
||
|
will continue to load normally. (So, you can still
|
||
|
run msiexec from a private directory, as long as you
|
||
|
have privileges to register the service there.)
|
||
|
|
||
|
99-07-22 cnapier Fixed bug 8811. Problems with costing cached patch
|
||
|
packages. When we began recosting the engine cost
|
||
|
(cached database, script, etc) we never re-intialized
|
||
|
the cost of the cached patch package. This would
|
||
|
result in our writing bogus values for the estimated size
|
||
|
in the ARP uninstall key.
|
||
|
|
||
|
99-07-22 cnapier Fixed bug 9740. Propogate _Validation table changes
|
||
|
(Class.Argument, Environment.Values have
|
||
|
Category=Formatted) to all databases. Our 1.0 databases grabbed
|
||
|
the _Validation table from
|
||
|
%DARWIN%\public\packages\100. Updated _Validation table in 100 and 101 for
|
||
|
those entries. Note that
|
||
|
%DARWIN%\data\schema\_validat.idt was correct. Also, 1.0 Darwin supports these
|
||
|
columns as formatted, we merely validated them as Text.
|
||
|
|
||
|
99-07-21 cnapier Fixed bug 9726. Error.enu corrected to remove
|
||
|
trailing '"' in 1930,1931,and 1932 error messages.
|
||
|
Error.idt and ActionTe.idt files delfiled from
|
||
|
%DARWIN%\data\template. Makefile changed so that error.enu and
|
||
|
actionte.enu files are imported into the databases
|
||
|
from the %DARWIN%\data\intl directory. This required
|
||
|
copying the .enu file to a .idt file in the TEMP
|
||
|
directory since the bug to fix msidb to allow import of non
|
||
|
idt files was punted way back when.
|
||
|
|
||
|
99-07-21 cnapier Fixed bug 9736. ICE69 in an infinite loop. Problem
|
||
|
was we were not handling the case where a particular
|
||
|
table was not found in the middle of a while loop.
|
||
|
|
||
|
99-07-21 cgouge Bug 9620: Fixed problem with new "smart merge" for
|
||
|
validation COM object that would cause validation to
|
||
|
fail if the Binary or CA tables were missing in the
|
||
|
target database.
|
||
|
|
||
|
99-07-21 mattwe bug 9619: verb registration for .msi and .msp are now
|
||
|
consistent on downlevel platforms as with NT5. InstMsi's
|
||
|
registry table now contains %* for verbs, allowing
|
||
|
command line arguments to be passed in a command line
|
||
|
of the form: "foo.msi blah blah blah"
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0721
|
||
|
-----------------------------
|
||
|
|
||
|
99-07-20 chetanp bug 9720 - honour existing "available" feature
|
||
|
state, if readvtising a feature marked as absent via an
|
||
|
advertisement script (during app deployment, relogon).
|
||
|
|
||
|
99-07-20 chetanp bug 9716 - error when attempting to get file
|
||
|
security for a folder on the net. needed to impersonate the
|
||
|
user.
|
||
|
|
||
|
99-07-20 chetanp bug 9676 - ORCA: Right Click on a .msi to "Edit with
|
||
|
Orca" did not brings up anything on Win98.
|
||
|
|
||
|
99-07-20 chetanp bug 8882 - fixed behaviour where we were incorrectly
|
||
|
allowing installs from disconnected CSC sources.
|
||
|
|
||
|
99-07-20 chetanp bug 9707 - fix crash when a CA calls
|
||
|
MsiSetFeatureState w/o initializing the selection manager (calling
|
||
|
CostInitialize , FileCost , and CostFinalize
|
||
|
|
||
|
|
||
|
99-07-20 cgouge Bug 9684. A multi-CD install would prompt for a disk
|
||
|
when it needed to determine the source type, but
|
||
|
would list and accept any disk disk from the product.
|
||
|
The last used source would also get tossed in, even if
|
||
|
it was the wrong disk. We now prompt for and accept
|
||
|
only the disk that we actually need.
|
||
|
|
||
|
99-07-20 cgouge Bug 9637. The marshalling code for the CustomAction
|
||
|
server was having serious problems marshalling across
|
||
|
the users buffers when the provided size was 0. This
|
||
|
manifested as random crashes and/or
|
||
|
RPC_S_INVALID_BOUND returns from any API with an [out, string] buffer
|
||
|
when called from the CA server. Our API calls now
|
||
|
create dummy buffers of 1 char to use in these special
|
||
|
cases. The only exception is MsiRecordReadStream,
|
||
|
which maintains state and thus can't use dummy buffers.
|
||
|
Instead, it explicitly passes across the remote
|
||
|
interface a flag which says whether or not to use the
|
||
|
provided buffer.
|
||
|
|
||
|
99-07-20 cgouge Bug 9166. When recaching a package from a product
|
||
|
code, we don't verify that the sources in the source
|
||
|
list have the same package code as the cached package,
|
||
|
although they still have to have the same name. This
|
||
|
allows recaching via product code when the source
|
||
|
images have had a minor update applied.
|
||
|
|
||
|
99-07-20 cgouge Bug 9710: MergeMod. No longer populate the
|
||
|
AdvtUISequence table with generated custom actions for
|
||
|
GUID-ized predefined directories. The table is now left
|
||
|
empty.
|
||
|
|
||
|
99-07-20 cnapier Fixed bug 9714. MsiDb must pass number bytes, not
|
||
|
number of characters to WriteFile. in addition,
|
||
|
updated msiinfo, msimerg, and msitran to do the same thing
|
||
|
(they worked, but had a hard coded value instead of
|
||
|
sizeof(TCHAR)).
|
||
|
|
||
|
99-07-19 cnapier Fixed bug 9685. ICE70. Reactivated to handle
|
||
|
properties. Also added validation of #xHex syntax in
|
||
|
registry value column.
|
||
|
|
||
|
99-07-19 cnapier Fixed bug 9370. ICE68. Reactivated due to
|
||
|
disallowing certain customaction attributes for Text and
|
||
|
Install Types. Text allows the Pass flags (except for
|
||
|
InScript). Install only also allows continue flag.
|
||
|
|
||
|
|
||
|
99-07-15 cnapier Fixed bugs 8905, 9669, 9685. ICEs 66, 69, and 70.
|
||
|
|
||
|
Reworked ICE 66 due to fix to bug 9536. Warns
|
||
|
(based on your database schema) that functionality only
|
||
|
availabe for certain tables (like Upgrade) if
|
||
|
installed on Windows Installer 1.1 or greater.
|
||
|
|
||
|
ICE 69 fixed to include Environment, Class, and
|
||
|
AppId tables. Environment and Class table required
|
||
|
changes to _Validation table so that Env.Value and
|
||
|
Class.Argument are Formatted strings (originally listed as
|
||
|
Text). AppId validation similar to Verb-Extension
|
||
|
validation.
|
||
|
|
||
|
ICE 70. Validates that registry values with only a
|
||
|
single # preceding a string are followed by numeric
|
||
|
characters.
|
||
|
|
||
|
99-07-15 cnapier Fixed bug 9694. Made return codes from
|
||
|
MsiGetSourcePath consistent. Previously we returned
|
||
|
ERROR_DIRECTORY for W version and ERROR_BAD_PATHNAME for A
|
||
|
version. ERROR_DIRECTORY now standard for
|
||
|
MsiGetSourcePath, MsiGetTargetPath for when directory isn't in
|
||
|
directory table.
|
||
|
|
||
|
99-07-15 cgouge Bug 9686. Validation. We were checking the wrong
|
||
|
attributes in the upgrade table.
|
||
|
|
||
|
99-07-14 mattwe Bug 9698: SourceList APIs were trying to call
|
||
|
impersonation routines on 9X, and don't now.
|
||
|
|
||
|
99-07-14 mattwe Bug 9455: secure icons and Patch files are now
|
||
|
marked to elevate their operations during rollback.
|
||
|
|
||
|
99-07-14 cnapier Fixed bug 9621. Instlr11.adm. Updated Terminal
|
||
|
Server policy so that string looks better within the
|
||
|
policy editor (previously you had to scroll forever) for
|
||
|
down-level systems.
|
||
|
|
||
|
99-07-14 cnapier Fixed bug 9696. ORCA. Default SaveAs extension is
|
||
|
now ".msi" instead of ".odb". The ".odb" extension
|
||
|
was defunct and no longer supported in ORCA.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0714
|
||
|
-----------------------------
|
||
|
|
||
|
99-07-13 cgouge Bug 9674. Orca would crash if a repaint message came
|
||
|
in the middle of the command handler for File/New
|
||
|
when a document was already open. Fixed.
|
||
|
|
||
|
99-07-13 cnapier Fixed bug 9622. MsiZap. Fixed msizap to be more
|
||
|
restrictive about zapping all. Also made it possible
|
||
|
to remove a product with the product code or msi
|
||
|
package. MsiZap no longer removes the Run-Once key
|
||
|
(potential to mess up other apps). Msizap now removes the
|
||
|
Rollback information (* or S option). Finally during
|
||
|
removal of a product, MsiZap will remove the product
|
||
|
from Patch Keys and Upgrade Keys. A particular
|
||
|
upgrade or patch will then be removed if no other product
|
||
|
references it.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0712
|
||
|
-----------------------------
|
||
|
|
||
|
99-07-12 chetanp fixed bug 9536 - we no longer use the database
|
||
|
version to assume a particular schema type. On the other
|
||
|
hand, for a particular table, we first attempt to
|
||
|
check if it has the latest schema and fall back to the
|
||
|
olders shcema(s) if not. What this allows is the
|
||
|
ability to author a database in the most current schema
|
||
|
and allow same database to run in older versions of
|
||
|
Darwin with graceful degradation.
|
||
|
|
||
|
|
||
|
99-07-10 cgouge Bug 9620, Validation. The EvalCom validation object
|
||
|
is now more tolerant of merge conflicts between the
|
||
|
CUB file and Database. It ignores _Validation
|
||
|
conflicts, and will work around schema conflicts in the
|
||
|
Binary and CA table when possible.
|
||
|
|
||
|
99-07-09 cnapier Fixed bug 9621. Created a instlr11.adm file for
|
||
|
non-W2K systems. Used the actual system.adm file
|
||
|
included with W2K as the template. Extracted installer
|
||
|
specific information and removed conditional statements
|
||
|
and other keywords unavailable in versions 1 and 2 of
|
||
|
the system policy editor. Instlr11.adm is located
|
||
|
in %DARWIN%\sdk and the files for building the SDK
|
||
|
were updated with this additional file.
|
||
|
|
||
|
99-07-09 bench Bug 9665: put back entries for the IsolatedComponents
|
||
|
table in the _Validation table that were inadvertently
|
||
|
removed.
|
||
|
|
||
|
99-07-09 bench Bug 9660: increased version to 1.10 from 1.03, and changed
|
||
|
version of schema.msi to 110 from 103.
|
||
|
|
||
|
99-07-09 bench Bug 9659: msiexec.exe was entering non-localized event log
|
||
|
entries. rather than localize these strings, they are sent
|
||
|
to debug output rather than the event log.
|
||
|
|
||
|
99-07-09 cgouge Bug 9624, changed Orca installer to insntall to
|
||
|
correct place on Win9X
|
||
|
|
||
|
99-07-08 cnapier Fixed bug 9662. Changed ICE54 to report a warning
|
||
|
instead of an error when using keyfiles with versions
|
||
|
from companion files in different components. This
|
||
|
case can work but has some shortcomings as well.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0707
|
||
|
-----------------------------
|
||
|
|
||
|
99-07-07 mattwe bug 9651: Custom actions continue to be secure
|
||
|
for elevated actions, but may be insecure for
|
||
|
client side custom actions. A future bug will
|
||
|
be filed. This fix is for RC2 release.
|
||
|
|
||
|
99-07-06 cgouge bug 9632: Schema.msm is now dropped along with
|
||
|
schema.msi.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0702
|
||
|
-----------------------------
|
||
|
|
||
|
|
||
|
99-07-02 mattwe bug 9569: network files now only have their DACLs
|
||
|
saved/restored due to limitation of impersonation/
|
||
|
elevation.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0701
|
||
|
-----------------------------
|
||
|
|
||
|
|
||
|
99-07-01 mattwe bug 9569: Patching now works against secured
|
||
|
network files, and preserves the security correctly.
|
||
|
DEV: See CSecurityDescription for new generic routines
|
||
|
TEST: Removed the config flag from TempFileName automation
|
||
|
|
||
|
99-07-01 chetanp bug 8041 - fixed case where we were not clearing up
|
||
|
HKCU com registration for component C1 installed in
|
||
|
the context of Product P1 if the same component was
|
||
|
also installed by some other user in another products
|
||
|
(say P2) context.
|
||
|
|
||
|
99-07-01 Tracyf Bug 9635 - improved the log message generated when
|
||
|
an attempt is made to reinstall protected files.
|
||
|
|
||
|
99-07-01 cgouge Orca bugs. 9574, 9596, 9074, 9336. Clean up UI,
|
||
|
finish dropping ODB support, and fix a few Win95 Gold
|
||
|
problems.
|
||
|
|
||
|
99-07-01 cnapier Fixed bug 9629. Ice 35. Changed RFS warning msg to
|
||
|
include phrase "if running from media" as an admin
|
||
|
install would not have the problem.
|
||
|
|
||
|
99-06-30 chetanp fixed bug 9617 - incorrect shared dll registration
|
||
|
during rollback of component
|
||
|
registration/unregistration.
|
||
|
|
||
|
99-06-28 cnapier Fixed bugs 6677, 7535, 7536. Documented
|
||
|
MsiLoadString and MsiMessageBox (although they are not exposed
|
||
|
thru automation). Added those API plus the ixoOdbc
|
||
|
op codes to the contents file.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0625
|
||
|
-----------------------------
|
||
|
|
||
|
99-06-24 cgouge Bug 9599. mergemod.dll updated to support Darwin 1.1
|
||
|
shell folders.
|
||
|
|
||
|
99-06-24 cgouge Bug 9598. Mergemod.dll. We no longer fail if
|
||
|
TARGETDIR does not already exist in the database.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0624
|
||
|
-----------------------------
|
||
|
|
||
|
99-06-23 cnapier Bug 8905. Validation. Added ICE69 which checks
|
||
|
cross-referencing of components between formatted
|
||
|
strings. Also does some cross-checking of components
|
||
|
between formatted strings in the Verb table and components
|
||
|
in the Extension table. Tables typically validated
|
||
|
are the Shortcut, IniFile (and Remove), Registry (and
|
||
|
Remove), and a few others.
|
||
|
|
||
|
99-06-23 cgouge Bug 9152. Validation. Added ICE66 which checks the
|
||
|
schema of your package and the tables in your database
|
||
|
to make that your schema is in the appropriate
|
||
|
range.
|
||
|
|
||
|
99-06-23 eugend Fixed bug # 9507: instead of unconditionally
|
||
|
removing all icon files, Darwin now performs a series of
|
||
|
checks before removing any icon file (pls. see the bug
|
||
|
for details).
|
||
|
|
||
|
99-06-22 johndelo Updated all localized strings to localizer Version9
|
||
|
InstNNNN.msi, Error.LLL, ActionTe.LLL, msiLLL.res
|
||
|
Fixed parameter numbers for errors 1931,1932 - Bug 9389
|
||
|
|
||
|
99-06-22 bench Fixed bug 9587: we can now write negative DWORD
|
||
|
registry values again (like "#-234"). this was broken by
|
||
|
a regression for bug 9280.
|
||
|
|
||
|
99-06-22 cgouge Bug 9370. New ICE68, checks that custom action types
|
||
|
are valid.
|
||
|
|
||
|
99-06-22 mattwe bug 9569: Patching will no longer overwrite files
|
||
|
to which it has no access. (this means both the file
|
||
|
and directory are secured correctly. See bug for more
|
||
|
details.)
|
||
|
|
||
|
99-06-22 chetanp bug 9570 - fixed incorrect computing of default
|
||
|
verb(s) in case the Argument column was null for the
|
||
|
verbs.
|
||
|
|
||
|
99-06-22 cgouge Bug 9567. MsiAddSource no longer attempts to connect
|
||
|
to the source or validate its existance.
|
||
|
|
||
|
99-06-22 bench Bug 9571: feature request to make the Upgrade.Remove
|
||
|
column formatted, meaning you can have an expression
|
||
|
instead of static text, allowing for the list of
|
||
|
features to remove to be dynamic.
|
||
|
|
||
|
99-06-22 cgouge Bug 9503. Added ICE62, checks for a plethora of
|
||
|
different problems in the IsolatedComponent table.
|
||
|
|
||
|
99-06-21 cgouge Bug 9563. Validation, new ICE67. Checks shortcut
|
||
|
targets to ensure that they either belong to the same
|
||
|
component as the shortcut or are restricted to source
|
||
|
only or local only. This keeps the shortcut from
|
||
|
becoming invalid when the target component transitions
|
||
|
from RFS to local or v.v.
|
||
|
|
||
|
99-06-21 bench Fixed bug 9455: security bug where we were always
|
||
|
elevating when running rollback scripts. now we only
|
||
|
elevate when rolling back an elevated install.
|
||
|
|
||
|
99-06-21 bench Fixed bug 9568: clicking ignore to the error dialog
|
||
|
for error 1328 would not ignore the error - now it
|
||
|
does.
|
||
|
|
||
|
99-06-21 johndelo Bug 9564,9565. Fusion support added to schema.
|
||
|
Darwin version bumped to 1.03 - core support for Fusion
|
||
|
IsolatedComponent table, validation added to schema.msi
|
||
|
IsolateComponents action added to template.msi
|
||
|
Bug 9581 opened for mechanism to distribute sequence tables.
|
||
|
|
||
|
99-06-21 johndelo Bug 9163. All ODBC description fields non-localizable,
|
||
|
as they are all registry keys, sometimes hard-wired.
|
||
|
In addition to previous update driver, translators,
|
||
|
and data source tables were updated with this recommendation.
|
||
|
|
||
|
99-06-21 cgouge Bug 7661. The ADMINTOOLS was failing because we were
|
||
|
always calling ShGetFolderPath with an hToken value,
|
||
|
which is not valid on non-NT5 machines. Thus our
|
||
|
shell folder calls were always falling back on the
|
||
|
registry checks when called from the service. This meant
|
||
|
that a server-side install could hit cases where the
|
||
|
folder did not exist and couldn't be created. We now
|
||
|
pass a 0 value for the token on non-NT5 machines.
|
||
|
|
||
|
99-06-21 Tracyf Bug 9561: don't put up SFP error dialog when
|
||
|
attempting to reinstall equal-versioned protected files.
|
||
|
|
||
|
99-06-21 Tracyf Bug 9560: Put up a dialog if SFP fails, instead of
|
||
|
silently rolling back.
|
||
|
|
||
|
99-06-21 Tracyf Bug 9556: Always log the reason the install requires
|
||
|
a protected file to be copied.
|
||
|
|
||
|
99-06-21 Tracyf Bug 9493: Change SFP error to fatal if required file
|
||
|
is not copied at all.
|
||
|
|
||
|
99-06-17 mattwe Bug 9548: We now secure the files used for
|
||
|
configuration data: scripts, caches for
|
||
|
transform, patches, icons, databases, and
|
||
|
the custom action temporary DLLs used during
|
||
|
an install. We do *NOT* secure RBF files beyond
|
||
|
the security they already possess.
|
||
|
|
||
|
99-06-17 mattwe Bug 9513: We now mark all RBF files as
|
||
|
hidden/system. This prevents the RBF files
|
||
|
from showing up on network share desktops,
|
||
|
for example.
|
||
|
|
||
|
99-06-16 eugend Fixed bug # 9519: the Copyright information in
|
||
|
Darwin source files has been brought up to date.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0616
|
||
|
-----------------------------
|
||
|
|
||
|
99-06-15 eugend fixed bugs # 9527 - buffer overflow in CA processing
|
||
|
code and # 9552 - incorrect error string for
|
||
|
ERROR_INSTALL_PLATFORM_UNSUPPORTED error.
|
||
|
|
||
|
|
||
|
99-06-15 cgouge Bug 9547. We no longer set the TerminalServer property
|
||
|
or do TS-specific stuff when on a TS remote admin
|
||
|
machine. The Global mutex prefix is still used
|
||
|
on all NT5 machines and TS4 machines.
|
||
|
|
||
|
We also set a new property on these machines, "RemoteAdminTS"
|
||
|
|
||
|
99-06-15 Tracyf Bug 9485: Due to an external change in sfc.dll to
|
||
|
fix a memory leak problem, an extra parameter was added
|
||
|
to the SfcIsProtectedFile API, requiring a Darwin
|
||
|
change.
|
||
|
|
||
|
99-06-15 Tracyf Bug 9537 - Bug 9537: fixed late-binding for SFP
|
||
|
calls to avoid asserts on non-NT5 platforms.
|
||
|
|
||
|
99-06-15 bench Fixed bug 9529: we now allow a non-localadmin user
|
||
|
to deploy an app via the MMC on Windows 2000 if the
|
||
|
app being deployed happens to be assigned to that user
|
||
|
already. prior we would only allow admins to deploy
|
||
|
in this case.
|
||
|
|
||
|
99-06-15 cgouge Bug 9362. Validation. Updated ICE45 to check
|
||
|
specific control types for specific bits instead of just
|
||
|
checking the whole table for any bit that is valid for
|
||
|
any control type.
|
||
|
|
||
|
99-06-15 cgouge Bug 8382. Validation, new ICE65. Checks that the
|
||
|
Environment.Value column doesn't have invalid formatting
|
||
|
codes of the type [~]<sep>Value<sep> or the reverse.
|
||
|
|
||
|
99-06-15 cgouge Bug 7661. Support for new CSIDL values:
|
||
|
LocalAppData, CommonAppData, MyPicturesFolder, AdminToolsFolder
|
||
|
(with ALLUSERS support) and Win2000 ALLUSERS
|
||
|
TemplateFolder support. See the Darwin1.1 Shell Folder spec
|
||
|
for details.
|
||
|
|
||
|
99-06-09 cgouge Bug 9516. a DLL CA marked to impersonate ran in the
|
||
|
same process as msiexec. This caused the process
|
||
|
token to be LOCALSYSTEM when running from the service.
|
||
|
Thus calling CreateProcess() from the DLL resulted in a
|
||
|
new process running as the system. We now run all
|
||
|
impersonated DLL CAs through the remote CA server when
|
||
|
called from the service, not just for non-elevated
|
||
|
installs. In-script actions marked icaNoImpersonate
|
||
|
still run as before (in-proc).
|
||
|
|
||
|
99-06-08 cgouge Bug 9361. Validation, new ICE64, validates that
|
||
|
created directories in the user profile are added to the
|
||
|
RemoveFile table.
|
||
|
|
||
|
99-06-08 cgouge Bug 9253, New ICE63, validates the
|
||
|
InstallExecuteSequence table with respect to the
|
||
|
RemoveExistingProducts action.
|
||
|
|
||
|
99-06-08 bench Fixed bug 9512: the MsiApplyPatch api now accepts an
|
||
|
empty string for szPackage where it only accepted
|
||
|
NULL before. this change is to allow the api to be
|
||
|
called through automation.
|
||
|
|
||
|
99-06-08 bench Bug 9506: InstallExecute in a merged nested install
|
||
|
will now force execution of the script rather than
|
||
|
waiting for the parent to execute the script.
|
||
|
|
||
|
99-06-08 cgouge Buc 9476. Fixed SourceList API on Win9X. Most
|
||
|
critically, we were checking if the system owned a reg key,
|
||
|
but the function always failed on Win9X. The check
|
||
|
is no longer made. Also modified the way that we
|
||
|
detect if the modification is to the current user on a
|
||
|
Win9X system.
|
||
|
|
||
|
99-06-07 bench Bug 9525: to support remote-admin mode for Terminal
|
||
|
Services, we now always prepend "Global\" to mutex names
|
||
|
on NT5, even if we don't believe TS is installed. As
|
||
|
before, we also do this on NT4 but only when TS is installed.
|
||
|
Remote-admin mode is made to look like TS is not installed
|
||
|
when it really is, and is only supported on NT5.
|
||
|
|
||
|
99-06-07 cgouge Bug 9475. Dropped product versions (msispy, orca,
|
||
|
msival2) now track the MSI version. Note that sample
|
||
|
databases (testdb, etc) currently keep the same
|
||
|
versions.
|
||
|
|
||
|
99-06-07 mattwe Bug 9490: A user edited WinInit.INI without a newline
|
||
|
at the end of the file had the next line appended
|
||
|
incorrectly. This now works.
|
||
|
|
||
|
99-06-07 eugend Fixed bug # 9474. The following methods got added
|
||
|
to the Installer object:
|
||
|
- Installer.Patches(Product) - wrapper for
|
||
|
MsiEnumPatches, but unlike that, it returns only the string
|
||
|
list of patches, it doesn't bother with transforms.
|
||
|
- Installer.PatchTransforms(Product, Patch) - calls
|
||
|
MsiEnumPatches and returns the transform information
|
||
|
for a given patch.
|
||
|
- Installer.PatchInfo(Patch, Attribute) - wrapper for
|
||
|
MsiGetPatchInfo.
|
||
|
- Installer.RelatedProducts(Product) - wrapper for
|
||
|
MsiEnumRelatedProducts.
|
||
|
- Installer.AddSource(Product, User, Source) - wrapper
|
||
|
for MsiSourceListAddSource.
|
||
|
- Installer.ForceSourceListResolution(Product, User) - wrapper
|
||
|
for MsiSourceListForceResolution.
|
||
|
- Installer.ClearSourceList(Product, User) - wrapper
|
||
|
for MsiSourceListClearAll.
|
||
|
|
||
|
I've changed FeatureInfo.Attributes into a read-write
|
||
|
property - it wrapps MsiSetFeatureAttributes.
|
||
|
|
||
|
Doc bug # 9521 tracks this.
|
||
|
|
||
|
99-06-04 cgouge Bug 9497. A merged nested install on Win9X would
|
||
|
fail if the parent was already in the registry (in this
|
||
|
case due to an advt) but the child was not. We would
|
||
|
then reject the child package because we think the
|
||
|
parent is elevated. The check from bug 9400 (which
|
||
|
rejects the nested install) now only happens on non-9X
|
||
|
systems.
|
||
|
|
||
|
99-06-03 johndelo Bugs 9275-9278 MSI support for Fusion 1.0
|
||
|
For details, see implementation doc checked into the
|
||
|
DARWIN project under: DOC\Fusion.doc
|
||
|
|
||
|
99-06-03 johndelo Bug 9496 - we have no Easter egg in Darwin (did we ever?)
|
||
|
|
||
|
99-06-03 cgouge Bug 9491. Added private MsiIsProductElevated() API
|
||
|
for use by NT. This is not a public API, so is not in
|
||
|
the public header file, public automation layer, or
|
||
|
docs.
|
||
|
|
||
|
99-06-02 cgouge Bug 8972, part 2. LFN checks across components using
|
||
|
the same Directory table entry now work in ICE30
|
||
|
|
||
|
99-06-02 cgouge Bug 8972, validation. ICE30 made case-insensitive,
|
||
|
so that colliding files and directories don't have to
|
||
|
match exactly before a warning is generated.
|
||
|
|
||
|
99-06-02 bench Fixed bug 9498: a problem with multiple transforms
|
||
|
where the first transform adds a brand new string to
|
||
|
the database and the second transform replaces that
|
||
|
string with another.
|
||
|
|
||
|
99-06-02 mattwe Fixed bug 9495: /q on the command line had a buffer
|
||
|
reading problem where it skipped a null terminator.
|
||
|
|
||
|
99-06-02 bench Fixed bug 9487: 2 problems: 1 is that we leave
|
||
|
behind a half-baked InProgress key when failing to write
|
||
|
one of its values. 2 is that when we encounter a
|
||
|
half-baked InProgress key we are stuck and do not allow
|
||
|
an install to occur until the key is manually removed.
|
||
|
|
||
|
99-06-02 bench Fixed bug 9451: type 23 nested installs with
|
||
|
embedded cabs will now properly copy files when they are
|
||
|
merged with the parent transaction.
|
||
|
|
||
|
99-06-02 bench Fixed bug 9484: updated MsiZap to clear the new
|
||
|
cached databases and the LocalPackages key introduced by
|
||
|
the recent fix to bug 9395.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0602
|
||
|
-----------------------------
|
||
|
|
||
|
99-06-01 cgouge Bug 9478. Drop _InstallValidate table, which was
|
||
|
used by msival but isn't any longer. This is a change to
|
||
|
the makefile only, but the file lived with the other
|
||
|
CUB tables and was thus getting picked up still. It
|
||
|
will no longer appear in CUB files either.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0530
|
||
|
-----------------------------
|
||
|
|
||
|
99-05-28 bench Fixed bug 9488 - error deleting a key on NT for non-managed,
|
||
|
non-admin uninstalls. This was a regression of bug 9395.
|
||
|
|
||
|
99-05-28 chetanp bug 9373 - When fetching from a view in a read-only
|
||
|
database, and selecting to insert a temporary row, we
|
||
|
now prefetch the result set to avoid cursor
|
||
|
misplacement
|
||
|
|
||
|
99-05-27 cgouge Bug 7852. The EvalCom DLL used in Orca and MsiVal2
|
||
|
was leaving a temp file behind in the temp directory
|
||
|
after running validation. We now delete the file
|
||
|
before exiting.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0526.1
|
||
|
-----------------------------
|
||
|
|
||
|
99-05-26 chetanp bug 9482 - nested installs failure - occured due to
|
||
|
a change in status return code for MsiGetProductInfo
|
||
|
that was caused with the database caching spec
|
||
|
change.
|
||
|
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0526
|
||
|
-----------------------------
|
||
|
|
||
|
99-05-26 cgouge Bug 9231. Initial checkin of SourceList API. Users
|
||
|
can modify their own installs and per-machine installs
|
||
|
based on Browse policy. Admins can also modify
|
||
|
per-user managed installs for other users. Nobody can ever
|
||
|
modify another users non-managed installs. This
|
||
|
checkin consists of 3 calls, MsiSourceListClearAll,
|
||
|
MsiSourceListAddSource, and MsiSourceListForceResolution.
|
||
|
See the bug resolution and\or the API spec for
|
||
|
prototypes and more info. There should be NO changes in
|
||
|
Darwin behavior due to this bug, it consists solely of
|
||
|
new API implementation. The automation wrapper is not
|
||
|
a part of this checkin.
|
||
|
|
||
|
99-05-25 chetanp fixed bug 9395 - fixed security hole due to sharing
|
||
|
of cached database by having individual copies of the
|
||
|
cached database for every user and the machine (for
|
||
|
per-machine installation).
|
||
|
|
||
|
99-05-25 chetanp bug 9442 - Changed FormatText to resolve paths
|
||
|
correctly even if the action state is null if the
|
||
|
requested action state is not on NT5 and for registry writes
|
||
|
in the event we are writing HKCR info for a "lesser"
|
||
|
component (see bug 8062).
|
||
|
|
||
|
|
||
|
99-05-25 bench Fixed bug 9472: an extension of the fix to bug 9233
|
||
|
- embedded nested installs with embedded cabs now
|
||
|
work when copying more than one file in a cabinet.
|
||
|
|
||
|
99-05-25 chetanp fixed bugs 8041 - regression from bug 9381. Caused
|
||
|
HKCR info to be left in multi-user scenarios.
|
||
|
|
||
|
99-05-25 chetanp fixed bugs 9461 - regression from bug 9381. Caused
|
||
|
advertisement on non-shell aware systems.
|
||
|
|
||
|
99-05-25 cgouge Fixed Bug 9400. If a child install had a different
|
||
|
elevation state than the parent, we elevate stuff that
|
||
|
shouldn't be elevated. The child install will now
|
||
|
fail. If the child install is set to ignore failures,
|
||
|
we now correctly keep the parents elevation state
|
||
|
anyway.
|
||
|
|
||
|
99-05-25 mattwe Bug 7283: very long lines (> 255 bytes) to the log
|
||
|
are now broken up into pieces. Looks normal, except
|
||
|
for extra linefeeds.
|
||
|
|
||
|
99-05-25 Tracyf Fixed bug 9365: ReserveCost values are now
|
||
|
subtracted from the total disk cost at uninstall.
|
||
|
|
||
|
99-05-25 Tracyf Fixed bug 9047: fixed FDI problem in which the
|
||
|
install cannot exit upon error in certain cases (such as
|
||
|
filename same as a sibling folder name).
|
||
|
|
||
|
99-05-25 Tracyf Bug 9424: Added a new api: MsiSetFeatureAttributes,
|
||
|
which can be used to change the default attributes
|
||
|
for a feature at runtime (the defaults are authored in
|
||
|
the Attributes column of the Feature table).
|
||
|
|
||
|
99-05-25 Tracyf Bug 8971: Added support for Win2000 System File
|
||
|
Protection (SFP). In short, for any file Darwin decides
|
||
|
it needs to install, it will now check with SFP to
|
||
|
determine if the file is protected by Windows. If so, and
|
||
|
the file is missing, Darwin will call SFP at install time to
|
||
|
actually install the file. For details, see the PM spec at
|
||
|
ttp://officeweb/specs/TCO/Darwin%201_1%20System%20File%20Protection.html
|
||
|
|
||
|
and the dev spec at
|
||
|
ttp://dartools/dardev/specs/System%20File%20Protection.doc
|
||
|
|
||
|
|
||
|
99-05-24 bench Fixed bug 9453: ODBC errors that are ignorable with
|
||
|
UI are now ignored automatically in quiet mode.
|
||
|
|
||
|
99-05-24 eugend Fixed bug #9413: from now on event log strings will
|
||
|
be written in the package's language.
|
||
|
|
||
|
99-05-24 bench Fixed bug 8811: the cost associated with caching
|
||
|
.msp (patch package) files is now calculated and used
|
||
|
when determining out-of-disk-space and reporting space
|
||
|
requirements.
|
||
|
|
||
|
99-05-24 mattwe bug 8973: When we create shortcuts, we now delay notifying
|
||
|
the shell of their existence until the end of the install
|
||
|
script. This gives the icons and other files a chance to
|
||
|
be copied. This sometimes results in shortcuts initially
|
||
|
being displayed with default icons, but they will display
|
||
|
correctly at the end.
|
||
|
|
||
|
99-05-24 mattwe bug 9456: Due to database version 0.28 now longer being
|
||
|
supported (5/17/99), the localized transforms for instmsi
|
||
|
and copymsi needed to be updated.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0524
|
||
|
-----------------------------
|
||
|
|
||
|
99-05-24 chetanp bug 9461 - fix lack of removal of all class and
|
||
|
advertisement information upon uninstall. Regression from
|
||
|
bug 9381
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0523
|
||
|
-----------------------------
|
||
|
|
||
|
99-05-21 cgouge Bug 9447. Hydra story, part 3. When modifying an INI
|
||
|
file in the windows folder during a hydra
|
||
|
per-machine install, we call the TermsrvLogInstallIniFileEx()
|
||
|
API to notify hydra that the file has been touched.
|
||
|
Hydra will then propogate the file to each user at
|
||
|
logon time.
|
||
|
|
||
|
99-05-21 chetanp bug 9155 - fixed install error on locked down system
|
||
|
when attempting to update the EstimatedSize property
|
||
|
under the Uninstall key.
|
||
|
|
||
|
99-05-21 chetanp bug 9037 - shell notification for shortcut
|
||
|
creation/deletion. Part of the bug was external and got fixed
|
||
|
with NT 2040.
|
||
|
|
||
|
99-05-20 mattwe Bugs 9436: msiexec /q PROP=VALUE accidentally dropped the
|
||
|
property. (/qb PROP=VALUE worked.) This is fixed.
|
||
|
|
||
|
99-05-20 mattwe Bugs 7593, 9256: On NT5, we now attempt to use the
|
||
|
USERPROFILE and APPDATA environment variables for registry
|
||
|
icon paths. When we do, the registry key gets a EXPAND_SZ
|
||
|
type. Note that APPDATA is only available in NT5 starting
|
||
|
with build 2042.
|
||
|
|
||
|
99-05-19 cgouge Bug 7767. Part 2 of the Hydra story. This part syncs
|
||
|
up all of our GetWindowsDirectory calls so they have
|
||
|
the same value on the client and server side. All
|
||
|
calls to GetWindowsDirectory (which might result in a
|
||
|
lie on TS5 from a non-system context when called via
|
||
|
an API) have been replaced by a call to
|
||
|
MsiGetWindowsDirectory(). This function automatically calls
|
||
|
GetWindowsDirectory or GetSystemWindowsDirectory as
|
||
|
appropriate. Any future uses of GetWindowsDirectory() should
|
||
|
use MsiGetWindowsDirectory() instead. (except in
|
||
|
msiexec.exe)
|
||
|
|
||
|
99-05-19 eugend Fixed bug #8984: MsiSetComponentState API now
|
||
|
returns ERROR_INSTALL_USEREXIT if Cancel button had been
|
||
|
hit. Doc bug # 9446 tracks this change.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0519
|
||
|
-----------------------------
|
||
|
|
||
|
99-05-18 johndelo Bug 9432: product registration property InstallDate
|
||
|
now uses locale-independent date format: "YYYMMDD".
|
||
|
|
||
|
99-05-18 bench Bug 9426: multiple cabinets on the first disk are
|
||
|
now supported even if the volume label in the Media
|
||
|
table doesn't match the actual volume label.
|
||
|
|
||
|
99-05-18 bench Bug 9423: restored support for type 23 (relative
|
||
|
path to msi) nested installs.
|
||
|
|
||
|
99-05-17 chetanp bug 8062 - if we are writing to the per user HKCR
|
||
|
(HKCU\S\C) AND the key under which we are creating the
|
||
|
value does not exist BUT the corr. key in the per
|
||
|
machine HKCR (HKLM\S\C) exists, AND we are witing this
|
||
|
value as part of a lesser component, then we skip
|
||
|
creating the key-value altogether since this will then
|
||
|
shadow the per machine HKCR.
|
||
|
|
||
|
|
||
|
99-05-17 chetanp bug 8809 fixed. we now honour the MIME_ column of
|
||
|
the Extension table in writing the "Content Type" value
|
||
|
under the extension key. !!!NOTE: we no longer allow
|
||
|
for database versions < 30!!!
|
||
|
|
||
|
|
||
|
99-05-17 eugend I've added a twist to the fix to 6623: if the error
|
||
|
exists in the table, but is defined as an empty
|
||
|
string, I don't look anymore for it in the DLL. This is
|
||
|
useful for packages that do not want to display
|
||
|
certain errors.
|
||
|
|
||
|
99-05-17 cgouge Bug 8521. Part 1 of the Hydra story for 1.1. This
|
||
|
checkin includes support for the registry propogation
|
||
|
system in TS5. When beginning a transaction, we call a
|
||
|
special Hydra API to make a snapshot of .Default. We
|
||
|
then do all of our per-user registry writes to
|
||
|
.Default instead of HKCU. At the end of the install, we
|
||
|
call another API and Hydra diffs the snapshot with the
|
||
|
current state, propogating any changes to their
|
||
|
registry system and from there to all users. This fix also
|
||
|
elevates custom actions on per-machine Hydra 5
|
||
|
installs so that registry writes go to .Default and will
|
||
|
be propogated by this system.
|
||
|
|
||
|
Note: msiexec.exe is now marked as a hydra aware
|
||
|
app in the PE header.
|
||
|
|
||
|
99-05-17 cgouge Bug 8843. Quick validation fix for bug in ICE17. Now
|
||
|
correctly skips properties that aren't the full
|
||
|
string when controls reference the binary table
|
||
|
|
||
|
99-05-17 chetanp bug 9409 - added new msidbLocatorTypeRawValue =
|
||
|
0x00000002 value to enum msidbLocatorType
|
||
|
|
||
|
99-05-17 chetanp bug 9334 - We have removed the source resoution
|
||
|
calls that happen in registry, ini file and shortcut
|
||
|
costing. We now remember if source resolution failed
|
||
|
during selfunreg and skip it for the rest of the files
|
||
|
that were installed on source (logging a debug error).
|
||
|
|
||
|
99-05-17 mattwe Bug 9081: The network icon has been updated to the
|
||
|
latest version in current Windows.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0513
|
||
|
-----------------------------
|
||
|
|
||
|
99-05-13 mattwe Bug 8872: instmsi.msi now thoroughly uppercased for
|
||
|
Windows Installer.
|
||
|
|
||
|
99-05-13 mattwe Bug 9417: instmsi.msi is now thoroughly frozen on
|
||
|
schema 30, with action text and error messages from
|
||
|
current builds. These must remain backwards compatible.
|
||
|
|
||
|
99-05-13 cgouge Bug 8882. On NT5 with client side caching enabled,
|
||
|
we no longer cache the results of a component path
|
||
|
request for an RFS component. The source is still
|
||
|
considered valid though. If a share is CSC enabled and
|
||
|
offline, the source is rejected and we fallback on the
|
||
|
complete resolution process.
|
||
|
|
||
|
99-05-12 bench Fixed bug 9411: If running from a media (CD or
|
||
|
floppy) with a blank volume label while the Media table
|
||
|
specifies a non-blank label, maintenance mode installs
|
||
|
would not accept the media, even though first-time
|
||
|
installs did. This now works in maintenance mode as
|
||
|
well.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0512
|
||
|
-----------------------------
|
||
|
|
||
|
99-05-23 mattwe Bug 9416: Updated instmsi/copymsi media sequence table
|
||
|
|
||
|
99-05-11 bench Bug 9374: introduced a new custom action type best
|
||
|
described as a "delayed launch condition". The new
|
||
|
type, 19, will display an error message and return
|
||
|
failure to end the installation.
|
||
|
|
||
|
99-05-11 bench Bug 9320: fixed problem with mismatching volume
|
||
|
labels and Media table-specified labels after a patch is
|
||
|
applied.
|
||
|
|
||
|
99-05-11 cgouge Bug 9260, Validation, ICE61, a new vbscript ICE,
|
||
|
checks the upgrade table for various problems, such as
|
||
|
removing newer versions, not having public properties,
|
||
|
etc. Available only in the full CUB file.
|
||
|
|
||
|
99-05-11 chetanp fixed bug 9349 - we now dynamically resize the
|
||
|
buffer that holds the command line that is generated from
|
||
|
the MsiAdvertiseScript API. This allows for greater
|
||
|
total transform path length than before (which was at
|
||
|
@850).
|
||
|
|
||
|
99-05-10 mattwe Per hgrant's request, custexe1.exe in
|
||
|
testdb now has a file version in the table.
|
||
|
1.0.0.0
|
||
|
|
||
|
99-05-10 mattwe 9410: msimsg is now going to be released
|
||
|
in the commondir (and built in individual
|
||
|
flavors.) It also has a file version now
|
||
|
for copymsi/instmsi.
|
||
|
|
||
|
99-05-10 mattwe 9406: msimsg.dll is now included with
|
||
|
instmsi/copymsi.
|
||
|
|
||
|
99-05-10 mattwe 9141: When the installer initiates a reboot,
|
||
|
the fact will be recorded in the event log.
|
||
|
|
||
|
99-05-10 mattwe 9402: Async custom actions were giving false
|
||
|
memory leaks, (and missing real leaks) because
|
||
|
we were checking for open handles on the parent
|
||
|
thread rather than the CA.
|
||
|
|
||
|
99-05-10 eugend I've fixed bug # 6623: if Darwin cannot find an
|
||
|
Error ar an ActionText entry in a package's table, it
|
||
|
looks it up now in MSIMSG.DLL. I've opened bug # 9406
|
||
|
just to make sure MSIMSG.DLL gets into
|
||
|
InstMsi/CopyMsi.exe.
|
||
|
|
||
|
99-05-10 bench Bug 9405: fixed MsiRecord memory leak in error cases
|
||
|
in ComPlus script operations.
|
||
|
|
||
|
99-05-10 bench Bug 9262: added ActionData messages for the
|
||
|
RegisterComPlus and UnregisterComPlus actions, and the
|
||
|
associated ActionText table entries.
|
||
|
|
||
|
99-05-07 davidmck Fixed bug 9404. Turns out the format of the Shell
|
||
|
Change Notify Extended Event will not actually work on
|
||
|
NT5 due to problems marshalling the product code
|
||
|
string across. Raymond Chen has worked out a correct way
|
||
|
of doing it and I've checked in the darwin change for
|
||
|
it.
|
||
|
|
||
|
99-05-06 cgouge Bug 9380. Darwin was elevating in the case where a
|
||
|
product was installed both per-user and deployed
|
||
|
per-machine. The per-user registration was skipped when
|
||
|
determining the managed state, but was used for all
|
||
|
other actions. Thus the install would end up elevated
|
||
|
even though the per-user install should shadow the
|
||
|
per-machine install. We now correctly find the per-user
|
||
|
install and report that the app is not managed.
|
||
|
|
||
|
99-05-06 cgouge Bug 9166. When told to recache the package and given
|
||
|
a product code, we ignore the last used source and
|
||
|
immediately begin source resolution. If the search
|
||
|
order has "m"edia first, we demote it to second and
|
||
|
promote the source type that was second to first in the
|
||
|
search order. The resolved source becomes the source
|
||
|
for the install and the last used source. The modified
|
||
|
search order is then discarded. If given a full path
|
||
|
to a package and told to recache, we use the
|
||
|
provided source.
|
||
|
|
||
|
99-05-06 mattwe 9367: Modified various error strings based on
|
||
|
recommendations from UA.
|
||
|
|
||
|
99-05-06 chetanp fixed bug 9155 - we now allow installs that do not
|
||
|
write anything under the HKCR regsitry hive to
|
||
|
succeed on systems where the user is locked out from
|
||
|
updating HKCR.
|
||
|
|
||
|
99-05-06 bench Bug 8698: we now return a new error code,
|
||
|
ERROR_PATCH_TARGET_NOT_FOUND, when a patch cannot be applied
|
||
|
either because the product is not installed or a
|
||
|
different version of the product is installed.
|
||
|
|
||
|
99-05-05 mattwe bug 7967 - We now disable cancel effectively for the
|
||
|
full UI. Hitting escape or the 'x' on the dialog won't
|
||
|
do anything when the cancel button is hidden.
|
||
|
|
||
|
99-05-05 chetanp bug 9381 - we never remove registration for
|
||
|
"filename only" registrations. the "filename only"
|
||
|
registrations allow sharing of com registration such that each
|
||
|
app has its own private copy of the server. "fusion"
|
||
|
specs recommend that the registration itself be
|
||
|
refcounted so that we know when to remove it. this has
|
||
|
been punted for 1.1
|
||
|
|
||
|
|
||
|
99-05-05 bench Bug 9306: nested installs and uninstalls performed
|
||
|
by RemoveExistingProducts will now display an error
|
||
|
for problems initializing the nested install or
|
||
|
uninstall.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0505
|
||
|
-----------------------------
|
||
|
|
||
|
99-05-04 davidmck Checked in more 64-bit issues. We can now install on
|
||
|
Alpha64.
|
||
|
|
||
|
99-05-04 davidmck Fixed bug 9337 - we now generate an exception fault
|
||
|
when we are out of memory and there is no user
|
||
|
interaction.
|
||
|
|
||
|
99-05-03 mattwe Bug 8993: BackupFile now restores file attributes
|
||
|
correctly when it restores a file that wasn't removed
|
||
|
initially.
|
||
|
|
||
|
99-05-03 bench Bug 9084: fixed but in path expansion code that
|
||
|
sometimes added a second backslash after the drive
|
||
|
letter. This caused failures with relative paths for the
|
||
|
database or transforms, among other things.
|
||
|
|
||
|
99-05-03 cgouge Fixed bugs 7589, 7684, 8153, 9353. Five changes to
|
||
|
the SourceList UI. This involved changes to 2 existing
|
||
|
string resources, dropping 1 existing string, adding
|
||
|
1 new string, and changing error.idt for one error.
|
||
|
Loc work required. For gory detials, see the doc
|
||
|
attached to 7589.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0429
|
||
|
-----------------------------
|
||
|
|
||
|
99-04-29 eugend Bug # 7753 again: I've changed the value of the
|
||
|
Password attribute to 0x0200000, 2097152 in decimal. I've
|
||
|
updated doc bug # 9355 as well.
|
||
|
|
||
|
99-04-29 tracyf Bug 9280 - Darwin now writes an "EstimatedSize"
|
||
|
value under the Uninstall key. This value represents the
|
||
|
estimated size, in KB, that the associated product
|
||
|
is currently consuming on the user's machine (if the
|
||
|
product is spread across more than one volume, the
|
||
|
EstimatedSize is the summation across all volumes).
|
||
|
This value is updated each time the user add/removes
|
||
|
features during maintenance mode.
|
||
|
|
||
|
99-04-29 davidmck Fixed bug 9360 - the sorting routine for the volume
|
||
|
cost list called PutInteger rather than PutHandle.
|
||
|
|
||
|
99-04-28 bench Bug 9356: fix assert during admin install of a
|
||
|
package with an embedded cabinet. The bug was caused by a
|
||
|
regression of bug 9233.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0428
|
||
|
-----------------------------
|
||
|
|
||
|
99-04-27 eugend Fixed bug # 7753: I've added the Password edit
|
||
|
control stylebit, its value is 131072. If specified in
|
||
|
the Attributes field of the Control table, it creates
|
||
|
an edit control that displays all characters as an
|
||
|
asterisk (*) as they are typed into the control. Doc
|
||
|
bug # 9355 tracks this.
|
||
|
|
||
|
99-04-27 malcolmh Fixed bug 9006: Fix problem resizing our internal
|
||
|
buffer when you have backslashes in your registry
|
||
|
keypath value
|
||
|
|
||
|
99-04-26 chetanp "bug 8041 - remove class registry left overs in
|
||
|
multiuser scenarios.
|
||
|
|
||
|
99-04-26 chetanp bug 9344 - fix RemoveFile action for folders set to
|
||
|
be deleted upon uninstallation of components (from
|
||
|
the RemoveFile table).
|
||
|
|
||
|
99-04-26 bench bug 8499: error string displayed during a binary
|
||
|
patch application failure is now an authorable ship
|
||
|
error.
|
||
|
|
||
|
99-04-26 davidmck Checked in further changes for 64-bit builds.
|
||
|
Updated the object pool for both the database and the
|
||
|
handler. See 64bit.txt for more details.
|
||
|
|
||
|
99-04-23 mattwe Bug 9138: The FDI server (cabinet/compressed) will now
|
||
|
restart correctly when it receives an Open request in
|
||
|
the middle of reading a file.
|
||
|
|
||
|
99-04-23 bench Bug 9122: Validation of Upgrade table and Upgrade
|
||
|
actions is in.
|
||
|
|
||
|
99-04-23 bench Bug 9233: addition fix to this bug to handle
|
||
|
packages with the old stream naming convention.
|
||
|
|
||
|
99-04-23 bench Bugs 9208, 9214: the following nested install types
|
||
|
are no longer supported: relative msi path (23),
|
||
|
property name/key (55) and asynchronous (+128). an error
|
||
|
message will be displayed when one of these types is
|
||
|
attempted.
|
||
|
|
||
|
99-04-23 bench Bug 8709: fixed thread handle leak that occured when
|
||
|
asynchronous custom actions finished before the end
|
||
|
of the installation.
|
||
|
|
||
|
99-04-22 mattwe Bug 9248 - refix - We must elevate to acquire token
|
||
|
privileges. Before, we grabbed them pell-mell, and
|
||
|
we just happened to be impersonated in the right
|
||
|
scenarios. Now we do it the right way.
|
||
|
|
||
|
99-04-22 cgouge Bug 9122. To support the upgrade actions
|
||
|
(specifically, RemoveExistingProducts) ICE27 now has a
|
||
|
PostExecution phase, which ocurrs after InstallFinalize.
|
||
|
Currently, RemoveExistingProducts is the only action valid
|
||
|
there.
|
||
|
|
||
|
99-04-22 cgouge Bug 9324. Added InstallExecuteAgain information to
|
||
|
ICE validation. (ICE27). Restrictions are the same as
|
||
|
InstallExecute.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0421
|
||
|
-----------------------------
|
||
|
|
||
|
99-04-20 malcolmh Fixed bug 8478: New behavior for secure transforms.
|
||
|
|
||
|
99-04-20 bench Fixed bug 9233: nested substorage installs will now
|
||
|
work with embedded cabinets.
|
||
|
|
||
|
99-04-19 mattwe The following files have been updated for use with
|
||
|
instmsi:
|
||
|
shfolder.dll
|
||
|
imagehlp.dll
|
||
|
msls31.dll
|
||
|
usp10.dll
|
||
|
riched20.dll
|
||
|
|
||
|
99-04-19 chetanp fixed bug 9168 - we now handle permanent components
|
||
|
that were installed to different locations via
|
||
|
different products. We now use separate GUIDS from
|
||
|
{00000000-0000-0000-0000-000000000000} to
|
||
|
{000000FF-0000-0000-0000-000000000000} to represent the system as a
|
||
|
client product for possibly 256 different locations for
|
||
|
a permanent component to be installed (via different
|
||
|
product). Afterwards we simply keep using the
|
||
|
{00000000-0000-0000-0000-000000000000} GUID.
|
||
|
|
||
|
99-04-16 bench Added new Upgrade functionality. In short, the new functionality
|
||
|
allows easy upgrades between products with different product
|
||
|
codes. For more information, see the spec on
|
||
|
http://officeweb/specs/tco/darwinupgrades1_1.html and the design doc
|
||
|
on \\bench4\public\upgrade design 1.1.doc.
|
||
|
|
||
|
Documentation in msi.chm is pending.
|
||
|
|
||
|
99-04-16 bench Added new action: InstallExecuteAgain. The action is identical
|
||
|
to InstallExecute but since it has a different name it can be
|
||
|
used with InstallExecute in the same sequence table.
|
||
|
|
||
|
99-04-16 bench Changed schema.msi schema version to 102 for several changes
|
||
|
made to the schema. The changes are:
|
||
|
|
||
|
addition of Upgrade table
|
||
|
addition of Class.Attributes column
|
||
|
addition of Services.Description column
|
||
|
|
||
|
Also bumped minor version of Darwin files. The version is
|
||
|
now 1.02.BBBB.U.
|
||
|
|
||
|
99-04-16 bench Added new Class.Attributes column to schema.msi as part of
|
||
|
the schema 102 additions.
|
||
|
See relnotes entry "99-03-23 johndelo Bug 9094" for more
|
||
|
information.
|
||
|
|
||
|
99-04-16 mattwe Fixed bug: 9197. We now impersonate while setting
|
||
|
icon paths into shortcuts. This gives the shell on
|
||
|
Windows 2000 the opportunity to recognize these as
|
||
|
roaming paths.
|
||
|
|
||
|
Fixed bugs 9288,9289: Several columns in the
|
||
|
ServiceControl and ServiceInstall tables are now
|
||
|
formatted.
|
||
|
|
||
|
Fixed bug: 8993. We now clear and re-set the
|
||
|
hidden, read-only and system attributes on the
|
||
|
autoexec.bat file on Win9X while writing environment
|
||
|
variables.
|
||
|
|
||
|
Fixed bug: 8381. At the end of script execution on NT,
|
||
|
we broadcast a WM_SETTINGCHANGE message to let the
|
||
|
system know we've change environment variables.
|
||
|
This allows you to change variables for new processes
|
||
|
without requiring a reboot.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0415
|
||
|
-----------------------------
|
||
|
|
||
|
99-04-14 malcolmh Fixed bug 8908: We now have a Description column in
|
||
|
the ServiceInstall table which allows an author to
|
||
|
specify a description for a service. This column is
|
||
|
presumed to exist only in databases with schema versions
|
||
|
greater than 101.
|
||
|
|
||
|
99-04-14 cgouge Bug 8122 (part 2). Validation, added ICE60, which
|
||
|
does the check for the file table that internal
|
||
|
validation used to do. Displays a warning if an entry in the
|
||
|
file table has a version but no language, and is not
|
||
|
a font or companion file reference.
|
||
|
|
||
|
99-04-14 cgouge Bug 8122. The requirement that all files with
|
||
|
versions have languages has been removed from the internal
|
||
|
field validation. Validation of the "Version" data
|
||
|
type now only checks that the version is valid. The
|
||
|
language requirement will be in a new ICE, ICE60.
|
||
|
|
||
|
99-04-14 tracyf Bug 9299 - removed the FixedSize attribute from
|
||
|
bitmaps in sample MSI's.
|
||
|
|
||
|
99-04-14 tracyf Bug 9297 - disabled the ValidateProductID
|
||
|
ControlEvent in sample MSI's.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0414
|
||
|
-----------------------------
|
||
|
|
||
|
99-04-13 johndelo Schema fixes - bugs 9120 and 9163
|
||
|
Note that these fixes were propagated back to
|
||
|
schema 100, so as to be incorporated into the SDK.
|
||
|
All active databases and idt files have been
|
||
|
updated (as far I can find). The following changes:
|
||
|
LaunchCondition.Description is now non-nullable
|
||
|
ODBCDriver.Description is not localizable
|
||
|
_SummaryInformation.Application is "Windows Installer"
|
||
|
_Validation updated to reflect LaunchCondition change.
|
||
|
|
||
|
99-04-12 malcolmh Fixed bug 9114: We now automatically suppress
|
||
|
autorun during installs.
|
||
|
|
||
|
99-04-09 malcolmh Fixed bug 8444: AD: In no UI case Darwin does not
|
||
|
log failure of installs due to LaunchCondition table
|
||
|
|
||
|
99-04-09 malcolmh Fixed bug 9116: We now write OutOfDiskSpace messages
|
||
|
to the event log.
|
||
|
|
||
|
99-04-09 malcolmh Fixed bug 9217: Security: Should remove "everyone"
|
||
|
read access from config.msi security descriptor
|
||
|
|
||
|
99-04-09 malcolmh Fixed bug 9036: CCPSearch, AppSearch stop searching
|
||
|
once it encounters a drive it cannot access
|
||
|
|
||
|
99-04-09 malcolmh Fixed bug 8744: MsiGetUserInfo returns 1 when
|
||
|
Organization name is not set.
|
||
|
|
||
|
99-04-09 malcolmh Fixed bug 9037. Changed the way we do shell
|
||
|
notification for shortcuts
|
||
|
|
||
|
99-04-09 malcolmh Fixed bug 9236: AD: Darwin does not recover
|
||
|
completely from an install that causes an AV
|
||
|
|
||
|
99-04-09 cgouge Bug 8161. When merging a table via
|
||
|
MsiDatabaseMerge(), if two columns string columns have different
|
||
|
length limits, we take the larger of the two limits (or 0
|
||
|
for unlimited length if either column has that
|
||
|
limit).
|
||
|
|
||
|
99-04-09 cgouge Bug 9252. uisample.msi (and thus all of our tools
|
||
|
installers) was now allowing the Admin target location
|
||
|
to be changed via the edit box in the dialog, only
|
||
|
via the browse dialog. Added a control event to set the
|
||
|
directory.
|
||
|
|
||
|
99-04-09 cgouge Fixed bug 9088. The Path data type was unnecessarily
|
||
|
strict when it came to properties and filenames. I
|
||
|
removed the requirement that properties be surrounded
|
||
|
only be '\' characters and the restriction that all
|
||
|
components of the path satisfy the short filename
|
||
|
syntax. It is now the LFN syntax, except when specifying
|
||
|
a single level deep subdir. In that case you can use
|
||
|
the SFN|LFN syntax.
|
||
|
|
||
|
99-04-09 mattwe Bug 9248: We now acquire our token privileges once per
|
||
|
process, instead of every time we'd need the particular
|
||
|
privilege. (Each place still makes a call, but we see
|
||
|
that've already requested.) Should be a *big* advertising
|
||
|
performance gain. (On the order of 30% time savings in some
|
||
|
scenarios.)
|
||
|
|
||
|
99-04-08 cgouge Bug 9147, Validation. Added ICE58, which checks that
|
||
|
you don't have more than 80 rows in the Media table.
|
||
|
The ICE is found only in the full darice.cub file.
|
||
|
|
||
|
99-04-08 chetanp fixed bug 9251so that we now simply log the SelUnreg
|
||
|
failure w/o putting up an error dlg.
|
||
|
|
||
|
99-04-08 chetanp bug 9246 - We now have
|
||
|
SCRIPTFLAGS_REGDATA_CLASSINFO and SCRIPTFLAGS_REGDATA_EXTENSIONINFO for whether
|
||
|
to populate the class / extension information. The
|
||
|
MIME and verb information is tied to the extension
|
||
|
information while the Clasid key under the ProgId is tied
|
||
|
to the class information. We defined
|
||
|
SCRIPTFLAGS_REGDATA_APPINFO to SCRIPTFLAGS_REGDATA_CLASSINFO |
|
||
|
SCRIPTFLAGS_REGDATA_EXTENSIONINFO for backward level source
|
||
|
compatibility. Internally we translate
|
||
|
SCRIPTFLAGS_REGDATA_APPINFO_OLD to SCRIPTFLAGS_REGDATA_APPINFO to
|
||
|
maintain backward level binary compatibility.
|
||
|
|
||
|
99-04-08 davidmck Fixed bugs 8733 and 8818 - removed
|
||
|
INSTALLPROPERTY_VOLUMEPREFERENCE since it is not used from msi.h.
|
||
|
Removed INSTALLPROPERTY_ADVTFLAGS since it it not public.
|
||
|
|
||
|
99-04-08 tracyf Fixed bug 9225 - for files extracted from cabinets,
|
||
|
we were incorrectly setting the date/time, such that
|
||
|
it was 7 or 8 hours off (dependiing on daylight
|
||
|
savings) from the source file's date/time. We now
|
||
|
properly set the date/time as universal (not local) time.
|
||
|
In addition, to be consistent with how we set the
|
||
|
date/time for uncompressed files, the "created" and
|
||
|
"modified" times are set to that of the source file,
|
||
|
while the "last accessed" time is set to the current time
|
||
|
(i.e. the time of the install).
|
||
|
|
||
|
99-04-07 eugend Fixed bug # 9206: CMsiDialog::WindowShow() does not
|
||
|
fail anymore if the next window in the tab-order that
|
||
|
can take the focus is a child window of a Darwin
|
||
|
control.
|
||
|
|
||
|
99-04-07 eugend Fixed bug # 9232: ship errors do not start anymore
|
||
|
in "Error nnnn: " string, but this piece of info is
|
||
|
still written into the log file.
|
||
|
|
||
|
99-04-07 eugend Fixed bug # 9249: DirectoryCombo controls on
|
||
|
AdminBrowse dialogs do not get updated now whenever the user
|
||
|
selects a different directory in the DirectoryList
|
||
|
control.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0407
|
||
|
-----------------------------
|
||
|
|
||
|
99-04-06 cgouge Bug 9235, Validation. ICE20 will not fail when
|
||
|
looking for the name of the dialogs to validate in the UI
|
||
|
sequence tables if the tables do not exist, but
|
||
|
LIMITUI is not set either.
|
||
|
|
||
|
99-04-06 cgouge Bug 9077. Validation. ICE26 will no longer complain
|
||
|
about required actions in the UI sequence tables if
|
||
|
LIMITUI is set in the package.
|
||
|
|
||
|
99-04-06 mattwe Bug 9189: We now only set in the user's environment
|
||
|
variables when we're running from the service. The
|
||
|
client normally doesn't need this, and when we're running
|
||
|
the client in somebody else's process, it's a bad thing.
|
||
|
|
||
|
99-04-05 eugend UI Sample uses now Tahoma font instead of MS Shell
|
||
|
Dlg and buttons on Cancel dialog are 4 dlus appart.
|
||
|
|
||
|
00-01-05 chetanp bug 8062:we now write the HKCR information
|
||
|
associated with a component on NT5 even if a higher versioned
|
||
|
keyfile already existed, to ensure that HKCR entries
|
||
|
are not missing because the better keyfile was
|
||
|
installed by another user (or per machine and this
|
||
|
installation is per user and vice versa). These writes are
|
||
|
different from the regular writes in that we write the
|
||
|
registry entries only if they are absent in an
|
||
|
attempt to prevent overwriting possible writes from the
|
||
|
better component.
|
||
|
|
||
|
99-04-02 eugend All the fixes suggested so far are in the
|
||
|
UITESTDB.MSI. We're still waiting for the new icons.
|
||
|
|
||
|
99-04-02 tracyf Bug 7954: if any error occurs while attempting to
|
||
|
copy a file, we now silently ignore (and log) the error
|
||
|
if ALL the following conditions are true:
|
||
|
|
||
|
1) There's an existing file on the machine.
|
||
|
2) Our source file is unversioned.
|
||
|
3) Our source file is not authored as a Companion
|
||
|
file.
|
||
|
4) The "Force All" reinstall mode (the 'a' flag in
|
||
|
the REINSTALLMODE property) is NOT set.
|
||
|
|
||
|
In addition, on uninstall, errors attempting to
|
||
|
delete files will now be ignored and logged as well (in
|
||
|
the delete case, regardless of whether the file is
|
||
|
versioned/unversioned, companion or not, etc).
|
||
|
|
||
|
Note that when logging ignored errors, we do not
|
||
|
attempt to re-format the error string - we send it to
|
||
|
the log as is. Thus, the message in the log will not
|
||
|
explicitly mention that the error was ignored, but
|
||
|
the fact that the install proceeds implies that. Not
|
||
|
ideal, but per triage the extra work of adding a
|
||
|
number of new error strings to explicitly call this out
|
||
|
was punted.
|
||
|
|
||
|
Also note that when logging ignored errors in a
|
||
|
verbose log, you may see the error string appear more
|
||
|
than once. The first is because of our automatic
|
||
|
verbose logging of any posted error record. The second is
|
||
|
explicitly sent to the log when we decide to ignore
|
||
|
the posted error - this is done so that ignored
|
||
|
errors get logged in the non-verbose case as well.
|
||
|
|
||
|
99-04-01 mattwe Bug 9209 - For remote volumes, we no longer
|
||
|
create config.msi directories. This is to plug
|
||
|
security holes where we can't adequately secure
|
||
|
the backup directory.
|
||
|
|
||
|
99-04-01 eugend I've added new bitmaps to UISample.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0331
|
||
|
-----------------------------
|
||
|
|
||
|
99-03-30 cgouge Bug 9207. Validation. string buffer problems
|
||
|
generating an error message in ICE03 if the primary keys
|
||
|
were really long (collectively greater than 255). Fixed
|
||
|
so that the length is not limited.
|
||
|
|
||
|
99-03-30 malcolmh Fixed bug 8962: Darwin does not handle well the
|
||
|
installing of a package per user and per machine together
|
||
|
on a machine.
|
||
|
|
||
|
99-03-30 eugend Fixed bug # 9156: Darwin doesn't cause anymore
|
||
|
crashes in SHELL32.DLL on NT5.
|
||
|
|
||
|
99-03-29 cgouge Bug 9144. ICE56 has been updated to exempt from its
|
||
|
check (for bogus admin installs) any directory which
|
||
|
has no files and which has no descendants that have
|
||
|
files. This is a relaxation of our restriction that
|
||
|
every MSI has a single root dir so that Beagle can pass
|
||
|
validation with their default shortcut component.
|
||
|
|
||
|
99-03-29 cgouge Bug 9122 (ICE45 part). Validation: ICE45 updated to
|
||
|
handle in the new upgrade table schema and check for
|
||
|
reserved bits in the appropriate column.
|
||
|
|
||
|
99-03-29 malcolmh Fixed bug 9140: Loop condition in FeatureCache.
|
||
|
|
||
|
99-03-29 davidmck Fixed bug 9145 - Mark our unicode log files as
|
||
|
unicode.
|
||
|
|
||
|
99-03-29 malcolmh Fixed bug 8847: Sourcelist not being updated by
|
||
|
/fvomus or /i REINSTALLMODE=vomus
|
||
|
|
||
|
99-03-29 malcolmh Fixed bug 8478. We now cache secure transforms on
|
||
|
the local machine. Source transforms have been rolled
|
||
|
into secure transforms. Any reference we see to a
|
||
|
source transform will automatically be treated like a
|
||
|
reference to a secure transform.
|
||
|
|
||
|
99-02-29 mattwe bug 8812 - The Product Icon is now written with
|
||
|
%USERPROFILE% when possible for roaming.
|
||
|
|
||
|
99-03-29 chetanp bug 7883 - shortcuts were not being created for
|
||
|
advertised features of published apps.
|
||
|
|
||
|
99-03-26 tracyf Fixed bug 8938. Darwin was duplicating multiSZ data
|
||
|
in the registry when writing more than one multiSZ
|
||
|
value under a single registry key.
|
||
|
|
||
|
99-03-26 tracyf Fixed bugs 9112 and 9138. 9112 involves the lack of
|
||
|
automatic retry in some cases during a quiet
|
||
|
install, if the net connection is lost. 9138 is similar,
|
||
|
but specifically involves loss of the net connection
|
||
|
when the source is a cabinet.
|
||
|
|
||
|
99-03-26 bench bug 9195: added a Language value to the per-machine
|
||
|
configuration info. this may be used by future
|
||
|
versions of Darwin to determine the language of an install
|
||
|
that belongs to a different user. the exact key and
|
||
|
value are:
|
||
|
|
||
|
Key:
|
||
|
|
||
|
HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall\[ProductCode GUID]
|
||
|
|
||
|
Name: Language Data: language id (1033 for example) Type: REG_DWORD
|
||
|
|
||
|
99-03-26 mattwe Fixed bug # 9031: There is a new property
|
||
|
REBOOTPROMPT, which when set to Suppress will
|
||
|
prevent any user interaction before a reboot.
|
||
|
It won't prompt any new reboots, it just prevents
|
||
|
asking the user about it.
|
||
|
|
||
|
99-03-25 eugend Fixed bug # 9177: I've eliminated the Reinstall
|
||
|
button from MaintenanceTypeDlg.
|
||
|
|
||
|
99-03-25 eugend Fixed bug # 7925: if CreateFontIndirect fails in
|
||
|
CMsiControl::ChangeFontStyle, we report now the value of
|
||
|
GetLastError().
|
||
|
|
||
|
99-03-25 eugend Fixed bug # 8707: I've eliminated leaking thread
|
||
|
created in FDI_Interface::LaunchFDIServer().
|
||
|
|
||
|
99-03-24 malcolmh Fixed bug 9179: Too many cabinets can cause database
|
||
|
cache failure
|
||
|
|
||
|
99-03-24 malcolmh Fixed bug 9006. We now handle registry value
|
||
|
keypaths where the value name contains a backslash.
|
||
|
|
||
|
99-03-24 cgouge Bug 8739, 9151. The ability to select and browse to
|
||
|
media is also gated by the user rights and elevation
|
||
|
state of the package. If the user is not an admin,
|
||
|
s/he can only use media on non-elevated installs. The
|
||
|
policies that control this behavior are the new
|
||
|
DisableMedia and AllowLockdownMedia policies. Note that
|
||
|
DisableMedia is very similar, but not exactly the same
|
||
|
as, leaving "m" out of the search order. Media being
|
||
|
disabled for security/policy reasons will cause the
|
||
|
lastused source to be rejected if it is a media entry,
|
||
|
whereas removing "m" from the search order will
|
||
|
accept the media entry as long as it is the
|
||
|
LastUsedSource.
|
||
|
|
||
|
This leads to the case where you could end up with a
|
||
|
sourcelist dropdown that is compeltely empty. and
|
||
|
browsing is also disabled, the sourcelist dialog is now
|
||
|
utterly useless. In this case, if browsing is also
|
||
|
disabled, we don't even bother to show the dialog,
|
||
|
|
||
|
99-03-24 cgouge Bug 8738, 9151. The ability to patch is now gated by
|
||
|
the same admin/elevation logic as Browsing described
|
||
|
below. The policies for this are DisablePatch and
|
||
|
the new AllowLockdownPatch policy.
|
||
|
|
||
|
99-03-24 cgouge Bug 8737, 9151. The default security level for
|
||
|
browsing in the sourcelist dialog is now more secure. If a
|
||
|
user is not an admin, s/he cannot browse if the
|
||
|
install is elevated. Users can browse for non-elevated
|
||
|
installs, and admins can browse whenever they want. The
|
||
|
DisableBrowse policy will always disable browsing,
|
||
|
and the new AllowLockdownBrowse policy will allow
|
||
|
anybody to browse.
|
||
|
The ability to recache the msi from unblessed sources
|
||
|
is gated by the same log and policies.
|
||
|
|
||
|
99-03-24 cgouge Bug 8320, logging is now correct when renaming files
|
||
|
on reboot.
|
||
|
|
||
|
99-03-24 chetanp fixed bug 8417 - For RFS installed components having
|
||
|
missing auxiliary registry key paths (on NT5),
|
||
|
MsiQueryFeatureState used to return
|
||
|
INSTALLSTATE_SOURCEABSENT instead of INSTALLSTATE_BROKEN even if the source
|
||
|
was infact present. NOTE: We now return
|
||
|
INSTALLSTATE_BROKEN if the auxiliary registry key path of a RFS
|
||
|
installed component is missing (inplace of
|
||
|
INSTALLSTATE_SOURCEABSENT) when the source is infact present.
|
||
|
On the other hand if the source is missing, we still
|
||
|
return INSTALLSTATE_SOURCEABSENT irrespective of
|
||
|
whether the auxiliary registry key path is present. What
|
||
|
this achieves is preventing the trigger of a repair
|
||
|
when the user has cancelled the source resolution
|
||
|
dialog.
|
||
|
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0324
|
||
|
-----------------------------
|
||
|
|
||
|
99-03-24 eugend Fixed bug # 9164: text on ResumeDlg is corrected and
|
||
|
sequence numbers in AdminUISequence and
|
||
|
InstallUISequence tables match the respective values in
|
||
|
TEMPLATE.MSI.
|
||
|
|
||
|
99-03-24 eugend Fixed bug # 9108: if Japanese KANA IME is used,
|
||
|
MaskedEdit control switches properly to English keyboard
|
||
|
when any of its edit fields receives focus.
|
||
|
|
||
|
99-03-24 eugend I've fixed bug # 8468: GetLastError() will return
|
||
|
the correct value if LocalLoadLibraryEx() fails on
|
||
|
Alpha machines.
|
||
|
|
||
|
99-03-23 bench bug 9154: MsiCreateTransformSummaryInfo will no
|
||
|
longer fail if either db is missing the PageCount suminfo
|
||
|
property. Instead the current Darwin version is
|
||
|
used as the minimum version to process the transform.
|
||
|
This is a change to the fix made for bug 8781.
|
||
|
|
||
|
99-03-23 bench uisample.msi is now built with just the necessary
|
||
|
tables. It no longer contains empty tables like File
|
||
|
and Registry.
|
||
|
|
||
|
99-03-23 johndelo Bug 8290 Automation FileVersion now uses internal routines.
|
||
|
Optional 2nd argument is a boolean, default is False:
|
||
|
False to return version number string for a file
|
||
|
True to return language ID as a string for a file
|
||
|
|
||
|
99-03-23 johndelo Bug 8332 Disabled ODBC drivers/translators don't register
|
||
|
|
||
|
99-03-23 johndelo Bug 8420 Updates not allowed after execution of queryies
|
||
|
having no result set, e.g. CREATE TABLE...
|
||
|
Note that all views must be executed before any update
|
||
|
operations can be performed (there were a few cases
|
||
|
where the execute could be omitted - no more).
|
||
|
|
||
|
99-03-23 johndelo Bug 8453 Cabinet file extraction is now case-insensitive
|
||
|
|
||
|
99-03-23 johndelo Bug 8689 Packages with neutral codepage resolved late
|
||
|
to prevent BiDi handling of English text.
|
||
|
When database codepage is neutral, the codepage used
|
||
|
for font selection is determined by the install language.
|
||
|
|
||
|
99-03-23 johndelo Bug 8795 MsiRecordGetFieldCount returns -1 if bad handle
|
||
|
|
||
|
99-03-23 johndelo Bug 8982 Fix to prevent failure of simple installs
|
||
|
with non-registered components (NULL ComponentId)
|
||
|
|
||
|
99-03-23 johndelo Bug 9062 Prevent AV when GetDateFormat fails
|
||
|
(was due to use of language unsupported by NLS)
|
||
|
|
||
|
99-03-23 johndelo Bug 9094 Allow bare file name for COM servers.
|
||
|
Attributes column added to Class table.
|
||
|
(but not put into schema until it is bumped to 102).
|
||
|
If column is present and msidbClassAttributesRelativePath
|
||
|
is set (low order bit), then the file name only is
|
||
|
registered instead of the complete path, allowing
|
||
|
the server in the current directory to take precedence,
|
||
|
and allowing multiple copies of the same component.
|
||
|
|
||
|
99-03-23 davidmck Checked in code and tools for 64-bit Intel builds.
|
||
|
Still have work to do and this should not affect the
|
||
|
Win32 builds.
|
||
|
|
||
|
99-03-23 cgouge Bug 8353, msival2 installer space requirements
|
||
|
updated, CUB file now part of the install.
|
||
|
|
||
|
99-03-22 mattwe Fixed bug 8469. You can now apply patches from URLs.
|
||
|
This involves several changes to opening storages,
|
||
|
devs should see msiutil.cpp for OpenMsiStorage, and
|
||
|
OpenAndValidateStorage for all your read-only storage
|
||
|
opening requests.
|
||
|
|
||
|
99-03-22 mattwe Fixed bug 9146. We no longer unload URLMON between
|
||
|
installs from the service. This has a performance
|
||
|
hit, but prevents hangs caused by bugs in URLMON.
|
||
|
|
||
|
99-03-22 bench Added the ComPlus table, bring the schema version to 101.
|
||
|
|
||
|
99-03-19 malcolmh Fixed bug 9046. The potential reboot race condition
|
||
|
has been eliminated. We should now reboot whenever we
|
||
|
trigger a reboot.
|
||
|
|
||
|
99-03-19 chetanp bug 9131 - fixed code defect handling DBCS reg. key
|
||
|
paths when "\" is the trailing byte of a 2 byte char
|
||
|
which is the last char in the registry value. Was
|
||
|
causing key path detection to always fail.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0319.1
|
||
|
-----------------------------
|
||
|
|
||
|
99-03-19 bench bug 9153: fixed regression from bug 9013 that caused
|
||
|
patch application to fail.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0319
|
||
|
-----------------------------
|
||
|
|
||
|
99-03-18 malcolmh Fixed bug 9001: AD: per-user registry leak in darwin
|
||
|
in services.exe
|
||
|
|
||
|
99-03-18 cgouge Bug 9143, validation: ICE18 no longer checks
|
||
|
directories that are root directories.
|
||
|
|
||
|
99-03-18 bench bug 6933: ixoUpgradeCodePublish/Unpublish are now
|
||
|
written to advertise scripts in the MsiAdvertiseProduct
|
||
|
api.
|
||
|
|
||
|
99-03-17 bench bug 9064: fix for nested installs that require a
|
||
|
reboot. when a nested install replaces a file-in-use,
|
||
|
or triggers a reboot in some other way, the reboot
|
||
|
request is held by the parent install and used to prompt
|
||
|
at the end of all installs. previously if a nested
|
||
|
install required a reboot the install would
|
||
|
immediately fail ungracefully.
|
||
|
|
||
|
99-03-17 cgouge Bug 7265. Validation. Limit on max components per
|
||
|
feature reduced to 800 due to registry limitations.
|
||
|
|
||
|
99-03-17 cgouge Bug 8118. Validation. ICE56 was not reporting an
|
||
|
error for long root directories that were not TARGETDIR.
|
||
|
|
||
|
99-03-17 malcolmh Fixed bug 9123. We have a new api:
|
||
|
MsiEnumRelatedProducts. It can be used to enumerate all products with
|
||
|
a particular upgrade code.
|
||
|
|
||
|
99-03-17 chetanp fixed bug 8862 - There are scenarios where darwin
|
||
|
did not re-register the component during a reinstall of
|
||
|
the component.
|
||
|
1. When darwin does an implicit reinstall of the
|
||
|
component.
|
||
|
2. A (broken) component has been set up for an
|
||
|
explicit reinstall and a custom action of type 35, changes
|
||
|
the target path for the component.
|
||
|
|
||
|
Fixed so that we re-register the component in cases
|
||
|
1. and 2. above.
|
||
|
|
||
|
NOTE: case 2 is being used by office today but
|
||
|
might not work in the future if we decide to never allow
|
||
|
changing directories of installed components (no
|
||
|
matter if they are broken as in this case).
|
||
|
|
||
|
|
||
|
99-03-17 eugend fixed bug # 9055: Darwin's basic UI won't come up
|
||
|
anymore maximized/minimized.
|
||
|
|
||
|
99-03-16 chetanp fixed bug 8425 - bogus shortcuts created if feature
|
||
|
is advertised on a system with the updated shell AND
|
||
|
the DISABLEADVTSHORTCUTS property is set.
|
||
|
|
||
|
99-03-16 bench bug 9110: fixed uninitialized variable that
|
||
|
prevented the ServicePackLevel property from being set in
|
||
|
certain builds (but not 1.0.5104)
|
||
|
|
||
|
99-03-15 bench bug 9097: picked up new mspatcha.lib and
|
||
|
mspatchc.lib files, which are compatible with the VC5.0
|
||
|
link.exe. The previous versions were not. This change
|
||
|
effects the SDK only - not the bits used by Office 2000 or
|
||
|
Win2000.
|
||
|
|
||
|
99-03-10 tracyf Bug 9013 - added the ability to copy files
|
||
|
decompressed from cabinets to multiple locations. A doc bug
|
||
|
to explain this is imminent, but the basic idea is to
|
||
|
include multiple entries in your File table, each
|
||
|
with the same FileKey, except differing only by case.
|
||
|
These files should have the same sequence numbers (or
|
||
|
at worst, there should be no unrelated File table
|
||
|
entries with intervening sequence numbers). Each of
|
||
|
these files can be linked to different components, or
|
||
|
can be tied to the same component, in which case the
|
||
|
destination name given in the FileName column must be
|
||
|
different.
|
||
|
|
||
|
99-03-10 malcolmh Fixed bug 9038. Cannot install Office from CD when
|
||
|
AllocateCDRom policy is set. We now impersonate when
|
||
|
attempting to access the CD or removable drives. This
|
||
|
allows us to operate in lock-down environements where
|
||
|
_only_ the user has access to the drive (not even
|
||
|
LocalSystem has access).
|
||
|
|
||
|
99-03-09 tracyf Bug 7493 - fixed so that file copy errors now return
|
||
|
iesFailure instead of iesUserExit.
|
||
|
|
||
|
99-03-09 chetanp bug 8568 - fixed code so that we publish advt
|
||
|
information (shortcuts, class, publishcomponents) tied to a
|
||
|
child feature in advertised state during a reinstall
|
||
|
where a transitive component becomes enabled
|
||
|
|
||
|
99-03-08 bench Bugs 7793, 7853 and 8316: added two new return codes
|
||
|
for cases where a reboot is required. The return codes
|
||
|
are returned from the APIs, msiexec.exe and instmsi.exe.
|
||
|
|
||
|
ERROR_SUCCESS_REBOOT_REQUIRED: returned when a reboot is
|
||
|
required to complete the install but the reboot was
|
||
|
rejected by the user or suppressed with REBOOT=Suppress
|
||
|
or ReallySuppress.
|
||
|
|
||
|
ERROR_SUCCESS_REBOOT_INITIATED: returned when a reboot
|
||
|
has been triggered by Darwin. note that this is a new
|
||
|
error code added for this bug. it is defined in msi.h and
|
||
|
will be added to the NT5 winerror.h.
|
||
|
|
||
|
99-03-08 eugend fixed bug # 8785: "can't install product when
|
||
|
uninstall is interupted in the middle".
|
||
|
|
||
|
99-03-08 malcolmh Fixed bugs 8390, 8389, 8392.
|
||
|
- Hydra installs from user sessions now work (fixed
|
||
|
the mutex problem)
|
||
|
- Installs from user sessions are prevented unless
|
||
|
the user is an admin and the EnableAdminTSRemote
|
||
|
policy is set. Admin installs and the creation of
|
||
|
advertise scripts are exempt from this restriction
|
||
|
(if you're an admin)
|
||
|
|
||
|
Test automation note: we have a new return value from
|
||
|
engine.initialize: ieiTSRemoteInstallDisallowed
|
||
|
|
||
|
99-03-05 malcolmh Fixed bug 7799: When SCRIPTFLAGS_CACHEINFO is set,
|
||
|
MsiAdvertiseScript doesn't strip off the filename from
|
||
|
the transform path. This means that profile
|
||
|
transforms can now be used through app deployment.
|
||
|
|
||
|
99-03-05 mattwe Bug 8323: During reinstall (patching counts,)
|
||
|
where shortcuts or machine data is being set,
|
||
|
icons will be re-cached. The REINSTALLMODE
|
||
|
property doesn't need to be set.
|
||
|
|
||
|
99-03-05 eugend fixed bug # 5296: I've changed the format of the
|
||
|
notification sent to the NT5 shell at the end of the
|
||
|
installation. Doesn't affect other OSes.
|
||
|
|
||
|
99-03-05 mattwe Bug 9045: Fixed potential global atom leak when
|
||
|
client window can't be found for verbose logging.
|
||
|
|
||
|
99-03-04 chetanp bug 8991: fixed crash in font registration code
|
||
|
during a repair.
|
||
|
|
||
|
99-03-03 malcolmh Fixed bug 8842: RemoveFile infinite loop when
|
||
|
removing readonly folder
|
||
|
Fixed bug 9027: Path::GetSelfRelativeSD fails to read
|
||
|
large descriptors
|
||
|
Fixed bug 9028: SECURITY: rollback of RemoveFolder on
|
||
|
a folder with big security descriptor wipes all
|
||
|
security
|
||
|
|
||
|
99-03-03 mattwe Bug 8989: You can now write 0x80000000 to the registry
|
||
|
as a DWORD. Involves several small changes as we've
|
||
|
added a flag to GetIntegerValue that returns more
|
||
|
information about the value returned.
|
||
|
|
||
|
99-03-03 mattwe Bug 8812: We've changed the PRODUCTICON property to
|
||
|
ARPPRODUCTICON. The GetProductInfo name hasn't changed.
|
||
|
|
||
|
99-03-03 johndelo Bug 8435: Vietnamese text corrupted on Unicode build.
|
||
|
Removed use of WC_COMPOSITECHECK in Unicode->ANSI conversion.
|
||
|
|
||
|
99-03-02 cgouge Bug 8917: Validation. Due to an earlier bug fix
|
||
|
(7846), several ICEs were generating info messages if
|
||
|
critical tables were missing. These messages would be
|
||
|
filtered away by tools and never be seen again. They
|
||
|
should actually be errors. The offending ICEs were
|
||
|
ICE18, ICE21, and ICE22. They now explicitly create error
|
||
|
messages in these cases.
|
||
|
|
||
|
99-03-02 cgouge Bug 8899: Validation, ICE43 modified to exempt from
|
||
|
this ICE shortcuts that are created in non-profile
|
||
|
directories, as these shortcuts would fail one of ICE57
|
||
|
or this ICE no matter what they did. (and this one
|
||
|
was wrong).
|
||
|
|
||
|
99-03-02 cgouge Buc 8843: Validation, ICE17 updated to allow entries
|
||
|
in the control table to use properties to reference
|
||
|
items in the Binary table. (Bitmaps, Icons, etc)
|
||
|
|
||
|
99-03-02 cgouge Bug 8826: Validation, ICE33 updated to check for
|
||
|
TypeLib entries in the registry table.
|
||
|
|
||
|
99-03-02 cgouge Bug 8702. Validation: Added ICE57, which checks that
|
||
|
components don't contain both per-machine and
|
||
|
per-user data. It also does a few checks on -1 root
|
||
|
reg-keys to ensure that you don't get any goofy install or
|
||
|
detection problems. TestDB was modified to pass this
|
||
|
ICE by splitting several components that contained
|
||
|
both types of data.
|
||
|
|
||
|
99-03-02 chetanp fixed bug 9000. This was a leak of registry keys
|
||
|
that we failed to close during app deployment, when
|
||
|
MsiAdvertiseScript was called with the
|
||
|
SCRIPTFLAGS_VALIDATE_TRANSFORMS_LIST flag. One can see this leak with
|
||
|
previous leaks when MsiAdvertiseScript is called with
|
||
|
the SCRIPTFLAGS_VALIDATE_TRANSFORMS_LIST when the
|
||
|
product is already advertised/ installed on the machine.
|
||
|
No transforms are needed, just setting the flag
|
||
|
causes this.
|
||
|
|
||
|
|
||
|
99-03-02 malcolmh Fixed bug 8797: msipath.findfile fails when
|
||
|
accessing inaccessible directory. AppSearch will now continue
|
||
|
even if a directory that it's searching is
|
||
|
inaccessible.
|
||
|
|
||
|
99-03-02 chetanp fixed bug 8462. We should not count products who
|
||
|
installed components as disabled as true clients during
|
||
|
uninstallation. We should remove the entities tied
|
||
|
to a component when the last product that did not
|
||
|
install the component disabled is uninstalling. This bug
|
||
|
leads to files/ registry entities being orphaned if
|
||
|
the product that installed that component disabled is
|
||
|
uninstalled last.
|
||
|
|
||
|
|
||
|
99-03-02 chetanp fixed bug 7412. Fixed code that invokes an implicit
|
||
|
reinstall of a feature to pass in the
|
||
|
REINSTALLMODE_USERDATA as well. This code is used when a feature is
|
||
|
detected to be broken, when
|
||
|
MsiProvideComponentFromDescriptor and MsiProvideQualifiedComponent or the
|
||
|
MsiProvideComponent API is called with the dwInstallMode
|
||
|
arg = INSTALLMODE_DEFAULT. This is what is used by
|
||
|
the shell and OLE when calling MsiProvideCFD. This can
|
||
|
cause scenarios where clicking on the shortcut causes
|
||
|
darwin to keep reinstalling over and over again
|
||
|
(there is a component in the feature or in the ancestry
|
||
|
that has a HKCU registry key path that is broken).
|
||
|
|
||
|
|
||
|
99-03-01 eugend Fixed bug # 9008: in CONTROLS.CPP we better handle
|
||
|
missing or incorrect values of PROMPTROLLBACKCOST
|
||
|
property.
|
||
|
|
||
|
99-03-01 cgouge Bug 9002: _Validation table update. Control.Text
|
||
|
column is now type "Formatted"
|
||
|
|
||
|
99-03-01 davidmck Fixed bug 8066 again, this time checking in the
|
||
|
bld1402.16 version of shfolder.dll.
|
||
|
|
||
|
99-02-26 eugend As a result of fixing bug # 8922, AppId table's
|
||
|
RemoteServerName got changed into Formatted (from Text).
|
||
|
I've opened DOC bug # 9011 to track this.
|
||
|
|
||
|
99-02-26 mattwe Fixed bug 8812: New property PRODUCTICON is used to
|
||
|
support a per-package primary icon. It is registered
|
||
|
during advertisement/publishing/installation, and
|
||
|
the final path is available through
|
||
|
MsiGetProductInfo(..., INSTALLPROPERTY_PRODUCTICON)
|
||
|
This is available on all platforms, but will primarily
|
||
|
be used by the new ARP panel on Windows 2000
|
||
|
|
||
|
99-02-25 cgouge Bug 8322. DisableRollback policy is now per-machine
|
||
|
as well as per-user. If either location has the
|
||
|
policy set, Rollback will be disabled.
|
||
|
|
||
|
99-02-25 mattwe Fixed bug 5535: The Environment operations now have
|
||
|
consistent error messages in all cases, and will
|
||
|
absolutely not kick off rollback without warning.
|
||
|
|
||
|
99-02-25 bench fixed bug 8781: MsiCreateTransformSummaryInfo checks
|
||
|
the Page Count (minimum installer version)
|
||
|
properties of the two dbs and uses the larger of the two for
|
||
|
the transform Page Count property. Previously it
|
||
|
always set the minimum version for the transform to the
|
||
|
current installer version, but this made transforms
|
||
|
incompatible with older installer versions when they
|
||
|
weren't necessarilly so.
|
||
|
|
||
|
|
||
|
99-02-25 davidmck Fixed bug 8066 - took version 5.0.2014.204 of
|
||
|
shfolder.dll to be in sync with IE5.
|
||
|
|
||
|
99-02-25 davidmck Fixed bug 8983 - updated to usp10.dll version
|
||
|
1.175.0.1 to be in sync with Office.
|
||
|
|
||
|
99-02-23 mattwe Bug 8343: checking the ownership of registry keys and
|
||
|
and security descriptors has been streamlined, and now
|
||
|
isn't affected by DACLs in the SD.
|
||
|
|
||
|
99-02-23 mattwe Bug 7730: GetTempDirectory on NT now calls GetTempPath
|
||
|
instead of the work-around for 9x done for #4036.
|
||
|
The end result is that when tmp and temp are undefined,
|
||
|
NT now goes to the windows folder instead of the
|
||
|
windows volume\temp. (c:\temp)
|
||
|
|
||
|
99-02-23 cgouge Bug 8463. IsAdmin check extended to use NT5 specific
|
||
|
CheckTokenMembership API that handles special NT5
|
||
|
only cases.
|
||
|
|
||
|
99-02-23 eugend UISample.msi and UITestDb.msi got checked in.
|
||
|
UISample.msi is a template database featuring a UI that
|
||
|
wants to be in line with current wizard design
|
||
|
requirements. UITestDb.msi is the old TestDb.msi driven by
|
||
|
this new UI. I've just checked in the changes I've
|
||
|
made to the makefile; the IDTs and IBDs were already
|
||
|
checked into the <Darwin root>\data\UISample directory.
|
||
|
|
||
|
99-02-23 malcolmh Fixed bug 8793: Darwin: Unable to deploy app that
|
||
|
has already been assigned and installed by admin.
|
||
|
|
||
|
99-02-23 mattwe Bug 8500: InstMsi now closes its service and
|
||
|
service manager handles correctly.
|
||
|
|
||
|
99-02-23 cgouge Bug 8832. Typos in schema _Validation table.
|
||
|
|
||
|
99-02-22 cgouge Bug 7722: Mergemod.dll: Support added for Darwin
|
||
|
predefined property directories in a merge module.
|
||
|
Previously it was very common to get merge conflicts when
|
||
|
using one of these directories. Now you can GUID-ize
|
||
|
these directories (as you do other module
|
||
|
directories) and the merge tool will dynamically generate
|
||
|
actions that set this GUIDized property to the appropriate
|
||
|
non-guidized property.
|
||
|
|
||
|
99-02-22 cgouge Bug 8130: Mergemod.dll. Added logging when base
|
||
|
action is completely missing from Module*Sequence tables.
|
||
|
|
||
|
99-02-22 cgouge Bug 8229, Mergemod.dll. Logging when action in
|
||
|
Module*Sequence tables does not get processed because it
|
||
|
doesn't have an ancestor which was a standard action
|
||
|
with an assigned sequence number.
|
||
|
|
||
|
99-02-22 cgouge Bug 8321. Mergemod.dll, logging for CAB extraction.
|
||
|
|
||
|
99-02-22 cgouge Bug 8391. Mergemod.dll. Log message had spaces
|
||
|
between characters.
|
||
|
|
||
|
99-02-22 malcolmh Fixed bug 8875: RFS shortcut fails to provide
|
||
|
Network Resource Dialog when Explorer.exe FEATURECACHE
|
||
|
returns SOURCE_ABSENT.
|
||
|
|
||
|
Fixed the regression from bug 7854: we no longer do
|
||
|
feature caching from
|
||
|
MsiProvideComponentFromDescriptor.
|
||
|
We also no longer feature-cache the
|
||
|
INSTALL_SOURCEABSENT state.
|
||
|
|
||
|
99-02-22 malcolmh Fixed bug 8933. Fixed our failure to run EXE custom
|
||
|
actions on Win9X.
|
||
|
|
||
|
99-02-22 bench bug 8906: file replacement operations in wininit.ini
|
||
|
are now accomplished by a single rename line. Prior
|
||
|
to this change such operations were done with a
|
||
|
delete followed by a rename. This fix was made to allow
|
||
|
for a workaround to a Win98 bug. The bug would
|
||
|
sometimes cause the wininit.ini file to be processed
|
||
|
multiple times, and the delete lines would remove the new
|
||
|
files the second time through.
|
||
|
|
||
|
99-02-22 bench bug 8949: removed unsupported property
|
||
|
INSTALLPROPERTY_UPGRADECODE from msi.h.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0212
|
||
|
-----------------------------
|
||
|
|
||
|
99-02-12 malcolmh Fixed bug 8845. We now prevent EXE custom actions
|
||
|
from elevating when the install is not managed.
|
||
|
|
||
|
99-02-12 malcolmh Fixed bug 8841 -- Added these properties to our
|
||
|
secure list:
|
||
|
|
||
|
> FILEADDSOURCE,
|
||
|
> FILEADDDEFAULT,
|
||
|
> AFTERREBOOT,
|
||
|
> EXECUTEACTION,
|
||
|
|
||
|
99-02-12 cgouge Bug 8837. Summary info of packages updated to 100,
|
||
|
schema version removed from title.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0210
|
||
|
-----------------------------
|
||
|
|
||
|
99-02-10 davidmck Fixed bug 8821 - Changed copyright in instmsi to
|
||
|
1999.
|
||
|
|
||
|
99-02-10 murate Implemented COM+ Registration support.
|
||
|
|
||
|
-----------------------------
|
||
|
Release 1.1.0000
|
||
|
-----------------------------
|
||
|
|