Jump to content

Copy2Gb


LLXX

Recommended Posts

Okay! I had thought something was screwed up. I didn't see how the patch affected the look of buttons, but I found it did. It's nice to know it was "by design."

I'm just used to the jutting out buttons. No problem. I'm glad we have alternatives.

I installed all of LLXX's Copy2GB fixes under several old Win98FE/98SE/ME machines and they didn't mess anything up on them. they're definitely keepers.

Link to comment
Share on other sites


  • 2 weeks later...

Hello,

There I was writing the code for my opus of a release, and before I know it, I've written a complete stand-alone automatic installer and checker for the Copy2gb bug fix by LLXX. Strange if you ask me. Anyway, I may as well release it ...

what does it do?

* replaces the kernel32.dll version you actually have as opposed to replacing with just any old one. If people think i should change this to install the latest one, please say something.

* uses an automatic installation, and checking process to see if the update is needed, and installed correctly.

* Windows can be on any drive and in any directory location.

* Offers an undo function to completely reverse the installation. And you can install and un-install ad nauseum.

* This will be most useful for those not completely comfortable with mucking about with command-line DOS stuff. Absolutely no programming experience is needed to use this.

* this is an alpha release. please help by checking it out ...

Download: http://members.iinet.com.au/~hiandy/COPY2GB_installer.exe

EDIT: For Windows 98se only at this stage !!! It is easily modifyable to include all the necessary OSes to do them all with the one installer. I just wouldn't touch Windows 95 or ME with a 2 mile long barge pole so don't look to me to do it!

Edited by soporific
Link to comment
Share on other sites

soporific:

Great job.

Keep it up. :thumbup

Although I have a few comments, if you don't mind.

I'm guessing that you created this patch so users can install older versions of Kernel32.dll at will, in order to [probably] experiment which version works better on their computers?

I'm asking this because these 2 installers do the same:

- COPY2GB.EXE:

http://www.mdgx.com/files/COPY2GB.EXE

- C2GBME.EXE:

http://www.mdgx.com/files/C2GBME.EXE

They also:

- check for file version

- install no matter where Windows OS is installed: any folder/drive/partition

- add uninstall item in Control Panel -> Add/Remove Programs, which allows to install and uninstall as many times over, as many times as 1 wants.

What these 2 installers don't do [and I don't approve of any M$ patch installer doing so]:

they don't install older kernel32.dll builds [4.10.2222, 4.10.2224, 4.10.2225 etc].

Why I don't approve of installing any older system files:

because [as I said before in this forum] older system files have bugs/flaws, and should be always and as soon as possible replaced with newest files [which patch those bugs/flaws] whenever available.

Older system files contain unpatched bugs, and if they are used to patch only 1 or a few bugs without patching all previous bugs, they defeat the purpose of completely and correctly patching a buggy OS.

Only newest files contain all up-to-date patches, and they are the only ones that should be used to patch any other bugs/flaws that may be discovered after the last patched version was created.

Otherwise the OS will be exposed to all security flaws, vulnerabilities, bugs, lockups, errors, IPFs, buffer overflows etc..., or whatever other problems have been fixed in newer/current versions.

COPY2GB.EXE installs the latest version of kernel32.dll:

- 4.10.2226 on 98 SE

or [whichever OS is detected]

- 4.10.2002 on 98 (FE) + 98 SP1

C2GBME.EXE does the same thing on WinME: installs kernel32.dll 4.90.3001 .

Both these installers also check for Windows OS build and install only on proper OS edition.

They do not install on any NTx OSes.

They are built using M$ iexpress interface using SED configs + INF installers, just like all official M$ patches.

This is recommended, because:

- it is a UI based installer which most people are familiar with

- abides by M$ patch/(hot)fix guidelines as much as possible

- iexpress/SED based installers are more flexible, and provide more options [for OS/file version checks, for example] than plain DOS based BATch files.

BTW:

By using:

VER | FIND "whatever"

commands in your batch files, might return an error.

This is because certain people [some actually frequent these forums quite a bit] use a 3rd party [non-M$] command shell environment, like 4DOS, NDOS etc.

And if using for example 4DOS [which replaces COMMAND.COM with 4DOS.COM], the VER | FIND command won't work properly, because it has completely different errorlevel response in 4DOS.

Also, if using 4DOS, COPY/Y must be replaced with COPY/Z or use:

SET COPYCMD=/Z

instead of:

SET COPYCMD=/Y

Just my 2 ¢

Hope this helps.

Link to comment
Share on other sites

soporific:

I'm guessing that you created this patch so users can install older versions of Kernel32.dll at will, in order to [probably] experiment which version works better on their computers?

Yep.

They are built using M$ iexpress interface using SED configs + INF installers, just like all official M$ patches.

This is recommended, because:

- it is a UI based installer which most people are familiar with

- abides by M$ patch/(hot)fix guidelines as much as possible

- iexpress/SED based installers are more flexible, and provide more options [for OS/file version checks, for example]than plain DOS based BATch files.

maybe I should bite the bullet and learn!

And if using for example 4DOS [which replaces COMMAND.COM with 4DOS.COM], the VER | FIND command won't work properly, because it has completely different errorlevel response in 4DOS.

Also, if using 4DOS, COPY/Y must be replaced with COPY/Z or use:

Would a simple check for the existence of 4DOS.COM bypass this issue?

SET COPYCMD=/Z

instead of:

SET COPYCMD=/Y

You've lost me here ...
Hope this helps.

Always!!!

Link to comment
Share on other sites

- add uninstall item in Control Panel -> Add/Remove Programs, which allows to install and uninstall as many times over, as many times as 1 wants.
I don't think this is a good idea, just like with the Enable48BitLBA - who would want to remove 2GB+ and Enable48BitLBA support anyway?
Link to comment
Share on other sites

soporific:

No need for NDOS/4DOS detection if using only the COPY command.

All you need to do is replace COPY or COPY/Y from MS-DOS using COMMAND.COM as environment shell with:

COPY/Y/Z

to "cover" for the NDOS/4DOS COPY /Z switch.

And even if using COPY/Y/Z with MS-DOS COMMAND.COM, it won't complain, it will work anyway.

SET COPYCMD=/Y

sets the /Y switch [always overwrite the same file if present into the target directory] in the environment [memory] as default, until you reboot or until a batch file/command overrides it with other command line switch(es).

To add this command to the "master" environment [before Windows 9x loads], you need to either add this line to your autoexec.bat or config.sys [MS-DOS older than version 6.00 does not support config.sys SET commands], or run it either from a batch file of from the DOS prompt before Windows loads.

If you run this from within a Windows DOS box/session, it gets lost after you close the DOS box/session.

Or add it into a batch file to always copy, even if it overwrites the same file in the destination directory.

Run:

COPY/?

from any DOS prompt, or run:

HELP COPY

to see even more details.

COPY is an internal [built-in] MS-DOS COMMAND.COM command, an actual file does not exist.

NDOS + 4DOS also use COPY [built into 4DOS.COM], but with different switches.

If you'd like to try 4DOS, it's freeware:

http://www.jpsoft.com/download.htm

Download [1.3 MB]:

http://jpsoft.com/downloads/4dos/4dos750.exe

Of course, you can detect the presence of 4DOS.COM in memory, if you like [example]:

MEM /C | FIND /I "4DOS"

IF ERRORLEVEL 1 GOTO D0S

COPY/Y/Z X:\DIR\FILE ........

:D0S

MEM /C | FIND /I "COMMAND"

IF ERRORLEVEL 1 GOTO END

COPY/Y X:\DIR\FILE ........

:END

If you care to learn about INF + SED files to build iexpress installers, see:

http://www.mdgx.com/INF_web/

and:

http://www.mdgx.com/add.htm#INF

Download CAB SDK 32-bit:

http://download.microsoft.com/download/pla...n-us/Cabsdk.exe

and start reading the DOCs.

And Petr's findings are always invaluable:

http://www.msfn.org/board/?showtopic=49202

HTH

Edited by MDGx
Link to comment
Share on other sites

  • 1 month later...
You are great and fast. :w00t:

I have 2 questions:

- What is the difference between your patch and this patch? http://www.mdgx.com/files/C2GBME.EXE

- Can you explain to me how you have made to copy the fix from english file to italian file, please?

Don't know what's with that one. The _llseek doesn't even look like it was fixed.

Edit: This problem doesn't affect explorer.exe in WinME so maybe that file is just a dummy.

2. Just fc an English kernel with yours. The new code is ~2bbbc and 64 bytes in the ME kern and the same in all language versions.

Edited by LLXX
Link to comment
Share on other sites

You are great and fast. :w00t:

I have 2 questions:

- What is the difference between your patch and this patch? http://www.mdgx.com/files/C2GBME.EXE

- Can you explain to me how you have made to copy the fix from english file to italian file, please?

Don't know what's with that one. The _llseek doesn't even look like it was fixed.

Edit: This problem doesn't affect explorer.exe in WinME so maybe that file is just a dummy.

I found the link here: http://www.mdgx.com/web.htm#WME but it is strange because in the page near path link there is a "More Info" link that point to this thread.

2. Just fc an English kernel with yours. The new code is ~2bbbc and 64 bytes in the ME kern and the same in all language versions.

With fc you mean file compare? By using ExamDiff I compared english patched file with italian patched file and I get 1510 differences.

Could you explain in a more simpler way, please?

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