tom@mims-iris.waterloo.edu (Tom Haapanen) (11/12/90)
TABLE OF CONTENTS (* changed items) 0. Index >> 1. Windows newsgroups 2. Windows development tools * 3. Windows debuggers 4. Windows extended memory handling 5. Windows screen prints 6. Device driver development * 7. Hiding dialog box controls * 8. Adding controls to a non-dialog box window * 9. Using floating-point in Windows * 10. Topics in the comp.windows.ms companion posting * ---------------------------------------------------------------------- 1. Why are there two newsgroups for windows? >> comp.windows.ms.programmer is for discussion about developing Windows software. It is not intended for discussions about Windows software or for questions about the Foobar SVGA drivers. comp.windows.ms is for any Windows discussions that do not concern development of Windows software. -------------------- 2. What tools can I use to develop software for Windows? >> There are a number of options, which are summarized below: 1. Use the Microsoft Windows SDK (Software Development Kit). This is a necessity for heavy-duty application development. The SDK is designed for Microsoft C 5.1/6.0 and Microsoft Macro Assembler 5.1, but it is possible to use it with other compilers, such as Zortech C++ (but not including the Borland compilers). If you plan to use a non-Microsoft compiler, call Microsoft Technical Support to obtain the free Supplemental Compiler Utilities disk. The following compilers are currently known to work: - Glockenspiel C++ ?.? - Microsoft C 5.1+ - Microsoft MASM 5.0+ - Microsoft Pascal 5.0 - Microsoft QuickC 2.0 - Turbo C 2.0 - Zortech C++ ?.? 2. Use Actor. Actor is an object-oriented programming environment, with syntax resembling C. It allows quick development of programs and/or prototypes, and compiles into an "image" file. This must be distributed along with actor.exe; however, it is possible to combine these into a single .exe if you have the Whitewater Resource Toolkit. 3. Use Smalltalk/V. Does anyone know anything about this? 4. Use ToolBook. This is a HyperCard-like development environment for Windows -- the DayBook demo included with Windows 3.0 is a ToolBook application. Development work is rapid, but at least the current versions run very sluggishly, even on 386/25s. There is a conversion utility available to convert HyperCard stacks into ToolBook programs. 5. Use W:CASE or WIndowsMAKER, both of which generate C code for Windows. This will still require the use of the SDK. 6. Use EASEL/Windows. This is an MIS-oriented package intended for development of client-server or cooperative processing applications. 3270 connectivity, SQL, DDE, and Windows --- all for mere $7500. Q: What debuggers can I use for Windows development? A: First of all, if you use Actor, Smalltalk or ToolBook, you're limited to the debugging tools built into those packages. If you are using C, C++ or another conventional language with Windows SDK, you have several choices. 1. In real mode, you are limited to SYMDEB, which is pretty basic. It also requires the use of a second monitor (monochrome for most machines, 8514/A for MCA machines) or a serial terminal. SYMDEB is included with the Windows SDK. 2. In standard mode, you can also use Codeview for Windows (CVW), or Logitech's announced-but-not-yet-shipping MultiScope. CVW, which is similar to the DOS version of Codeview, requires a secondary monitor; a serial terminal can not be used. CVW is included with the Windows SDK; MultiScope is a separate product. 3. If you have a 386, you have an additional option of using WDEB386, which provides some further debugging features over CVW, at the expense of an antiquated user interface. WDEB386, which is included with the SDK, will work wither with a secondary monitor or a serial terminal. 4. What does Windows do with my extended memory? After I run Windows, Norton SI reports that I don't have any extended memory. Is this a bug? >> No, it's not a bug. Windows uses a memory-management system known as DPMI, which requires applications to access extended memory using a mechanism known as "XMS". This mechanism is implemented in himem.sys. If you have device=himem.sys in your config.sys, the first XMS call (by Windows or SmartDrive, for example) will transfer control of the extended memory to himem.sys, and thus make it in- accessible to non-XMS applications. 5. How can I take a snapshot of my Windows screen? >> Simple -- just pres PrtScr, and Windows will copy the image to the clipboard, from where you can paste it into your favourite application. Using Alt-PrtScr will take a snapshot of only your current window. -------------------- 6. What do I need to develop device drivers for Windows? >> You need to purchase the Windows Device Driver Kit (DDK). It's available direct from Microsoft, and costs $395. (?) -------------------- 7. How can I hide dialog box controls? >> EnableWindow(GetDlgItem(hDlg, IDD_CONTROLTOHIDE), FALSE); ShowWindow(GetDlgItem(hDlg, IDD_CONTROLTOHIDE), SW_HIDE); UpdateWindow(GetDlgItem(hDlg, IDD_CONTROLTOHIDE)); 8. How can I add pushbuttons and edit controls to a "normal" window which is not a dialog box? >> You can do this by simply calling CreateWindow() with one of the pre- defined child window control class names (see table 4.2 in the SDK reference manual). 9. Why does compiling a Windows application with emulator floating-point cause corrupted code segments when running on a non-87 machine? >> The emulated floating point tries to used the coprocessor. When it does not find one on startup, it patches the code to use the software floating point. Patching does however not adapt the code-segment checksum, thus the windows debugging version chokes when it horridly founds that some- thing terrible must have happened to the code. Get rid of it by setting 'EnableSegmentChecksum=0' in the [debug] section of WIN.INI; the problem only affects debugging versions of Windows. -------------------- 7. Topics in the comp.windows.ms companion posting >> 1. Windows newsgroups 2. Free Windows applications 3. Getting Windows video drivers 4. Using a mail server instead of ftp 5. Windows memory requirements 6. Standard mode vs. 386 enhanced mode 7. Running Windows 2.x applications 8. DOS in a window 9. Environment space in DOS sessions 10. Lotus 1-2-3 under Windows 11. DesqView/386 with Windows 12. Protected-mode software vs. Windows 13. Windows, Korn shell and switchar 14. Windows network compatability 15. Using COM3 or COM4 from Windows 16. Accessing the mouse in DOS sessions 17. Using TSRs for DOS sessions 18. 256 colours in Windows 19. Windows communications programs 20. Changing an application's icon 21. Creating new icons 22. Icon and bitmap directories 23. Installing new fonts 24. FaceLift, ATM and TrueType 25. Converting a GIF or MS-Paint file to a bitmap 26. Using a bitmap as wallpaper 27. Permanent swapfiles and using SUBST 28. Installation problems with SHARE 29. Windows and large hard disks 30. Using Windows as "runtime" only [ \tom haapanen --- university of waterloo --- tom@mims-iris.waterloo.edu ] [ "i don't even know what street canada is on" -- al capone ]