Posted: . At: 7:47 PM. This was 4 years ago. Post ID: 14648
Page permalink. WordPress uses cookies, or tiny pieces of information stored on your computer, to verify who you are. There are cookies for logged in users and for commenters.
These cookies expire two weeks after they are set.



Sponsored



Windows 2000 source code leaked.


Windows 2000 Advanced Server logo.

The Windows 2000 and Windows NT 3.51 source code has leaked on to the Internet. This is a very interesting release of code. I wonder how much of this code is still in Windows 10. it is nice to look back at older releases of Windows and see how it was coded back then. It even has the Internet Explorer source code. Below is a segment from the unixstuff.cpp in the Internet Explorer source code. Does this mean it would/could work on UNIX, or is this to handle connecting to UNIX servers? This is a goldmine for Microsoft historians. The complete source code of Windows 2000. I wish it was Advanced Server. That was fun to mess around with. The GNU Makefile for Internet Explorer mentions SunOS. That would have been very interesting. But we still have Solaris.

Windows 2000 was a very nice and secure operating system. It is a pity that Windows 10 is having so many problems, but Microsoft is a shadow of their former selves. They are causing more and more problems with each addition to the operating system. Windows 2000 had a lot of service packs. But it was still very usable. Service Pack 5 is a cumulative service pack that includes 403 fixes into one massive pack. I wish that MS had just worked on Windows 2000 and made it even better and we could still run it instead of using Windows 8.1 and 10. But that is progress.

unixstuff.cpp
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
#if 0
#define WMC_UNIX_NEWWINDOW            (WM_USER + 0x0400)
BOOL RemoteIENewWindow(LPTSTR pszCmdLine)
{
    HWND hwnd; 
    LPTSTR pszCurrent = pszCmdLine;
 
    while (*pszCurrent == TEXT(' '))
        pszCurrent++;
    if (*pszCurrent == TEXT('-'))
        return FALSE;
 
    if (hwnd = FindWindow(IEREMOTECLASS, NULL))
    {
        COPYDATASTRUCT cds;
        cds.dwData = IEREMOTE_CMDLINE;
        cds.cbData = pszCmdLine ? (lstrlen(pszCmdLine)+1)*sizeof(TCHAR) : 0;
        cds.lpData = pszCmdLine;
        SetForegroundWindow(hwnd);
        SendMessage(hwnd, WM_COPYDATA, (WPARAM)WMC_UNIX_NEWWINDOW, (LPARAM)&cds);
	printf("Opening a new window in the currently running Internet Explorer.\n");
	printf("To start a new instance of Internet Explorer, type \"iexplorer -new\".\n");
	return TRUE;
    }
    return FALSE;    
}
#endif
 
// Entry point for Mainwin is WinMain so create this function and call
// ModuleEntry() from here.

A section of the GNUMakefile for Internet Explorer is below. This has options for compilation on SUN OS.

gnumakefile
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
## you may define the following variables
APP_CFLAGS=-DMWXCLASS_NAME=\"Iexplorer\" \
           -DMWNO_INITIAL_FONT_CACHE_UPDATE	
 
PROJECT_CFLAGS = -DWINDOWS_ME -DWINNT \
                 -DFE_IME -DDBCS -DPRIVATE= -DULTRAPRIVATE=  \
                 -DUSE_PRIVATE_VERSION_NUMBER -DNOPRAGMAS 
 
ifeq (${MWOS},sunos5)
PROJECT_LDFLAGS = -libmieee  
endif
PROJECT_LDFLAGS += -lshlwapi -luuid -lstocklib -ladvapi32
 
__cplusplus = true
 
# Map files are not currently supported by quantify.  So added the ifndef
# so that the use of function maps can be def'ed out when doing a build
# for quantify. (prasadt)
 
ifndef NO_MAP_FILES
MAPFILE.sunos5=iexplore.map
endif

This leak also contains the MS-DOS 6.0 source code in ASM. This might even compile. But we have FreeDOS now anyway. I wish that Microsoft would start caring about the customers again and releasing proper products instead of the garbage that deletes files and corrupts the system when a user installs an update, but this is 2020 and they only care about selling copies and not the end-users. The end-user is just a beta tester now. That is a great shame.


Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.