Jump to content

Windows 95 / NT 4 Paint Under Windows NT 3.51


ppgrainbow

Recommended Posts

I'm currently running Windows NT 3.51 Workstation with SP5 installed under VMWare Player. I managed to replace the Windows NT 3.51 Paintbrush with Microsoft Paint from Windows NT 4.0 Workstation SP6.

The good news so far is this: Most of the Microsoft Paint functions work as-is under Windows NT 3.51 as it did with the original version of Paintbrush.

The bad news are the following:
1. In the File section, the Open, Save and Save As... features do not work. To work around this issue, you would have to either exit Microsoft Paint or select "New" to save the image where you will be prompted for a file name and where can you save the image. I have not tested the Save as Wallpaper (Tiled)/(Centered) feature.
2. In the Edit section, the "Copy to..." and "Paste from..." features don't work. You would have to copy the image to another Windows NT 3.51 compatible image editing programme and paste it there.
3. When you select a TrueType or Bitmap font, there is no option to select a font face name and the font size do not show in the Fonts window.
4. In the Options section, the "Get Colors..." and "Save Colors..." features do not work.

How can I get Microsoft Paint from Windows 95 or Windows NT 4.0 fully working under Windows NT 3.51?

1. Would there be a patch or code modification to fix the bugs that I listed above?

2. What files would I need to replace if necessary?

Sorry if I'm failing to provide enough information, but I'm gonna be turning in for the night soon. Would it be good if I can try to provide screenshots to see what I mean by this?

Link to comment
Share on other sites


I'm just curious what your end goal is with this project, besides just playing and maybe doing it because someone said it couldn't be done or something.  Is there a reason you want to use NT 3.51 instead of NT 4.0?  What does Paint do that Paintbrush doesn't?  Why do you need an end user app like Paint in a server OS anyway?

 

Cheers and Regards

Link to comment
Share on other sites

Windows NT 3.51 Workstation and Server is based on the Windows 3.1 codebase. Certain amounts of software (such as Office 97 and Corel Draw 6) that works under Windows 95, should work under Windows NT 3.51.

 

The reason why I wanted to use Windows NT 3.51 is that it takes up a lot less disk space and memory than Windows NT 4.0. The only downside is that Windows NT 3.51 is missing certain features that only exist under Windows NT 4.0 and Windows 95 respectively.

 

The end goal is to try to get remaining features from Windows 95/NT 4.0 Paint working under Windows NT 3.51. Here's a brief run down:

 

1. With Microsoft Paint from Windows 95 / NT 4.0, when you post a screenshot that has the original size of 1024 x 768 and the image attributes in Paint has a fixed image size of 500 x 500, you can have the full image resized. This feature doesn't exist in Windows NT 3.51 and parts of the image is displayed when it is pasted in Paintbrush.

 

2. You can use the magnifying glass to zoom the image between 100% to as high as 800% for example. Under Windows NT 3.51, you can only use the Zoom In and Zoom Out feature (found in the View menu).

 

3. The Win95/NT4 Paint included PBRUSH.EXE as a stub. Therefore, it doesn't work at all under NT 3.51.

 

Also, in NT 3.51, there were two features that were available. They were the Cursor Position feature in the View menu and the Omit Picture Format feature in the Options menu. Some of the features were changed in Windows 95/NT 4.0 respectively.

 

Here is what both versions of Microsoft Paint look like:

post-334069-0-44086300-1421737654_thumb.

 

The app on the left is the Windows NT 3.51 version of Paintbrush, the app on the right is the Windows NT 4.0 version of Paint.

 

I'm wondering if there is a way to import some of the code from Windows NT 3.51 Paintbrush to Windows NT 4.0 Paint to make the features such as saving and opening PaintBrush files work under Windows NT 3.51.

 

I couldn't read the post because MSFN was down most of the day.

Link to comment
Share on other sites

Ironically, I've gone the other way and continued to use the 3.1 or NT 3.51 Paintbrush accessories on Windows 95, 2000, and 7.  The scalable controls and ability to control the cursor with the arrow keys are the trump cards of the earlier version...they both have their advantages and disadvantages.

Link to comment
Share on other sites

You're referring to this:

http://web.archive.org/web/20140103015408/http://support.microsoft.com/kb/148494

PBRUSH.EXE "calls" MSPAINT.EXE in 95/NT4.

Here's a link to Win95/NT MSPAINT (Paint95).

http://www.computerhope.com/download/window95.htm

 

Whether it will run or how to go about installing is another matter, since I haven't researched farther that that.

 

HTH

 

edit -

Tested extracted files from Win95 on an NT3.51. Here's the file list necessary.

mfc30.dll
mfcans32.dll
mfco30.dll
mfcuia32.dll
mspaint.cnt
mspaint.exe
mspaint.hlp
msvcrt20.dll
pbrush.exe <-not really needed.

I put the above on a floppy and ran MSPAINT from File Manager.

Seems to work on -any- 32-bit OS.

I have -not tested the PAINT95.EXE one yet.

***edit2 - Yep, it also works. I put it on a DMF (1024 cluster size) and ran MSPAINT (same way).

Edited by submix8c
Link to comment
Share on other sites

You're referring to this:

http://web.archive.org/web/20140103015408/http://support.microsoft.com/kb/148494

PBRUSH.EXE "calls" MSPAINT.EXE in 95/NT4.

Here's a link to Win95/NT MSPAINT (Paint95).

http://www.computerhope.com/download/window95.htm

 

Whether it will run or how to go about installing is another matter, since I haven't researched farther that that.

 

HTH

 

edit -

Tested extracted files from Win95 on an NT3.51. Here's the file list necessary.

mfc30.dll

mfcans32.dll

mfco30.dll

mfcuia32.dll

mspaint.cnt

mspaint.exe

mspaint.hlp

msvcrt20.dll

pbrush.exe <-not really needed.

I put the above on a floppy and ran MSPAINT from File Manager.

Seems to work on -any- 32-bit OS.

I have -not tested the PAINT95.EXE one yet.

***edit2 - Yep, it also works. I put it on a DMF (1024 cluster size) and ran MSPAINT (same way).

 

Thank you for the heads up. I tried putting in the DLLs required and for some reason, the Windows 95 version of Paint still failed to save or open images under Windows NT 3.51.

 

The same thing applied to the updated files from PAINT95.EXE.

Edited by ppgrainbow
Link to comment
Share on other sites

There must be some kind of "hook" to another (preexisting) file then. You might try ProcessExplorer to see what's "missing". :unsure: Seems to have a whole mess of other dependencies (e.g. on OPEN "browseUI") as shown on an XP-type OS.

 

How do you mean "fails to open or save"? You mean by the (e.g.) "whatever.bmp" names? Older "PBRUSH" appears to have a ".PCX". The suffix. The Paint95 one does not allow for opening (older) "PC Paintbrush".

 

I really don't know if Process Explorer would run on that OS. It's kind of hard to test on my PC since I did it in VPC. Doubt if the Add-Ons would work on it (maybe?) since the only other than MSI Install is for DOS (i.e. Win 3.x?). It runs REALLY slowly otherwise. :(

 

edit - something became "missing" in my test bed. :puke: No time to mess with right now.

I did, however, find this (Win3.11).

ftp://ftp.microsoft.com/misc1/PEROPSYS/WINDOWS/KB/Q82/6/50.TXT
...listing REG entries. Edited by submix8c
Link to comment
Share on other sites

I'm running the Windows 95 Virtual PC VM right now. I opened up Microsoft Paint and I'm currently running Process Explorer v9.25. Here's are the following processes for MS-Paint (thanks to VPC Additions):

 

Process: MSPAINT.EXE PID: FFFD6E59

 

List of DLLs used for Microsoft Paint:

Name          Version         Base        Size        Date
ADVAPI32.DLL  4.71.0118.0000  0xBFED0000  0x0000E000  1999/3/16 0:00
COMCTL32.DLL  5.81.4807.2300  0xBFB70000  0x0008E000  2001/7/23 0:00
COMDLG32.DLL  4.00.0000.0951  0x7FEB0000  0x0001B000  1995/12/31 9:50
GDI32.DLL     4.00.0000.0952  0xBFF20000  0x00025000  2000/3/2 14:20
KERNEL32.DLL  4.00.0000.0951  0xBFF70000  0x00068000  1996/2/2 9:51
MFC42.DLL     6.00.8665.0000  0x5F400000  0x000F2000  2000/2/11 16:58
MPR.DLL       4.00.0000.0950  0x7FD40000  0x0000F000  1995/7/11 9:50
MSH_ZWF.DLL   4.00.0657.0000  0x61220000  0x0000B000  2001/5/9 19:00
MSNET32.DLL   4.00.0000.0956  0x7F300000  0x00014000  1999/11/11 11:52
MSPAINT.EXE   5.00.1523.0001  0x01000000  0x00052000  1997/5/16 8:49
MSSHRUI.DLL   4.00.0000.0950  0x7F890000  0x00017000  1995/7/11 9:50
MSVCRT.DLL    6.00.8797.0000  0x78000000  0x00044000  2000/3/7 15:22
MSWHEEL.DLL   4.00.0657.0000  0x61230000  0x00007000  2001/5/9 19:00
OLE32.DLL     4.71.3328.0000  0x65F00000  0x000C2000  1999/3/29 12:36
RPCRT4.DLL    4.71.3328.0000  0x70100000  0x00053000  1999/3/29 12:36
SHELL32.DLL   4.72.3612.1700  0x70980000  0x00156000  1999/3/16 4:43
SHLWAPI.DLL   5.50.4807.2300  0x70BD0000  0x0004C000  2001/7/23 0:00
SVRAPI.DLL    4.00.0000.0950  0x7F8C0000  0x00009000  1995/7/11 9:50
USER32.DLL    4.00.0000.0950  0xBFF60000  0x0000F000  1995/7/11 9:50
WINSPOOL.DRV  4.00.0000.0950  0x7FEF0000  0x00009000  1995/7/11 9:50

 

List of Handles need in Microsoft Paint:

Type        Name                       Handle  Access      Object Address
Event                                  0x10    0x00100000  0x81629F2C
Event                                  0x12    0x00100000  0x81629FB4
MappedFile  rpcrt4sharedmem            0x11    0x00000000  0xC1086E5C
MappedFile  fileAllocatorMutex         0xA     0x00000000  0xC1085F18
MappedFile  DCOMSharedGlobals12321     0xD     0x00000000  0xC1085F74
MappedFile  fileAllocatorMutex           0xF     0x00000000  0xC1085F18
Mutex       MPRMutex                   0x13    0x00100000  0x81605818
Mutex                                    0x14    0x00100000  0x8162A190
Mutex       svrapi                     0x15    0x00100000  0x8161A824
Mutex       OLESCMLOCKMUTEX            0x2     0x00100000  0x8160F870
Mutex       OleCoSharedStateMtx        0x3     0x00100000  0x8160F9E8
Mutex       OLESCMSRVREGLISTMUTEX      0x4     0x00100000  0x8160FA2C
Mutex       OLESCMGETHANDLEMUTEX       0x5     0x00100000  0x8160FA74
Mutex       OLESCMROTMUTEX             0x6     0x00100000  0x8160FABC
Mutex       OleDfSharedMemoryMutex     0x7     0x00100000  0x8160FB30
Mutex       ScmWIPMutex                0x8     0x00100000  0x8160FC2C
Mutex       WHEEL_FEATURES_MUTEX       0xB     0x00100000  0x8161D9F8
Mutex       ObjectResolverGlobalMutex  0xC     0x00100000  0x8160FCEC
Process     MSPAINT.EXE(FFFD6E59)      0x1     0x001F0FFF  0x816279D4
Semaphore   DocfileAllocatorMutex      0x9     0x00100000  0x8160FBB8
Semaphore   DocfileAllocatorMutex      0xE     0x00100000  0x8160FBB8


As for failing to open or save, that's what I'm talking about.

 

Now as for dependencies and hooks that are required to run the Windows 95 version of Microsoft Paint, do you have any idea what is missing in Windows NT 3.51? I'll edit this if I finally found something.

Edited by ppgrainbow
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...