Path: fnnews.fnal.gov!mp.cs.niu.edu!ux1.cso.uiuc.edu!uwm.edu!zaphod.mps.ohio-state.edu!cs.utexas.edu!uunet!underg!max From: max@underg.ucf.org (Max Cray) Newsgroups: comp.os.ms-windows.programmer.win32 Subject: Windows NT FAQ (October 92) Message-ID: Date: Wed, 21 Oct 92 14:26:28 EDT Organization: Underground Computing Foundation Lines: 1732 Sorry this took so long to come out. Well its good for a week or two until we get our paws on the new update... -- Archive-name: ms-winnt-faq Last-modified: 1992-10-20 Related-archives: ms-windows-faq, ms-winprog-faq ---------------------------------------------------------------- ###### #### ############ Microsoft ####### #### ############ ######## #### #### Windows New Technology (NT) #### #### #### #### #### #### #### #### Frequently Asked Questions #### ######## #### #### ####### #### October 1992 #### ###### #### --------------------------------------------------------------- TABLE OF CONTENTS 0. Index General Information 1. How do I get a copy of the preliminary release? 2. Is this beta software? 3. How do I sign up for the beta program? 4. What are the minimum system requirements to run Windows NT? 5. Will Windows NT run on my hardware? 6. It will not run on my 386 (B0 or B1 step problem). 7. Windows NT will not work on my MIPS machine. 8. Is there a driver for my hardware? 9. How do I make Windows NT cohabit my hard drive with OS/2 2.0? 10. I get Trap 0x0000000E. 11. Windows NT boots, looking for the wrong boot directory. 12. BOOT can not find NTLDR. 13. How can I replace the boot sector/recover from a crash? 14. My SoundBlaster/AudioPro card does not work. 15. I can not print to LPT1. 16. I get error 0x00000069. 17. Dell machine only recognizes 16MB. 18. Zenith 386/33E lock up problem. 19. TCP/IP support. 20. Will it work with my Bernoulli or other removable media? 21. Adaptec AHA 1542B driver problem. 22. Does Windows NT support dual SCSI controllers? 23. Is the system supposed to use 70 threads? 24. I can not print the postscript documentation on my printer. 25. Does Windows NT support stackable file systems? 26. Is there an X Server for Windows NT yet? 27. Is there a version of EMACS available, yet? 28. Are there any Internet ftp sites for Windows NT, yet? 29. Why does Microsoft not provide support via the Internet? 30. What is the best way to use CompuServe? 31. Are there any books on Windows NT? Programming Information 31. CVPACK: Fatal error CK1007. 32. Missing C++ header files. 33. Errors from ExitWindows function. 34. Can I use a DLL to implement shared memory? 35. Unicode level of support 36. Sample source code requests. 37. MS Developer Network 38. Where is the Device Driver Kit (DDK)? Appendix A: 0992HW.TXT Latest Hardware Compatibility List Appendix B: HWFEED.TXT Form to request MS provide support for hardware. Appendix C: BUGREP.TXT Form to notify MS of Bugs. Appendix D: MIPS specific information. ---------------------------------------------------------------------- Subject: How to Get the Windows NT Preliminary Release 1. How do I get my paws on the latest in operating systems? A. The Win32 Preliminary SDK for Windows NT provides you with access to the broader capabilities of the Win32 API with features such as preemptive multitasking, multi-threading, 32-bit flat memory model, and security. By purchasing the Win32 SDK you will receive preliminary and final versions of the Windows NT operating system and SDK tools in addition to preliminary versions of a C/C++ compiler. The cost of the Win32 SDK with printed documentation is $399. A CD-only version containing the documentation in PostScript format is also available for $69. (If you later decide that you want the hard-copy documentation from Microsoft, there is a coupon in the box for you to order it for $359 plus freight.) To order from within the U.S, please call Microsoft Developer Services at (800) 227-4679. In Canada, call (800) 563-9048. In all other countries, contact your local Microsoft representative. -- Subject: Windows NT is a Preliminary Release, not a Beta 2. Should I get the beta version of NT now? A. Windows NT is not yet in Beta. The Win32 SDK for Windows NT is a "Preliminary" release, intended for development of 32-bit appli- cations for Windows. Microsoft's focus has been on the Windows NT Kernel and Win32 API. The SDK does not include POSIX support and Microsoft has not yet had an opportunity to complete testing of the 16-bit Windows and MS-DOS applications support. Therefore, the SDK is not appropriate for Beta test and evaluation. -- Subject: Applying to be a Beta Tester 3. How do I apply to become a Windows NT beta tester when the beta is released? A. Currently the only way to apply to the beta program is to either: 1) Send a letter to Microsoft One Microsoft Way Redmond, WA 98052 Attn: Windows NT Beta Program 4/1 2) Send a FAX to 936-7329 also with the note "Attn: Windows NT Beta Program" on it. In either case you should include your name, company name, hardware configuration and any other relevant information. Microsoft prefers typed applications if possible. -- Subject: System Requirements 4. What are the minimum hardware requirements to run Windows NT? A. Windows NT operating system: The first preliminary release of the Windows NT operating system requires an Intel 80386 system or higher, or ACE/ARC compatible R4000 systems with at least 8MB of RAM and 55MB available hard disk space (includes 20MB for a swap file). This does not include disk space for applications. Win32 SDK development environment: For Win32 SDK development, an 80386 33 MHz CPU (or higher) and 12MB total of RAM is strongly recommended. A total of 100MB available hard disk space (includes 20MB for a swap file) is required for complete installation of the operating system, SDK tools, and C/C++ compiler. The Win32 SDK is only available on CD-ROM and requires a CD-ROM drive and SCSI adapter. -- Subject: Hardware Compatibility List 5. How do I know if my hardware is compatible with Windows NT? A. Microsoft provides a list of hardware that has been tested and is known to work with Windows NT. It is appendix A of this FAQ, and has been posted on CompuServe, forum MSWin32, Lib 17, filename: 0992HW.TXT. Hardware listed in this file has been preliminarily tested on the July 92 release of Windows NT, and is supported. Microsoft does not claim that hardware not on this list will not run; however, it has not been tested and it is not supported at this time. -- Subject: B0 and B1 Stepping Machines 6. How come Windows NT will not work with my old 386? A. NT will not run on 386 chips that are the B0 or B1 versions (called the B0 or B1 "stepping"). This is true for all releases of NT, so if you're now running the December 91 or another release of NT on a particular 386, that PC is OK You can check whether a particular 386-based PC is at the B0 or B1 stepping by downloading isbste.zip from Lib 17 of Compuserve. This is a very small zip file (6 sec 9600 download), and the time to unzip it and run the test is quite small. Isbstep.exe also shipped on the December NT CD. -- Subject: MIPS Installation 7. Windows NT will not work on my MIPS machine. A: The July Preliminary release of Windows NT requires an upgrade to your MIPs machine. All manufacturers are aware of this upgrade. If they have not contacted you already, please contact them regarding it. The machine's CPU must also have an R4000 revision 2.0 or greater. More Info: See Appendix D for MIPS specific info. -- Subject: Device Driver Requests 8. Is there a driver yet for my hardware? A. Microsoft's standard means of releasing drivers is with their CD releases. Although Microsoft is not committed to continue this practice, currently all fixed, updated, or new device drivers are being posted on the CompuServe Forum: WinNT, Lib 2. Microsoft is currently making every attempt to keep this library updated with drivers as they become available. If you have hardware that is not currently supported, or does not have a driver posted in WinNT, Lib 2; please make a device driver request by filling out the hwfeed.txt form (appendix B to this FAQ) and mail it to Microsoft at winnthw@microsoft.com. Please be aware that because of Microsoft's support demands right now, this is a one way alias; Microsoft is not likely to respond directly to you to confirm that they have received your request. The hardware compatibility list is appendix A of this FAQ and can also be found in MSWIN32, Lib 17 on CompuServe as 0992hw.txt. Hwfeed.txt is appendix B of this FAQ, and can also be found on CompuServe in MSWIN32, Lib 17; or WINNT, Lib 1. You may also find updated drivers at ftp.uu.net in /vendor/microsoft. -- Subject: IBM MOST Not Supported with Windows NT Flexboot 9. How do I make Windows NT cohabit my hard drive with OS/2 2.0? A. As per the release notes, NT is not compatible with IBM's MOST utility. Microsoft does not intend to support IBM's MOST boot scheme with Windows NT's Flexboot, and has no plans to support installation on a drive with MOST installed on it. However, what you can do is install OS/2 using the dual boot capability. Boot DOS, and then boot OS/2. Another technique is to use an ARCs pathname to replace the drive name in your BOOT.INI file. Use a line like: multi(0)disk(0)rdisk(0)partition(1)\WINNT multi() Multi-Function Adapter disk() The Controller rdisk() Disk Number partition() Parition Number You will probably only need to change rdisk() and/or partition(). -- Subject: Trap 0x0000000E 10. When using the preferred graphical install method I get a Trap 0xE. What is wrong? A. This is a known problem which has several work-arounds available depending on the hardware configuration. The most common problem is due to a bug in the 3.5 inch BOOT DISK. If you are using this disk to install the kit and observe this problem, simply make a disk copy of the working 5.25 inch disk. You must make an exact duplicate of this disk onto a new 3.5 inch 1.44MB floppy disk. Assuming you have the 3.5 inch disk as your A: drive and the 5.25 inch disk as your B: drive, follow these steps: * Boot into your systems CMOS program. * Change the setting for the 3.5 inch disk to a 1.2 MB 5.25 inch disk. * Boot MS-DOS. * Make a copy of the 1.2 MB disk by inserting a blank disk in A: and the 5.25 BOOT DISK in B: drive. Run 'DISKCOPY B: A:'. * Boot back into your systems CMOS program. * Change the setting for the 3.5 inch disk back to a 1.44 MB disk. * Insert the new 3.5 inch 1.2 MB format BOOT DISK into A: and reboot. Note: You may need to remove any existing \winnt directory found on your hard disk first before running the install. Another common work around is to disable one or more of the following: * All BIOS shadowing. * All video shadowing. * All external CPU caches. * The Turbo switch (i.e. run the system at the slowest speed). -- Subject: Windows NT Boots, Looking for the Wrong Boot Directory 11. Windows NT looks in the wrong boot directory. Why? A. This can happen for a number of reasons. One being that there has been an installation of the PDC release over an earlier release of Windows NT. The boot.ini file is not updated correctly. Make sure that the boot.ini file contains references to the winnt directory rather than the nt directory i.e. c:\winnt\ rather than c:\nt\. Another cause of this problem can be when the IBM MOST utility for OS/2 2.0 is installed on the hard drive. Windows NT uses logical partitioning. The MOST partition is an unknown partition type. When an unknown partition type sits between the base partition and the Windows NT partition, it can set the logical partitions off by one. MOST is not supported with Windows NT. You should install Windows NT on a machine that does not have the MOST utility on it. -- Subject: Couldn't find NTLDR 12. While doing the trying the alternate boot method (DOS2NT) I get the following error: BOOT: Couldn't find NTLDR Please insert another disk A. From: marc@dwp.la.ca.us (Marc Hall x4735) In the script file dos2nt.bat the in the dos2nt directory on the CD is the line copy .\ntldr c:\ This is attempting to copy dos2nt\ntldr to c drive. On my CD dos2nt\ntldr does not exist but dos2nt\ntldr. does. So I copied it manually to c:\ and I am able to boot in Windows NT. -- Subject: Replacing Boot Sector / Recovering from Crash 13. How do I replace my NT boot sector without reinstalling Windows NT? A. From: rion@Ingres.COM (Rion Cassidy) I posted this before, but a lot of people just tune in for a quick question and didn't see it the first time. The flexboot question keeps coming up so here's the answer again: It's a relatively simple matter to get the boot sector back in the right place, but the files you'll need are on the NT CD, not on your hard disk. I suggest that you put them in a FAT partition NOW so that you can get things fixed quickly after a disk crash. Even if you can reinstall NT quickly, the configuration can be very time consuming. On the NT CD, go to the directory \dos2nt\install. You will need the following files: saveboot.sec ntboot.sec insert.sec debug.exe Create a batch file that contains the following: ren bootsec.dos btsecdos.bak debug < saveboot.sec debug ntboot.sec < insert.sec This similar to what "NT2DOS.BAT" does, but obviously we want to skip copying all those files. This worked for me and saved the time and trouble of having to reinstall all of NT again. Keep in mind that this is designed to work ONLY where the files are all there, but the boot sector is misplaced. -- Subject: SoundBlaster/AudioPro Continually Repeats the Wav File 14. My SoundBlaster/AudioPro card is constantly repeating the .wav file with no end. What is wrong? A. The SoundBlaster/AudioPro cards are known to have compatibility problems with some fast 486 systems and some system chip sets. You may be unable to run such a device on such a system. Before surrendering this as solely a hardware problem, you may in fact have an IRQ or DMA channel conflict with another device. Either move these setting on the other device or on the sound card. The recommended settings for the sound card is DMA 1, IRQ 7 and port 220h (note however that LPT1 also often uses this IRQ). If you are unable to resolve the conflict you can disable one of the devices in the Registry. The utility REGEDIT can be used to alter the Registry Database. Note: in many cases you must be logged on as 'Administrator' to alter some of the Registry settings. Hardware configuration settings can be altered under the Registry branch 'HKEY_LOCAL_MACHINE->SYSTEM->ControlSet001->Services'. The SoundBlaster can be disabled/enables by changing the entry for the sub-branch Sndblst->Start to 0x4/0x1. Warning: REGEDIT is a very powerful utility which will allow you to directly change your Registry: USE THIS TOOL AT YOUR OWN RISK. The preferred work around to this problem is to reinstall with the correct configuration. Using REGEDIT incorrectly can put your machine in a state in which you will have to reinstall to correct. Microsoft does not support REGEDIT, nor the changes you make with it. Microsoft simply offers it as a faster, but unsupported, fix to this problem. -- From: lothar@cyrcle.uucp (Bob Trembley) From the Program Manager, Run REGEDIT Goto the HKEY_LOCAL_MACHINE window. Navigate down to System ControlSet001 Services Sndblst Device Make sure the Port, Interrupt, and DmaChannel settings are correct. Reboot. That should do it (at least it did for me...) -- Subject: Cannot Print to LPT1 15. I cannot print to LPT1:! If I issue MODE LPT1: is claims the device is not found. What is wrong? A. Typically LPT1: uses interrupt 7 with is also the default setting of the SoundBlaster sound card. You may be experiencing a IRQ conflict with this or another device. If you are unable to resolve the conflict you can disable one of the devices in the Registry. The utility REGEDIT is provided to alter the Registry Database. Note: in many cases you must be logged on as 'Administrator' to alter some of the Registry settings. Hardware configuration settings can be altered under the Registry branch 'HKEY_LOCAL_MACHINE->SYSTEM->ControlSet001->Services'. The SoundBlaster can be disabled/enables by changing the entry for the sub-branch Sndblst->Start to 0x4/0x1. Similarly, the parallel driver can be disabled/enables by changing the entry for the sub-branch Parallel->Start to 0x4/0x1. -- Subject: Error 0x00000069 16. I get Error 0x00000069. Is this a joke or what? A. This is a phase one initialization error, which happens when Windows NT tries to talk with the HD controller. It can be caused by any number of things. Things to try: * If the card allows, slow down the DMA transfer rate. * Make sure both ends of the SCSI bus are terminated. * Make sure there are no IRQ, or memory address conflicts. * Make sure you're aren't using a faulty or un-supported driver i.e. the FD 1680 SCSI controller is supported, but there is a problem with that driver which will be fixed and posted on CompuServe in WinNT, Lib 2. -- From: woodwort@piper.cs.colorado.edu (Lee Woodworth) Missing files or missing directories can produce the 0x00000069 error message. I had to compare the files on the disk to the CD-ROM to find out that the copy the batch file performed was not complete. After you get the files copied check the attributes. The CD-ROM is a read only medium and the files are write protected. Some copying methods produce write protected files on the disk. I had problems during the install until I made sure that all the files were writable. See the attrib command for more information. -- Subject: DELL Machine Only Recognize 16 MB of Memory 17. Windows NT does not seem to recognize memory above 16MB on my Dell box. Do I need to buy a memory manager? A. The ISA Dell 486D/50 25/50Mhz has a bios problem which prevents it from seeing greater than 16MB of RAM under NT. From: jim@applix.com (Jim Morton [ext 237]) While the FAQ said that the Dell 486 A09 BIOS fixed the 16meg max memory problem, it didn't. BUT: A10 is out and fixes the problem! I am happily using NT on a 24meg Dell 486 now. For the others who had the same problem: 1) Call Dell's support BBS at 512-338-8528 (1200/2400/V.32) 2) Download 486DA10.EXE or 486PA10.EXE depending on which model machine you have. You'll need binary download protocol support like X/Y/ZModem, Kermit, etc. 3) Run the .EXE to unzip the Flash burner and ROM files 4) Run FLASH.EXE to burn the new BIOS into your flash ROM (nice touch, Dell - BIOS chips suck!) 5) Reboot and rejoice! -- Subject: Zenith 386/33E Locks Up During GUI Install. 18. Why does my Zenith 386/33E lock up during install? A. This machine sometimes locks up when doing the GUI install with the CPU cache enabled. Disable the CPU cache and the problem will be resolved. -- Subject: TCP/IP Support 19. Hey, where is the rest of that TCP/IP stuff? A. TCP/IP including ftp and some other tcp utilities are included in the July preliminary Win32 development kit for NT. Source routing is not included in the July version of TCP/IP, which implies TCP/IP isn't supported on token ring cards for this release, and LM2.1 clients aren't able to access NT servers across TCP/IP, regardless of the net card in the NT server. Source routing will be in later version of NT TCP/IP. Source routing is in the July version of NETBEUI, so some token ring cards are supported (see appendix A - 0992HW.TXT), and LM2.1 clients can access NT servers running the July version of NETBEUI. -- Subject: Bernoulli and Removable Media Not Supported 20. Can I use my Bernoulli drive even though it is not listed in the hardware compatibility list? A. Bernoulli boxes and removable SCSI drives were not tested with this release of Windows NT, and do not appear on the hardware compatibility list. Since the release there is evidence that Windows NT has some problems with these devices. Microsoft is aggressively pursuing this matter in hopes of having it resolved by the next release. -- Subject: Adaptec AHA 1542B Driver Can Cause Fatal System Error 21. Help! I am having problems and I have an Adaptec controller. A. There is a known problem with the Adaptec AHA-1542B driver which causes fatal system errors under some circumstances. The problem is triggered by simultaneous I/O with the floppy and the hard disk. This will be corrected in the next release. To avoid this you may want to use an alternative floppy controller and disable he one on the Adaptec. -- Subject: No support for Dual SCSI Controllers 22. Does Windows NT support dual SCSI Controllers? A. This release of Windows NT was not tested with 2 or more SCSI cards in the same machine. If you have this in your configuration, and you are experiencing any kinds of problems with your SCSI devices; try an installation with a single card. Microsoft does not support multiple SCSI cards at this time. -- Subject: The System Uses About 70 Threads 23. My system is using a lot of threads? Is this normal? A. With this release of Windows NT, Pview will show that the system running without any active applications will use about 70 threads. This is normal for this release. The majority of theses threads are system threads. -- Subject: Printing Postscript Documentation 24. Why can't I print out the postscript documentation on my printer? A. From: rose@galtee.cs.wisc.edu (Scott Rose) I encountered two problems with these files that I had to solve before I could get more than a few pages at a time to print: 1. There is a ^D embedded in the first few bytes of each file. Don't know why it's there, much less why it is not always in the same place; do know that I got zero pages of output until I used an editor to remove it. 2. The docs use fonts that are not supported by the printers -- three flavors of them -- that are in my shop. For example, Helvetica Narrow and Helvetica Narrow Bold. I could get a number of pages of each doc to print before associated error messages from the printer caused lpd to abort the jobs. The fix? Edit the header of each file to redefine the macros to use other, supported fonts. For example, change /HNB to use Helvetica Bold. After doing these edits, the files printed for me without problem on all of my printers. -- From: stergios@leland.Stanford.EDU (Stergios) Here's the perl script I use to filter out the ^D & ^M when printing through a unix host. Name the file "cdps" and run it as cat file_name | cdps | lpr -Ppostscript_printer #!/usr/local/bin/perl while () { s/\004//g ; s/\015//g ; print ; } -- 25. Does Windows NT support a file system switch and stackable files systems similar to vnode based UNIXs? A. From: alistair@microsoft.com (Alistair Banks) Windows NT's driver mechanism allows for the layering of drivers - file systems are drivers which respond to the set of messages that the i/o subsystem generates when requesting file services. They're not "special" and don't have a different set of interfaces. All drivers respond to messages which interest them, and pass them through to the next driver in the chain if they're not interested. So indeed, you could layer any one file system on top of the services of another to implement intelligent archiving systems, Sun TFS-like systems, or simply something that turns a file delete into a rename! You can implement compression file systems or make your 1.4Mb disk image on your C: drive appear to be your I: drive. -- Subject: X sever for NT? 26. Is there an X server for Windows NT yet? A. From: alistair@microsoft.com (Alistair Banks) Digital Equip have demoed their Windows NT version of "eXcursion" and NCD (formerly GSS/Spectrographics) have demoed their Windows NT X-Server I know of two other companies that have also started porting their X-Servers, but they haven't made any public announcements. If there are more, please let me know - I'm tracking them - - Alistair -- 27. Is there a version of EMACS for Windows NT, yet? A. Congruent has ported GNU Emacs and many other GNU tools to Windows NT. They publish the Toolbuster CD-ROM. Send mail to info@congruent.com. Also Pierre Perret (pap@tempel.az05.bull.com) has ported MicroEmacs to Windows NT. There is a version for MIPS (MEWMI10E.ZIP) and Intel (MEWN11.ZIP) processors. Check ftp.cica.indiana.edu (See next question). -- 28. Are there any Internet FTP sites for Windows NT, yet? A. Yes, check out: ftp.cica.indiana.edu pub/pc/win3/nt. (IP: 129.79.20.84) ftp.uu.net /vendor/microsoft - Compuserve files /vendor/microsoft/compuserve-libs. -- Subject: Microsoft Support on CompuServe 29. I hate CompuServe, and I love the net. Why does not Microsoft provide support via the Internet? A. From: alistair@microsoft.com (Alistair Banks) As I've posted many times here and elsewhere - we'd like to treat Internet & netnews connected people better, and we're looking into it. We don't get provided with comparable host facilities on internet & netnews with CompuServe - also, do realize, we don't "log on" to CompuServe to provide support - there are many man years of SQL Server and other systems built up around Online & CompuServe to allow us to provide support, and those systems aren't written for Internet or netnews - so again, (put this in the FAQ! (Editor's note: done!)) we're trying, we put some stuff on ftp.uu.net, but our access isn't easy from our internal net [security reasons] so we only put some public stuff there. We're working towards an ftp.microsoft.com server, but I can't promise any timeframes - until then, CompuServe, or a friend with CompuServe, are the only official support routes. Gripes and flames are not needed - I'm on your side - I'm here, right? - - Alistair -- Subject: Making CompuServe easier to use. 30. Is there any way to make using CompuServe easier? A. From: kevinq@Ingres.COM (Kevin Quinn) Check out 'OzCIS'! It's free, it's hot, and it's very easy to use. Soon a new version is coming out that should just about blow every other navigator and browser away. Look in the OZCIS group in the IBMCOM forum (it's group 12). -- Subject: Windows NT Books 31. Are there any books on Windows NT? A. Inside Windows NT by Helen Custer $24.95 pb / 385 pages / ISBN 1-55615-481-X / Microsoft Press ##################################################################### # # # PROGRAMMING # # # ##################################################################### Subject: CVPACK: Fatal error CK1007: invalid Types table in module 32. What do I do about the CVPACK error CK1007? A. In this release of Windows NT, there is a problem with the cvpack utility; which results in the error "CVPACK: Fatal error CK1007: invalid Types table in module". CVPACK is compressing debug information in the executable. This step is required for source level debugging. As a work around to this problem, to create an executable, compile without the /Zi switch. This will result in no debug information in the object modules. Alternatively, you can remove the debug options during linking. The samples default to -debug:full and -debugtype:full. Do not link with either of these options. -- Subject: Missing C++ Header Files: (iostream.h) 33. Hey! How come 'cout << "Hello world!\n";' does not work? A. The iostream.h file was not included on the NT pre-release CD. It is necessary in order for an application to make use of C++ I/O. This file will be posted to Compuserve as soon as it is ready and tested. Until then, the suggested work around is to use printf() and stdio.h. -- Subject: Problems with ExitWindows 34. I get errors when I call ExitWindows, but I know my code is right. A. From: kevin@edscom.demon.co.uk (Kevin Broadey) Please will you change the line in WINUSER.H from #define ExitWindows(dwReserved, Code) ExitWindowsEx(EWX_LOGOFF, (-1)) to #define ExitWindows(dwReserved, Code) ExitWindowsEx(EWX_LOGOFF, (DWORD) (-1)) ^^^^^^^ to stop the compiler complaining about signed/unsigned problems every time I call ExitWindows. It took me bl**dy ages to track this one down! BTW ExitWindowsEx isn't documented in api32wh.hlp. [Editor's note: Both of these problems have been fixed in recent builds and versions of the .h files. This problem should be gone in the next release.] -- 35. Can I use a DLL to implement shared memory, and if so, how? A. From: kevin@edscom.demon.co.uk (Kevin Broadey): Okay! Here's the answer from the horse's mouth via Compu$erve: Put the following in your .DEF file: SECTIONS .data READ WRITE SHARED .bss READ WRITE SHARED Do it for .data to share initialized variables, .bss for uninitialized, but watch out, because Microsoft haven't quite sorted out DLLs that have both shared and unshared sections. -- Yes, they have. Place variables in a new named section by bracketing a set of variables with: #pragma data_seg("SECTIONNAME") #pragma data_seg() The second pragma resets the section name to what it was before the first pragma. Note that you *must* initialize all variables that you want to share. In your .def file, declare: SECTIONS SECTIONNAME READ WRITE SHARED That's all there is to it! Any variables in section SECTIONNAME will be shared between all processes that load the DLL. -- From: sanzgiri@bombay.metaphor.com (Ajit Sanzgiri) In this connection, the compiler no longer recognizes the /ND option which would allow one to individually name (and manage) data segments. Of course one could use the above to make up a work-around. Break up the DLL (which is to have both shared and instance data) into two DLLs - one for the shared data and the other for the instance data and have the latter be the only client of the former one. -- Subject: Unicode Level of Support 36. What about Unicode support? A. The July Preliminary Release of Windows NT SDK is a full unicode implementation. It supports unicode applications. However, an alternate input editors is not yet available. Glyphs will be suitable for the Roman languages. Glyphs for Kanji are not yet available. -- Subject: Sample Requests 37. Can Microsoft provide a source code example program for a Cat and Mouse game that can be played over a TCP/IP connection? A. If you have a sample request for the next release (or possibly to be released on CompuServe) please write out the details of your request and send them to sdksamp@microsoft.com. Also please include any information about your need that might be relevant to tailor the sample to your need. Please note that this is a one way alias, and that Microsoft is not likely to respond by confirming the receipt of the request. And also note that Microsoft may not have the resources to create all the samples requested. -- Subject: MSDN: Microsoft Developers Network CD 38. What is this I hear about a Microsoft Developers Network? A. The MSDN offers a quarterly paper and a CD program. The CD is intended to help developers with writing Microsoft Windows applications. The first pre-release beta CD contains 34,000 pages containing: complete copies of Microsoft Journals (MSJs); samples and source code; MS Press books; tools; and articles covering programming, technical, and strategic information for Windows. Call the Developer Service Team at 800-227-4679 x11771 to get enrolled in the pre-release program for $30. -- Subject: Requests for DDK or DDK Support 39. How come I can not write device drivers, yet? A. At present a Windows NT DDK is not available. Several people at Microsoft are currently working very hard to get the Windows NT DDK ready for distribution. If you would like to be placed on the mailing list for information about this kit please send mail to: winntddk@microsoft.com Please be aware that this is a one way alias, and that there will be no email response/confirmation to your request. Windows NT Device Driver Kit (DDK) will be available in pre- release form October 26th in conjunction with the Windows NT Device Driver Developers Conference in Anaheim, California. The conference will feature highly technical information needed to write Windows NT drivers for hardware devices including NDIS, SCSI, display, printer, input and communication. Sessions topics at the conference include: * Windows NT Multiprocessing Support * Enhanced Graphics Support * NDIS 3.0 * SCSI Support Developers can register for the conference by calling (800) MS SHOWS (677-4697) or by faxing (800) 936-7329 "Attention Department 747". The registration cost is $795 for developers who attended the Win32 Professional Developers Conference in July. For all others, the registration price before September 21st is $845 and September 21st it will be $895. Registration costs include lunch each day and a copy of the Windows NT DDK. For Press Information: Erin Holland/Waggener Edstrom 503/245-0905 -- From: dwightm@microsoft.com (Dwight Matheny) Thanks to everyone who commented on our pricing/packaging plans for the Windows NT Preliminary DDK. In response to your requests we have decided to lower the price for the DDK, and offer a CD-only version of the product. Here's the new US pricing: DDK CD-ROM only- $69 DDK CD-ROM with hard-copy documentation $399 This pricing is consistent with our SDK pricing, and includes updates and the final version of the DDK. The documentation will be included on the CD in both Postscript and Write format, and all the device driver functions will be documented in Winhelp. The DDK will be available before the end of November. If you are in the US and currently own the Win32 SDK, you will be receiving a mailing on the DDK in mid-November which will include 4 page product datasheet, and an order coupon. We encourage you to order via this coupon since we are unable to keep up with extremely high call volumes the past few weeks. You will receive this coupon in plenty of time before the product ships. International customers should contact their local MS office for ordering, pricing, and availability information. One other important change which you should be aware of. Everyone who purchases the hard-copy documentation for the DDK will receive the new book "Inside Windows NT" from MS Press. This book will not be on the CD. ##################################################################### # # # Appendix A: 0992HW.TXT # # # ##################################################################### MICROSOFT WINDOWS NT (tm) HARDWARE COMPATIBILITY LIST (based on the July release of the Win32 (tm) Preliminary SDK for Windows NT) The Microsoft(R) Windows NT(TM) operating system is designed to support a broad range of hardware. This is a preliminary list of hardware on which hardware manufacturers and/or Microsoft have run the release of Windows NT included in the July release of the Win32 (TM) Preliminary SDK for Windows NT. It is a subset of the hardware we expect to support in the upcoming releases of the Win32 SDK and in the initial commercial release of Windows NT. Please note that we have not tested every machine and/or device in all possible configurations and that this list is for informational purpose only. Microsoft has not attempted to reproduce results reported by hardware manufacturers. Note also that the omission of a particular system does not necessarily indicate that it may be incompatible with Windows NT; it could indicate that Microsoft has not yet performed testing on it. Microsoft does not endorse or recommend any particular system in the list Microsoft makes no warranties express or implied in this document. Intel 80386/80486 Uniprocessor Systems ====================================== ACER (R) Power 486/33 ADD-X Systemes (R) 386/40Mhz ALR (R) BusinessVEISA 386/33 ALR BusinessVEISA 486/33 ALR MPS 486/33 ALR PowerFlex Flyer 386sx/25 ALR PowerPro Apricot (R) Qi 486DX ASI (R) 9000 386DX ASI 9000 386SX ASI 9000 486DX AST (R) Power Premium 4/33 Model 213V AST Premium 386/33T AST Premium 486/33E AST Premium II 386/33 Model 213V AST Premium II 486/33 AST Premium SE 4/33 Model 333 Compaq (R) Deskpro 386/20e Compaq Deskpro 386/25 Compaq Deskpro 386/25e Compaq Deskpro 386/33 Compaq Deskpro 386/33L Compaq Deskpro 386s/20 Compaq Deskpro 486/25 Compaq Deskpro 486/33L Compaq Deskpro 486/33M Compaq Deskpro 486/50L Compaq Portable 486c Compaq SystemPro 486/33 Compaq SystemPro/LT 486sx/25 CompuAdd (R) 420s CompuAdd 433 CompuAdd 433E Dell (R) PowerLine System 433DE Dell PowerLine System 433SE Dell PowerLine System 450DE Dell PowerLine System 450DE/2 DGX Dell PowerLine System 450SE Dell PowerLine System 486D/50 Dell System 325 Dell System 433e Dell System 486D/33 Dell System 486P/33 Digital Equipment Corp. (R) DECpc 425ST Digital Equipment Corp. DECpc 433ST Digital Equipment Corp. DECpc 433T Digital Equipment Corp. DECpc 450ST Digital Equipment Corp. DECstation 425c Dolch (R) 486/50 Epson (R) 486DX/33 Express Station Epson 486SX/25 Express Station Epson EISA Series 486DX/50 Epson EISA Series 486DX/33 Epson EISA Series 486/25 Epson Equity 386DX/33 PLUS Epson Equity 386SX/25 PLUS Everex (R) Step 386/33 Everex Step 486/25 Desktop Everex Step 486/33 ISA Everex Step 486DX2/50 EISA 12 Everex Step 486DX2/50 EISA 8 Everex Tempo 486sx/20 G2 (R) 80386/40 G2 80486/50 G2 80486DX/50E G2 80486sx/25 Gateway (R) 2000 386-33 Gateway 2000 386SX-20C Gateway 2000 486/33C Gateway 2000 486/33E Gateway 2000 486DX2/50 Gateway 2000 486DX2/50E GRiD (R) 486ei-33 GRiD MFP/425s GRiD MFP/425s+ GRiD MFP/433s+ GRiD MFP/450 GRiD MFP/450+ GRiD MFP/466+ HP (R) Vectra 386/25 HP Vectra 486/25T HP Vectra 486/33T HP Vectra 486S/20 HP Vectra RS/25C IBM (R) PS/2 Model 70 386 IBM PS/2 Model 70 486 IBM PS/2 Model 80 IBM PS/2 Model 90 XP IBM PS/2 Model 95 XP 486 IBM PS/2 Model P75 ICL (R) Alfaskop DS 458 Eisa ICL CX486 ICL CXe486 ICL CXe486s ICL FX486/50 Intel (R) 486DX Workstation Intel LP 486/33E IPEX (R) 486DX-33 DESKTOP IPEX 486DX-33 LOCAL BUS IPEX 486DX-33 LOW PROFILE IPEX 486DX-33 MINI-TOWER IPEX 486DX50 DESKTOP EISA IPEX CENTRA 2000 486 EISA Magitronic (R) - B341Q Magitronic - B433EISA Magitronic - B451C Magitronic - B466EISA NCR (R) 3000 Model 3335 NCR 3000 Model 3345 NCR 3000 Model 3445 NCR 3000 Model 3447 NCR StarStation NEC (R) Powermate 386/25S NEC PowerMate 486/33e NEC PowerMate 486/33i NEC PowerMate 486/50e NEC PowerMate 486/50i NEC PowerMate 486SX/25e NEC PowerMate 486SX/25i NEC PowerMate DX2/50e NEC PowerMate DX2/66e NEC ProSpeed 486SX/C Northgate (R) Elegance 433i Northgate Elegance SP 433 Olivetti (R) 486 LSX5010 Olivetti 486 LSX5020 Olivetti 486 LSX5025 Olivetti M380/XP9 Olivetti M400-40 Olivetti M400-60 Olivetti M480-40 Osborne (R) 450DI Osborne 450PE PC Brand (R) Leader 386/40 Cache PC Brand Leader 486/33 PC Brand Leader 486/50 PC Brand Leader 486/DX2-66 Sidus (R) SCI model 486/33 Siemens Nixdorf (R) PCD-4Gsx/20 Siemens Nixdorf PCD-4Tsx25 Siemens Nixdorf PCE-4C Siemens Nixdorf PCE-4Rsx/25 Siemens Nixdorf PCE-4T/33 Siemens Nixdorf PCE-4T/50 Siemens-Nixdorf PCD-4T/33 Syncomp (R) Mini 486i-33 Tandon (R) Option 486/33 Tandy (R) 4820SX/T Tandy 4825sx Tandy 4833 LX/T Tandy 4850EP Tandy 4866LX/T Tempo (R) 386/25 Tempo 386/33 Modular Tempo 386SX/25 Tempo 486/33 Tempo 486DX2/50 Tempo 486DX2/50 Desktop Tempo 486DX2/50 EISA Tempo 486SX/25 Tempo 486SX25 Desktop Tempo C-Series 386/25 C Tempo C-Series 386/33c Tempo C-Series 486/33 C Tiki (R) 486/33 Toshiba (R) T4400SX Tulip (R) DC486sx-20 Tulip DE/TR 486DX E/50 Tulip DE/TR 486DX E/66 Tulip DE/TR 486DX/E Wang (R) Microsystems EC 480/33C Wang Microsystems PC 350/40C Zenith (R) Data Systems Z-486/25E Zenith Data Systems Z-486/33ET Zenith Data Systems Z-486/SX 20 Zenith Data Systems Z-486/SX 25 Zenith Data Systems Z386/33 Zenith Data Systems Z386/33E Zenith Data Systems Z486/33E ZEOS (R) 386DX-33CDT ZEOS 486-50CW ZEOS 486DX-33 ISA ZEOS 486DX-33CDT ZEOS 486DX-33EISA ZEOS 486DX-50 ZEOS 486SX-20DT Intel 80486 Multiprocessor Systems ================================== ACER (R) AcerFrame 3000 MP ALR (R) PowerPro DMP Compaq (R) SystemPro Dual 486/33 NCR (R) 3000 Model 3450 NCR 3000 Model 3550 Wyse (R) 7000i MIPS ARC/R4000 Systems ====================== ACER (R) ARC1 MIPS (R) ARCSystem 100 MIPS ARCSystem 150 Olivetti (R) M700-10 Olivetti PWS4000 Video Controllers Video Mode ================= VGA Class 100% Register Compatible with IBM VGA 640x480x16 Super VGA Class Headland Technology / Video 7 VRAM VGA, VRAM II 1024x768x16 800x600x16 Orchid ProDesigner IIs 1024x768x16 800x600x16 TSENG Labs ET4000 chipset 1024x768x16 800x600x16 Others IBM XGA 1024x768x256 DELL DGX 1280x1024x256 Built-in Video on MIPS ARC/R4000 systems from 1280x1024x256 Acer, MIPS, Olivetti 1024x768x256 NOTE: Display support will be expanded greatly over time. Microsoft plans to support 8514, S3, ATI, most SVGAs (including hi-res), and coprocessor display boards in an update to the Win32(TM) SDK. Disk Controllers ================ 100% Register Compatible with WD1003 - ESDI, IDE, WD1003 Compaq Intelligent Drive Array SCSI (R) Host Adapters: ======================= Adaptec AHA-1540b AHA-1542b AHA-1640 AHA-1740 Future Domain TMC-845 TMC-850, TMC-850M(ER) MCS-600 MCS-700 TMC-1660 TMC-1680 TMC-7000EX IBM IBM SCSI Host Adapter Maynard 16 Bit SCSI Adapter NCR NCR 53C700 Olivetti ESC - 1 Adapter Built-in SCSI on MIPS ARC/R4000 systems from : Acer, MIPS and Olivetti Network Adapters ================ 3Com(R) Etherlink II Etherlink II / TP Etherlink / MC Etherlink 16 Etherlink II / 16 DEC(R) EtherWORKS LC EtherWORKS Turbo / TP IBM Token Ring 16/4 Token Ring 16/4A Novell(R) NE3200 Proteon(R) P1390 P1990 SMC/Western Digital(R) EtherCard Plus Elite/A 8013EP/A Built-In Ethernet on MIPS ARC/R4000 systems from Acer, MIPS and Olivetti Tape Devices ============ Archive Python DAT (Maynstream 1300DAT) Note: The SCSI tape functionality has been successfully tested with the Adaptec 154X/174X, Maynard 16-Bit SCSI adapter and the built-in SCSI adapters in the Acer, MIPS/Silicon Graphics and Olivetti MIPS ARC/R4000. This is known to fail on other SCSI adapters at this time. CD-Rom Devices ============== NOTE: These CD-Rom drives have passed testing with the SCSI host adapters list previously. CD Technology CD Porta-Drive T-3301 Chinon CDX-431 Denon(R) DRD 253 DEC(R) RRD-42 Hitachi(R) CDR-1750S NEC Intersect CDR-73(M) Intersect CDR-84 Pioneer(R) DRM-600 Sony(R) CDU-541 CDU-6211 CDU-7211 Toshiba XM-3201 TXM-3301 MultiMedia Sound Cards ====================== Creative Labs SoundBlaster SoundBlaster Pro Printers ======== Every driver that shipped with the Windows(TM) 3.1 retail package. No plotter support included. Keyboards ========= 100% Compatible with : 101/102 key "enhanced" layout 84 key AT(R) layout Mice ==== 100% Compatible with Microsoft Mouse Microsoft and MS-DOS are registered trademarks and Windows, Windows NT and Win32 are trademarks of Microsoft Corporation. -- Western Digital net and Future Domain SCSI drivers now available! The latest drivers for Future Domain MCS-700 and TMC-16X0 SCSI and Western Digital SMC/WD 8003EP, 8013WB, 8013EWC network cards are available. Ftp to ftp.uu.net and look in /vendor/microsoft for FD1800.ZIP and WDLAN.ZIP respectively. ##################################################################### # # # Appendix B: HWFEED.TXT # # # ##################################################################### Customer Computer Hardware Input If you are interested in providing us input on computer hardware to the "winnthw" people, we would appreciate you providing us input on you equipment the in the following format. If a particular device of yours does not have an explicit category, please use the "Other Peripheral" entry to categorize it. If there is more than one such device, simply cut and paste on another line as in the example below. Use "N/A" for a category that you do not have hardware for. For your convenience, we have provided the below sample and template. Simply fill in the template and send it via e-mail to the "winnthw" address (Editor's Note: That is winnthw@microsoft.com). Example response : System ------ Computer System manufacturer : CompuAdd Computer System model name : 433EISA Amount of RAM (MB): 8 Total Hard Disk Space (MB) : 120 Video Adapter manufacturer, model : Built in Peripherals ----------- Motherboard manufacturer, model : N/A Video Adapter manufacturer, model : N/A Video Monitor manufacturer, model : NEC 3FGx Hard Drive Adapter manufacturer, model : Western Digital, WD-1009 Mouse device manufacturer, model : Microsoft, Serial Mouse Backup Device manufacturer, model : N/A Ethernet Adapter manufacturer, model : N/A CD-Rom Drive manufacturer, model : NEC, CDR-73M MM SoundCard manufacturer, model : MediaVision, ThunderBoard Printer manufacturer, model : HP, LaserJet Series II Other Peripheral manufacturer, model : Logitech, ScanMan Other Peripheral manufacturer, model : Iomega, Bernoulli Box Other Peripheral manufacturer, model : Intel SatisFAXion Template form : ====================== CUT HERE =========================== System ------ Computer System manufacturer : Computer System model name : Amount of RAM (MB): Hard Disk Size (MB) : Video Adapter manufacturer, model : Peripherals ----------- Motherboard manufacturer, model : Video Adapter manufacturer, model : Video Monitor manufacturer, model : Hard Drive Adapter manufacturer, model : Mouse Device manufacturer, model : Backup Device manufacturer, model : Ethernet Adapter manufacturer, model : CD-Rom Drive manufacturer, model : MultiMedia SoundCard manufacturer, model : Printer manufacturer, model : Other Peripheral Device manufacturer, model : ###################################################################### # # # Appendix C: BUGREP.TXT # # # ###################################################################### [Editor's note: I am not sure where to mail this form if you do not have access to CompuServe...] Microsoft Windows NT Preliminary Test Release Bug Report Template Bug Title: (66 characters maximum) Product: (Windows NT July Preliminary Release) Type "winver" at the command line while Windows NT is running. Description of Bug: (be as specific as possible) Duplication Scenario: (be a specific as possible) Work-around: (if any) Network Environment (e.g., LAN Manager 2.1 with OS/2 1.3) File System: FAT HPFS NTFS Tools, Services or Applications Running/Versions: Machine Configuration : Computer Brand and Model: Processor Type and Speed: Memory (RAM): Peripherals (include make/model): network cards: network type: hard disk size: other disk/controllers: CD-ROM drive: video adapter: Reproducable: Always Intermittent Not reproducable Severity level: Sev 1: System crashes, data corruption error Sev 2: Does not operate correctly Sev 3: Cosmetic or minor usability problem Sev 4: Suggestion or documentation error Date: Customer Name: Customer Company: Area Code and Phone: CompuServe ID: Customer ID (IF no CompuServe ID): ********************************************************************* * Upload this completed report to Library 3 of WINNT for end-user * * bugs. SDK and development bugs should be reported over in MSWIN32 * ********************************************************************* -- ##################################################################### # # # Appendix D: MIPS INFO # # # ##################################################################### Steps for a clean install of Windows NT on a MIPS machine: --------------------------------------------------------- 1) You need at least a MIPS R4000 version 2.0 or greater to run the prerelease version of Windows NT. If you don't have a Rev. 2.0 or greater, contact your system manufacturer. 2) You need at least PROM revision # 119 or greater. The PROM version is displayed at the top of the blue ARC multiboot screen. If you have an older version (usually 78) contact your system manufacturer. NOTE: MIPS has shipped several Magnum systems with UNIX (i.e. RISC-OS) big endian PROMS. If you don't get to a blue ARC multiboot screen within a minute or so after power up, contact MIPS. These systems have flash PROM; a new PROM revision can be downloaded in less than a minute from a floppy disk. 3) Jzsetup.exe must be run on your system after a PROM upgrade. The symptom of not running jzsetup.exe is setupldr hangs trying to jump into the GUI portion of setup. The last message that is displayed is "loading... fastfat.sys". You can run jzsetup.exe from the CD-ROM. At the "Run a program" prompt, type "scsi()cdrom(ID)fdisk()\jzsetup.exe", where ID is scsi identifier of your cdrom drive. If you don't know the identifier of your drive, go to the "Execute Monitor" prompt, then type "a". Look for the cdrom() entry that is displayed. If none is displayed, check your SCSI cable or call your system manufacturer. Type "q" to return to the main PROM prompt. From jzsetup.exe, select "Load default configuration" and choose your monitor resolution and floppy size. This is the most important step to avoiding the "fastfat" hang. For a clean install, also select "Load default environment". This will wipe out any previous boot selections that you had. Answer the questions to point to your "system partition", i.e. the FAT partition on your hard drive that will end up holding the osloader.exe and hal.dll. You can find the scsi identifier for your hard disk in the same manner your found the id for the CD-ROM drive, see above. Select the partition number, usually 1 for C:. AUTOBOOT refers to whether the system automatically counts down and boots the default boot selection (YES) or waits for a boot to be selected manually (NO) (the usual preference). You can change the default 5 second countdown by creating an environment variable called COUNTDOWN and giving it a value (seconds). This is a good time to check the date on your system, displayed in the upper right had corner. There is a menu selection to change it. MIPS has been shipping systems with valid ethernet addresses but without correct ethernet address checksums. This causes the network to not work after installing NT. You can reenter the ethernet address with jzsetup.exe, and it will append the correct checksum, if you are having problems getting the network to work. Note: JZSETUP is not a polished user friendly utility. Future versions will correct usage problems and user interface design problems. 4) After jzsetup.exe has been run, the CD-ROM can be accessed from the "Run a program" prompt by typing "cd:". If you have more than one CD-ROM, the one with the lower scsi id will be selected with this method. 5) Run the arcinstaller: "cd:arcinst.exe". This program will allow you to partition your drive. If you've had an abortive attempt at installing NT, the best thing to do is to delete the system partition and/or the OS partition (you often choose these to be the same partition, see the discussion below) and recreate them (they will be REFORMATTED, don't do this if you want to save any files there). The setup process is fast, so this is not painful unless you have files you want to save. To do this, choose "Configure a System Partition", then "Delete Partition", then "Create System Partition". This is really all you should do with the arcistaller this time, you don't need to update system files or muck with the system partition list. 6) Run the setupldr: "cd:setupldr" (note no extension). You should be off and running. Background on ARC ----------------- The ARC specification defines an operating environment for OS load programs, setup programs, and utilities. There are two interesting parts of this, the System Partition and the boot environment variables. The System Partition is a FAT partition that contains the hal.dll, and in the future will contain other files including vendor specific NT drivers that will ship with the system. The vendor will provide a utility to create the system partition and copy the hal.dll and other files, something like the arcinstaller, and hopefully will ship a preconfigured harddisk. There are two philosophies for system partitions. Some people make a minimal partition (a few megabytes) and use a separate partition for NT. Others make one large partition that is both a system partition and the OS partition. There are six ARC environment variables that control booting: LOADIDENTIFIER - a name for the boot selection SYSTEMPARTITON - the partition containing the hal.dll OSLOADER - a full ARC pathname to the osloader OSLOADPARTITION - the partition containing the Windows NT OSLOADFILENAME - the subdirectory and filename for the NT kernel OSLOADOPTIONS - options for booting These environment variables are multi-valued. You can view all the values with jzsetup.exe ("Change the active (displayed) boot selection"). There needs to be the same number of values in each variable, and there are a maximum of five values per variable. You can use jzsetup.exe to add and delete boot selections. The setup process will add a boot selection for the current install, however, so you should not need to do this. If your install failed, you may want to delete the added boot selection. Playing with these environment variables can be dangerous. It is easy to get them out of whack, at which point it is often better to use jzsetup.exe to load the default environment and start over. -- -= Max =- --------------------------------------------------------------------- I program in C because it turns women on...