Jump to content

Recommended Posts

Posted

Hello :)

In fact, I'd like to register dll "regsvr32 name.dll" during the installation without using a batch file.

If I could not use GuiRunOnce, it'd be nice too :).

How can I do ?

Thanks :)

Sorry for my English...


Posted

ok

the way i would do that it is using Nlite

there is a tab called unattedned setup -> runOnce

put in there something like this

%source%\settings\runonce.cmd

in the runonce.cmd file

you put in ur commond there

its like a bat file ... type of thing

:)

hope its helps

Posted

Thanks, but it's the same thing as a .bat file ;).

I'd like to put regsvr32 directly in a file, without a dos file ;).

Posted (edited)

Directly put a file called CMDLINES.TXT in $OEM$ and in it type:

[COMMANDS]
REGSVR32 xxxxxxx.DLL

CMDLINES is parsed around T-12, a bit after the middle of the Gui part of setup.

But $OEM$ folders have to work, so not a lot of use in multboot dvds.

Hope this helped! :)

Edited by T D
Posted

are you using Nlite ? or not at all

if so

there is a runonce tab just add it there

i take it ur using XP or 2000

there is a sub dos there still

Posted

Thanks for your answers but, I don't want to use runonce, Guirunonce, .bat file, .cmd file... lol.

I'd like dll to be registered like the others, without using regsvr32 somewhere.

Do you understand ?

Posted (edited)
I'd like dll to be registered like the others, without using regsvr32 somewhere.

You want it the hard way :P

You'll have to work hard on this one but I give a way to do it.

1) You need to unlock Windows XP setup and for that you need a patched syssetup.dll

2) You must edit the [OleControlDlls] section of syssetup.inf and add the file you want to register.

I can give you the patched syssetup.dll but for the rest, like I said, you'll have to do some work because I don't know what you are trying to do.

Unlock Windows XP Setup

Edited by jdoe
Posted (edited)

I'd like dll to be registered like the others, without using regsvr32 somewhere.

You want it the hard way :P

You'll have to work hard on this one but I give a way to do it.

1) You need to unlock Windows XP setup and for that you need a patched syssetup.dll

2) You must edit the [OleControlDlls] section of syssetup.inf and add the file you want to register.

I can give you the patched syssetup.dll but for the rest, like I said, you'll have to do some work because I don't know what you are trying to do.

Unlock Windows XP Setup

:hello: L'Azimuté !

I would like to do Windows Server 2003 w/SP1 ENU syssetup.dll patching automated with XVI32 script run from the command line. I need to locate the offset where to change some bits.

File compare between original and nLite patched

Search for differences

1. B:\syssetub.dll: 1,047,040 bytes

2. B:\syssetup.dll: 1,047,040 bytes

Offsets: hexadec.

148: 65 F7

149: CE F1

35CB3: 8B 33

35CB4: FF C0

35CB5: 55 C2

35CB6: 8B 04

35CB7: EC 00

36F45: 56 33

36F46: 56 C0

36F47: 56 EB

36F48: 56 29

5B4FE: 75 90

5B4FF: 07 90

13 difference(s) found.

:wacko:

which one should i change? I have PM nuhi hoping he would find some time to answer.

Instead of storing two copy SYSSETUB.DL_ and SYSSETUP.DL_ in source folder and renaming it with nlhive.inf at 1st GUI launch

[Version]

Signature = "$Windows NT$"

[nLite]

HKCU,"SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce","nlsf",0x00020000,"cmd.exe /C move /Y ""%SystemRoot%\System32\syssetub.dll"" ""%SystemRoot%\System32\syssetup.dll"""

we can try to reverse patch on the patched DLL and get back to original unpatched syssetup.dll

Could you help me to write the xsc script. Or for starting with this stuff, is the example for patching XP SP2 ENU syssetup.dll according to infos posted at your patches Webpage correct.

something like:

%ProgramFiles%\xvi32\XVI32.exe %temp%\syssetup.dll /S=%ProgramFiles%\xvi32\syssetuprepl.xsc 33679 73 72

REM goto offset %1
ADR $%1
REPLACE %2 BY %3

Merci pour l'aide que tu pourras m'apporter, ami francophone de l'autre côté de l'océan.

Thanks for help.

Edited by Bilou_Gateux
Posted
:hello: L'Azimuté !

I would like to do Windows Server 2003 w/SP1 ENU syssetup.dll patching automated with XVI32 script run from the command line. I need to locate the offset where to change some bits.

File compare between original and nLite patched

Search for differences

1. B:\syssetub.dll: 1,047,040 bytes

2. B:\syssetup.dll: 1,047,040 bytes

Offsets: hexadec.

148: 65 F7

149: CE F1

35CB3: 8B 33

35CB4: FF C0

35CB5: 55 C2

35CB6: 8B 04

35CB7: EC 00

36F45: 56 33

36F46: 56 C0

36F47: 56 EB

36F48: 56 29

5B4FE: 75 90

5B4FF: 07 90

13 difference(s) found.

:wacko:

which one should i change? I have PM nuhi hoping he would find some time to answer.

Instead of storing two copy SYSSETUB.DL_ and SYSSETUP.DL_ in source folder and renaming it with nlhive.inf at 1st GUI launch

[Version]Signature = "$Windows NT$"

[nLite]

HKCU,"SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce","nlsf",0x00020000,"cmd.exe /C move /Y ""%SystemRoot%\System32\syssetub.dll"" ""%SystemRoot%\System32\syssetup.dll"""

we can try to reverse patch on the patched DLL and get back to original unpatched syssetup.dll

Could you help me to write the xsc script. Or for starting with this stuff, is the example for patching XP SP2 ENU syssetup.dll according to infos posted at your patches Webpage correct.

something like:

%ProgramFiles%\xvi32\XVI32.exe %temp%\syssetup.dll /S=%ProgramFiles%\xvi32\syssetuprepl.xsc 33679 73 72

REM goto offset %1
ADR $%1
REPLACE %2 BY %3

Merci pour l'aide que tu pourras m'apporter, ami francophone de l'autre côté de l'océan.

Thanks for help.

@Bilou_Gateux

I replied to your PM before reading this post. Now I know what you are trying to do.

Maybe I'm not aware of something but what is the problem with keeping the patched syssetup.dll after the installation.

About reversing the patch, it could be done but I think WFP will block writing the dll.

Like I said in the PM I sent you, it is easy to write a very small program (something like 3-4Kb) that will patch and unpatch from command line with a switch like /P and /U but does Windows will let writing to it without complains. I don't know.

Posted (edited)

@jdoe

Thanks.

Here the answer you give through PM.

À l'offset hexadécimal 36F29 ou (225065 décimal), tu trouveras les deux bytes suivant "737A" ce qui représente "jnb 5B3E7BA5" en assembleur (5B3E7BA5 étant où le jump doit aller pour éviter la vérification de la signature de syssetup.inf).

Donc pour éviter cette vérification on n'a qu'à changer jnb par jb ce qui veut dire en résumé qu'à l'offset 36F29 il faut changer 73 par 72.

If we change jnb 5B3E7BA5 to jb 5B3E7BA5 then we skip the verification and our modified SYSSETUP.INF is not recognize as an invalid file. This mean that only one byte patching is needed. So, at offset 36F29 you should read and write the following :

73 7A : jnb 5B3E7BA5

Changed by

72 7A : jb 5B3E7BA5

[EDIT]

Offset address value is for both 2003 Server w/ SP1 ENU or FRA syssetup.dll.

[/EDIT]

And a good hexeditor recommendation from jdoe:

FRee Hex ED

Haven't yet read the help file to check if command line support (unattended) exists?

nLite patched syssetup.dll add more features:

Added automatic hacking of syssetup.dll for OOBE disabling (if you choose to remove it, this will not crack Activation).

SFC is entirely disabled too simply by copying hacked dll from Data and adjusting registry.

Edited by Bilou_Gateux
  • 9 months later...
Posted (edited)

With the release of Windows Server 2003 Service Pack 2, syssetup.dll binary has been updated.

@jdoe

can you give us the new offset address and data value to change.

Edited by Bilou_Gateux

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...