Jump to content

Win 98SE and MSN Messenger


justacruzr2

Recommended Posts

I have a small problem I'm hoping someone might be able to help me with.  I had to re-install Win 98SE from scratch and I'm configuring it as close to my Win ME and XP systems as is possible (same programs, settings, etc). Since the original Win 98SE that I had actually came on a hard drive I removed from a computer that was being thrown away,  I never noticed that Win 98SE did not come with MSN Messenger as an optional component in Add/Remove Programs - Windows Setup under Communications. It's not even in 98SE's cabs so I'm giving it this optional component by copying everything from Win ME. I did something similar to this in my Win ME system before and gave it MS Backup from Win 98SE and it works just fine

Here is the background work I have done.

1) Copied the setup inf (MSMSGS.INF) into \Windows\Inf,

2) Created a new cab (WIN98_75) with the required files and put it with the other cabs in \Windows\Options\Win98. This is where the Windows setup program and all its cabs were copied to after it finished installing Windows 98SE and where the registry key
"HKLM\Software\Microsoft\Windows\CurrentVersion\Setup\SourcePath" points to (yes I modified that entry),

3) Added the following line to the Layout, Layout1 and Layout2 Inf files to include this new cab:

75="Windows 98 Second Edition CD-ROM","WIN98_75.CAB",0

and the install files in the file list:

msmsgs.exe=75,,438544
msmsgsc.dll=75,,20752
msmsgsin.exe=75,,12560
msgslang.dll=75,,102672
msgstrst.dll=75,,20752
newemail.wav=75,,6156,406f
online.wav=75,,6160,9371
pmsnlogo.gif=75,,1439
type.wav=75,,4454,773d

4) Manually added "Messenger" to the Registry key:

HKLM\Software\Microsoft\Windows\CurrentVersion\Setup\OptionalComponents

with the following entry:

(default)              (Value)
INF                      "msmsgs.inf"
Installed              "0"
Section               "Msgr.Option.Install"

5) Added the following values to the registry key (as these were not present as explained above):

HKLM\Software\Microsoft\Windows\CurrentVersion\Setup\VarLDID

(default)             (Value)
30600                "C:\PROGRA~1\MESSEN~1"
30601                "C:\Program Files\Messenger"
30602                "C:\PROGRA~1\MESSEN~1"

The reason for this is the following section from the MSMSGS.INF setup file and I noticed that almost all the entries were in 3's (the DOS SFN first, the Windows LFN and then the the DOS SFN again:

[DestinationDirs]
BLC.Install.App = 30600
BLC.CleanPrev.App = 30600
BLC.Remove.App = 30600
BLC.Install.Help = 18
BLC.Remove.Help = 18
BLC.Install.Inf = 17
BLC.Install.Shared = 11

All of these things are verbatim copied from Win ME.

Now to the problem. Messenger now shows up in Add/Remove Programs - Windows Setup under Communications and when I check the box and click on Apply the setup works just fine: All files are extracted and copied, all registry entries are made and no error messages. However it creates it in the folder "MESSEN~1" (literally) under the Program Files folder (ie. Program Files\MESSEN~1). Tried it the other way by changing the 30600 to 30601 but got "Messenge" under Program Files. I get it...it's the DOS 8 character file name limitation. What I don't get is why it's doing this. Thought part of the purpose of the VarLDID entries was to associate the DOS SFN with the Windows LFN.  Anyone know what's going on?  I know that the MSN Messenger service has been discontinued but it's more about the challenge of making it work.  So why is Win 98SE using the DOS SFN instead of the LFN?  All the other optional components you can install from Add/Remove Programs - Windows Setup work fine.  Why this one?

Link to comment
Share on other sites


(default)             (Value)
30600                "C:\PROGRA~1\MESSEN~1" <-------+
30601                "C:\Program Files\Messenger"   |
30602                "C:\PROGRA~1\MESSEN~1"         |

[DestinationDirs]                                   |
BLC.Install.App = 30600 <---------------------------+
BLC.CleanPrev.App = 30600
BLC.Remove.App = 30600

 

You think maybe that's why? ;) Try using "30601" in the "DestinationDirs" entries. :yes:

Edited by submix8c
Link to comment
Share on other sites

(default)             (Value)

30600                "C:\PROGRA~1\MESSEN~1" <-------+

30601                "C:\Program Files\Messenger"   |

30602                "C:\PROGRA~1\MESSEN~1"         |

[DestinationDirs]                                   |

BLC.Install.App = 30600 <---------------------------+

BLC.CleanPrev.App = 30600

BLC.Remove.App = 30600

 

You think maybe that's why? ;) Try using "30601" in the "DestinationDirs" entries. :yes:

 

Thanks for your reply but I'm forced to wonder if you read my post.  

From my post:

"The reason for this is the following section from the MSMSGS.INF setup file and I noticed that almost all the entries (in VarLDID) were in 3's (the DOS SFN first, the Windows LFN and then the the DOS SFN again:"

If you have a 9x version of Windows, please check your registry key:

HKLM\Software\Microsoft\Windows\CurrentVersion\Setup\VarLDID

and you will see what I mean.  Almost all the entries are in 3's.  No idea why there are a few that aren't.  Tried it with only 1 entry also but that made no difference.

And from my post:

"Tried it the other way by changing the 30600 to 30601 but got "Messenge" under Program Files"."

Link to comment
Share on other sites

30600 "C:\PROGRA~1\MESSEN~1"

"PROGRA~1" works for "Program Files" because the folder already exists so do the same with "MESSEN~1" / "Messenger":

1) Rename the folder "Messenger"

2) Check its properties to confirm the DOS filename is "MESSEN~1"

3) Use 30600

Win98se is not WinME; sometimes it needs a little bit of manual help to work around DOS limitations like 8.3 filenames.

p.s. filenames in Wininit.ini are known to get truncated to 8.3

Link to comment
Share on other sites

Thanks Jumper.  That's what I was going to do as a last resort.  Funny thing is, I tried that early on to see if Setup would also delete the folder when you uncheck the box for Messenger in Add/Remove Programs - Windows Setup to remove the component and it didn't....even though the INF tells setup to remove the directory too during the uninstall.  

******************
[bLC.Remove.Dirs]
%30600%
******************

And when I right clicked on the folder and clicked on properties the DOS name was "MESSEN~1".  So it seems that Explorer knows that "MESSEN~1" is "Messenger".  The only thing I have seen in some other INF's that create folders is this example from the Applets1.inf:

*********************************************************************
HKLM,%KEY_RENAME%\Accessories,,,"%24%\%PROGRAMF%\%ACCESSOR%"

[strings]
;Non-Localizable strings:

KEY_RENAME = "Software\Microsoft\Windows\CurrentVersion\RenameFiles"
*********************************************************************

It looks like they use a temporary registry key to rename files (or folders) as no such key exists in the registry (after the install of course).  Without understanding its proper use (ie. what %24% means - it's not defined in the [strings] section) it will take some trial and error.  Wish there was a complete description out there of Microsoft's setup scripting language (the programing language that the INF's use).

Anyway, 98SE does have its own little peculiar quirks.

Link to comment
Share on other sites

*********************************************************************

HKLM,%KEY_RENAME%\Accessories,,,"%24%\%PROGRAMF%\%ACCESSOR%"

[strings]

;Non-Localizable strings:

KEY_RENAME = "Software\Microsoft\Windows\CurrentVersion\RenameFiles"

*********************************************************************

It looks like they use a temporary registry key to rename files (or folders) as no such key exists in the registry (after the install of course).  Without understanding its proper use (ie. what %24% means - it's not defined in the [strings] section) it will take some trial and error.  Wish there was a complete description out there of Microsoft's setup scripting language (the programing language that the INF's use).

Anyway, 98SE does have its own little peculiar quirks.

%24% is a "LDID" reference to a specific directory. I'm not sure which offhand. They are not defined in the strings section. Common Windows directories are assigned a number, or "LDID" (Logical Directory ID) that remains standard and can be used during SETUP or when installing programs. %11% is SYSTEM, %22% is SYSTEM\VMM32, %12 is SYSTEM\IOSUBSYS, etc etc.

Here's an excerpt from the INF file for a HotFix. It doesn't define %24% though.

[DestinationDirs]; 10=Windows, 11=SYSTEM, 12=IOSUBSYS, 13=COMMAND, 14=Control Panel, 15=Printers, 16=Workgroup; 17=INF, 18=Help, 19=Administration, 20=Fonts, 21=Viewers, 22=VMM32, 23=Color, 25=Shared; 26=Winboot, 27=Machine, 28=Host Winboot, 30=Boot drv root, 31=Root of Boot drv Host; 00=Null (new) LDID, 01=Source drv:\path, 02=Temp Setup, 03=Uninstall, 04=Backup
Link to comment
Share on other sites

  • 3 weeks later...

I have created an unofficial installer of MSN Messenger 7.0.0820 for users who don't have IE6 installed. It installs and runs smooth from what I can see. I don't use any version of IE, only the core files from SP3. You can also download the A-Patch to modify the bloat. http://apatch.org/downloads/

 

Make sure you download the MSN version. If interested, I will upload.

If you decide to use A-Patch on Windows 98, users must uncheck the options or the the patch will hang. Those specific options DoNot work on Windows 98.

Show Idle StatusShorten Status Info in Info Bar
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...