Jump to content

Silent .NET Maker synthesized 20100118 - W2K/XP/2K3 x86


strel

Recommended Posts

Strel, if i want to install the update from .net framework asssitant in firefox (KB963707) wich option should i use in _snmsynth.ini ?

; ------- PROCESS SUBCOMPONENTS OF DNF 3.5 SP1

; The following setting allows you to avoid installing .NET Assistant Firefox add-on implementing clickonce, .NET's software

; downloading/updating technollogy, into FF (in addition to IE). Some people dislikes this in FF for various reasons, see guide.

DNF_FF_ADDON=YES

I don't understand what the default option do, avoids the update showing in MU by adding some keys, or integrate KB963707 into snmsynth installation ?

Edited by mooms
Link to comment
Share on other sites


The default option installs the firefox add-on as the original installer do, moreover, for this default option the script makes you apply mandatory KB963707 hotfix, as it contains important fixes for FF add-on like being able to install on firefox > 3.0.*, giving the uninstall button, but more important, removing the .NET user agent that were reporting every webserver about the .NET update condition of your machine.

This setting is useful in case you just don't want to install the firefox add-on.

2 simurqq (see above) and everybody

In point 1 of your "applies to both scenarios" section there's something incorrect. It's not mandatory to set "DNF_FF_ADDON=YES" it's a choice. As explained in my previous lines.

Edited by strel
Link to comment
Share on other sites

Hello there,

I created a .NET package for W2K3 with this _SNMsynth.ini:

; SNMsynth.CMD PROCESS SETTINGS. 

PROCESS_DNF1=
PROCESS_DNF2=
PROCESS_DNF35_DNF2=YES
PROCESS_DNF35_DNF3=YES
PROCESS_DNF35_DNF35=YES


PROCESS_DNF3_RGBRAST=YES
PROCESS_DNF3_WINIMAGING=YES
PROCESS_DNF3_MSXML6=YES
PROCESS_DNF3_XMLPSSC=YES


DNF_FF_ADDON=NO


PROCESS_LNG_DNF1=NO
PROCESS_LNG_DNF2=NO
PROCESS_LNG_DNF35_DNF2=NO
PROCESS_LNG_DNF35_DNF3=NO
PROCESS_LNG_DNF35_DNF35=NO


WIN2K3=YES
ADDON=NO
MERGE_FRAMEWORKS=YES
SILENT=
COMPRESSION_RATIO=HIGH

I had these hotfixes in the work folder:

NDP20SP2-KB958481-x86.exe

NDP30SP2-KB958483-x86.exe

NDP35SP1-KB958484-x86.exe

NDP35SP1-KB963707-x86.exe

It created a 45 MB installer. However, when I try to run it on a freshly installed W2k3 box, after I logged in, it fails almost immediately. This is the content of the NETFX20.log:

=== Verbose logging started: 9/3/2009  13:22:15  Build type: SHIP UNICODE 4.05.6001.00  Calling process: C:\WINDOWS\System32\msiexec.exe ===
MSI © (C8:D4) [13:22:15:619]: Resetting cached policy values
MSI © (C8:D4) [13:22:15:619]: Machine policy value 'Debug' is 0
MSI © (C8:D4) [13:22:15:619]: ******* RunEngine:
******* Product: C:\Temp\7ZipSfx.000\DNF20\Netfx20a_x86.msi
******* Action:
******* CommandLine: **********
MSI © (C8:D4) [13:22:15:619]: Client-side and UI is none or basic: Running entire install on the server.
MSI © (C8:D4) [13:22:15:619]: Grabbed execution mutex.
MSI © (C8:D4) [13:22:15:681]: Cloaking enabled.
MSI © (C8:D4) [13:22:15:681]: Attempting to enable all disabled privileges before calling Install on Server
MSI © (C8:D4) [13:22:15:697]: Incrementing counter to disable shutdown. Counter after increment: 0
MSI (s) (E4:00) [13:22:15:744]: Running installation inside multi-package transaction C:\Temp\7ZipSfx.000\DNF20\Netfx20a_x86.msi
MSI (s) (E4:00) [13:22:15:744]: Grabbed execution mutex.
MSI (s) (E4:1C) [13:22:15:775]: Resetting cached policy values
MSI (s) (E4:1C) [13:22:15:775]: Machine policy value 'Debug' is 0
MSI (s) (E4:1C) [13:22:15:775]: ******* RunEngine:
******* Product: C:\Temp\7ZipSfx.000\DNF20\Netfx20a_x86.msi
******* Action:
******* CommandLine: **********
MSI (s) (E4:1C) [13:22:15:775]: Machine policy value 'DisableUserInstalls' is 0
MSI (s) (E4:1C) [13:22:16:291]: File will have security applied from OpCode.
MSI (s) (E4:1C) [13:22:16:291]: SOFTWARE RESTRICTION POLICY: Verifying package --> 'C:\Temp\7ZipSfx.000\DNF20\Netfx20a_x86.msi' against software restriction policy
MSI (s) (E4:1C) [13:22:16:291]: Note: 1: 2262 2: DigitalSignature 3: -2147287038
MSI (s) (E4:1C) [13:22:16:291]: SOFTWARE RESTRICTION POLICY: C:\Temp\7ZipSfx.000\DNF20\Netfx20a_x86.msi is not digitally signed
MSI (s) (E4:1C) [13:22:16:322]: SOFTWARE RESTRICTION POLICY: C:\Temp\7ZipSfx.000\DNF20\Netfx20a_x86.msi is permitted to run at the 'unrestricted' authorization level.
MSI (s) (E4:1C) [13:22:16:338]: End dialog not enabled
MSI (s) (E4:1C) [13:22:16:338]: Original package ==> C:\Temp\7ZipSfx.000\DNF20\Netfx20a_x86.msi
MSI (s) (E4:1C) [13:22:16:338]: Package we're running from ==> C:\WINDOWS\Installer\1d0c47.msi
MSI (s) (E4:1C) [13:22:16:385]: APPCOMPAT: looking for appcompat database entry with ProductCode '{C09FB3CD-3D0C-3F2D-899A-6A1D67F2073F}'.
MSI (s) (E4:1C) [13:22:16:385]: APPCOMPAT: no matching ProductCode found in database.
MSI (s) (E4:1C) [13:22:16:400]: MSCOREE not loaded loading copy from system32
MSI (s) (E4:1C) [13:22:16:478]: Machine policy value 'TransformsSecure' is 1
MSI (s) (E4:1C) [13:22:16:510]: Machine policy value 'DisablePatch' is 0
MSI (s) (E4:1C) [13:22:16:510]: Machine policy value 'AllowLockdownPatch' is 0
MSI (s) (E4:1C) [13:22:16:510]: Machine policy value 'DisableLUAPatching' is 0
MSI (s) (E4:1C) [13:22:16:510]: Machine policy value 'DisableFlyWeightPatching' is 0
MSI (s) (E4:1C) [13:22:16:510]: Looking for secure file transform:
MSI (s) (E4:1C) [13:22:16:510]: Note: 1: 2343
MSI (s) (E4:1C) [13:22:16:510]: Unable to create a temp copy of transform ''.
MSI (s) (E4:1C) [13:22:16:510]: Note: 1: 2203 2: 3: -2147287037
MSI (s) (E4:1C) [13:22:16:510]: Couldn't find cached transform . Looking for it at the source.
MSI (s) (E4:1C) [13:22:16:510]: Resolving source.
MSI (s) (E4:1C) [13:22:16:510]: Resolving source to launched-from source.
MSI (s) (E4:1C) [13:22:16:510]: Setting launched-from source as last-used.
MSI (s) (E4:1C) [13:22:16:510]: SOURCEDIR ==> C:\Temp\7ZipSfx.000\DNF20\
MSI (s) (E4:1C) [13:22:16:510]: SOURCEDIR product ==> {C09FB3CD-3D0C-3F2D-899A-6A1D67F2073F}
MSI (s) (E4:1C) [13:22:16:510]: Looking for secure file transform:
MSI (s) (E4:1C) [13:22:16:510]: Note: 1: 2343
MSI (s) (E4:1C) [13:22:16:510]: Unable to create a temp copy of transform ''.
MSI (s) (E4:1C) [13:22:16:510]: Note: 1: 2203 2: 3: -2147287037
MSI (s) (E4:1C) [13:22:16:510]: Couldn't find cached transform . Looking for it at the source.
MSI (s) (E4:1C) [13:22:16:510]: Looking for secure file transform: C:\Temp\7ZipSfx.000\DNF20\NETWUFIXES.mst
MSI (s) (E4:1C) [13:22:16:510]: Unable to create a temp copy of transform 'C:\Temp\7ZipSfx.000\DNF20\NETWUFIXES.mst'.
MSI (s) (E4:1C) [13:22:16:510]: Note: 1: 2203 2: C:\Temp\7ZipSfx.000\DNF20\NETWUFIXES.mst 3: -2147287038
DEBUG: Error 2203: Database: C:\Temp\7ZipSfx.000\DNF20\NETWUFIXES.mst. Cannot open database file. System error -2147287038
1: 2203 2: C:\Temp\7ZipSfx.000\DNF20\NETWUFIXES.mst 3: -2147287038
MSI (s) (E4:1C) [13:22:16:541]: Note: 1: 1708
MSI (s) (E4:1C) [13:22:16:556]: Product: Microsoft .NET Framework 2.0 Service Pack 2 -- Installation failed.

MSI (s) (E4:1C) [13:22:16:556]: Windows Installer installed the product. Product Name: Microsoft .NET Framework 2.0 Service Pack 2. Product Version: 2.2.30729. Product Language: 0. Installation success or error status: 1624.

MSI (s) (E4:1C) [13:22:16:556]: MainEngineThread is returning 1624
MSI (s) (E4:00) [13:22:16:556]: No System Restore sequence number for this installation.
Error applying transforms. Verify that the specified transform paths are valid.
C:\Temp\7ZipSfx.000\DNF20\NETWUFIXES.mst
MSI (s) (E4:00) [13:22:16:556]: User policy value 'DisableRollback' is 0
MSI (s) (E4:00) [13:22:16:556]: Machine policy value 'DisableRollback' is 0
MSI (s) (E4:00) [13:22:16:556]: Incrementing counter to disable shutdown. Counter after increment: 0
MSI (s) (E4:00) [13:22:16:588]: Note: 1: 1402 2: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer\Rollback\Scripts 3: 2
MSI (s) (E4:00) [13:22:16:603]: Note: 1: 1402 2: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer\Rollback\Scripts 3: 2
MSI (s) (E4:00) [13:22:16:603]: Note: 1: 1402 2: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer\InProgress 3: 2
MSI (s) (E4:00) [13:22:16:603]: Note: 1: 1402 2: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer\InProgress 3: 2
MSI (s) (E4:00) [13:22:16:603]: Decrementing counter to disable shutdown. If counter >= 0, shutdown will be denied. Counter after decrement: -1
MSI (s) (E4:00) [13:22:16:603]: Restoring environment variables
MSI © (C8:D4) [13:22:16:603]: Decrementing counter to disable shutdown. If counter >= 0, shutdown will be denied. Counter after decrement: -1
MSI © (C8:D4) [13:22:16:603]: MainEngineThread is returning 1624
=== Verbose logging stopped: 9/3/2009 13:22:16 ===

Do you guys have any idea why it failed?

Thanks

Edited by Karoly67
Link to comment
Share on other sites

Great you include the log file!

After searching around, error code 2203 seems to suggest a problem with permissions that seems to be obstructing .mst to get copied to the installer cache folder, typically %SYSTEMROOT%\Installer and/or to be uncompressed to the %TEMP% folder. To overcome this error try giving full permissions to SYSTEM account on these folders, begin with %TEMP%. You may need to give full permissions on that folders too to current user account.

Please tell us about your progress.

Is it happening that to any of you using win 2K3?

Edited by strel
Link to comment
Share on other sites

Thanks for your quick reply!

I don't think it is a permission issue, because both the System and user accounts have full permission on the temp folder. Also, I generated a .NET package with an early version of your script (from June 2008) and I was able to install it without any problem. Unfortunately, that early version doesn't integrate the new hotfixes...

Link to comment
Share on other sites

Well, I still think something is obstructing .mst files to get copied over the installer cache folder. If we read the log file, install process first try to look for the .mst files in the installer cache folder, when it don't find them, then it searches them in the installer source folder, but .mst files are not in the installer source folder, they are in the install script folder, I may have to change this for the next version.

I think if you give permissions to the installer cache folder or if you manage to put a copy of the .mst files in the DNF20 DNF30 DNF35 folders when the installer uncompress (or if you uncompress the installer and then put a copy of .mst files in folders DNF20 DNF30 and DNF35 manually and then run INSTALL.cmd), you'd solve the problem.

About permissions I think this is self explicative.

Again tell us about your progress please.

Edited by strel
Link to comment
Share on other sites

You were right! It was a permission issue after all. I did what you recommended: extracted the files, copied the .mst files into the DNF20, DNF30 and DNF35 folders and ran the install.cmd. This way I was able to install it without any error.

Thanks for your help!

Edited by Karoly67
Link to comment
Share on other sites

But this is only a workaround for installing, if you don't get .mst files are effectively copied over a subfolder of the installers cache folder (%SYSTEMROOT%\Installer\{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}), and you remove the folder from wich you are installing .NET, the uninstall process will have access to .mst files, and will not be able to remove the tweaks made by SNMsynth installers so you may have incorrect win/ms update messages. You need to get .mst files copied over that folder, this way all fixes applied will get properly removed on uninstall.

I'd try changing the permissions of %SYSTEMROOT%\Installer folder as explained before, to get .mst files copied during install. Or try making it manually, to get the folder name you need the GUID of the installer, you can get it from registry in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall, there you'll see varios GUID named keys, browse through them looking for .NET in DisplayName values, and you'll have folder name. Copy .mst files used by the installer for that framerwork version (in the TRASFORMS= property of the install command of each framework version, inside the install script of SNMsynth installer) to the installer cache subfolder.

As you see it's far more easy to fix intaller cache folder permissions.

Edited by strel
Link to comment
Share on other sites

Hey strel..

I've been using your method for quite a while now and it always works like a charm! Thanks alot!

I just have a question.. Is it possible to implement a method in the script so it supports x64 .Net Framework as well..

I mean.. The method would be more or less the same wouldn't it?

I stumbled upon this site where someone has managed to create such an addon

http://forum.ragezone.com/f528/microsoft-n...lls-aio-522307/

The only "problem" with this pack is that the hotfixes is not included...

Cheers

Link to comment
Share on other sites

Hi djanz.

Suppose it would be similar but I'm sure there would be things to adapt and test. Someone asked me about this time ago, at that time I was thinking in making a 64-bit version of the script, the problem is that I'm not having access to a 64-bit machine, so I'm not doing it. What I can offer is my help to anyone who want to do it.

At the moment you have a better option with HJW's .NET x64 installer that includes regular hotfixes, thx to RickSteele for the link.

Cheers.

Edited by strel
Link to comment
Share on other sites

Im currently trying to add some extra registry entries.

To do this I do the following.

Extract config.txt and the original archive with 7zsplit.

Extract the original archive to a folder.

Add my UPDATE.REG (to disable WebClient service and edit some titles in add/remove).

Edit INSTALL.CMD

%SYSTEMROOT%\REGEDIT /S DNF11.REG
REGEDIT /S UPDATE.REG

As you can see I put it afterwards your DNF11.REG

Then I make an archive.

Compile an exe with the silentswitchmaker, using the same config.txt as you did.

When I start it, it immidiatly crashess.

Could you tell me how I should do it, since I have tried it in several ways, and it doesnt work, always crashes.

edit:

Hmm I am thinking about something else.

I edit your generated config.txt to this:

;!@Install@!UTF-8!
RunProgram="hidcon:INSTALL.CMD"
RunProgram="REGEDIT /S UPDATE.REG"
GUIMode="2"
;!@InstallEnd@!

And then just make a new installer. (so i dont have to remake it, just your way with editted config.txt).

Only im not sure if the 2nd runprogram will work?

Oh i forgot, then i have to edit the "_SNMsynth.cmd" also, otherwise it wont grab my UPDATE.REG file (and include it in the archive..)..

hm hm

im stuck. :P Help :D

edit:

Hmm I tried making the installer in this way:

http://www.wincert.net/forum/index.php?/to...less-installer/

And it didnt crash, i used the config.txt I placed earlier this post.

Edited by Raoul90
Link to comment
Share on other sites

Not sure why it fails in your first trial. For your second trial, the sfx accept multiple RunPogram entries, try RunProgram="hidcon:%SYSTEMROOT%\REGEDIT /S UPDATE.REG" if you want to hide the console, and don't forget to save the config.txt in UTF-8 mode, otherwise it won't work. Remember that 7zsd.sfx included in the SNMsynth packet is yet compressed with UPX.

And finally you got it, nice idea to make an ad-hoc _SNMsynth.cmd, are you having questions about how to do it?

Link to comment
Share on other sites

The script will ask you for it if needed.

You'll need NDP35SP1-KB963707-x86.exe in the work folder in case you are building an installer/nLite add-on containing .NET 3.5 SP1 framework, if you allowed it to install .NET Assistant add-on for Firefox therein, through the related setting in the .ini file. KB963707FIX.mst is precisely a fix to get that hotfix correctly applied to the installer, otherwise it generates errors on install (if I recall it correctly).

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...