[comp.windows.ms] Windows 386 and SDK problems

pcb@usl.usl.edu (Peter C. Bahrs) (04/17/89)

I have SDK, Windows 386 (both are the newest upgrades) DOS 3.3 and
an IBM PS/2 Model 70 with 3MB Memory.

First of all, I think commandw.pif is great...I can run procomm, telnet,
edix and even compile, link and execute a C program from windows.!!! I think
this was on the windows diskettes????

I thought I would put some heat on the development environment to
get some valued discussion and get off of the MS/Apple gossip (why speculate
on what a judge will decide?)

The *.doc, *.txt, *.wri and *.star upgrade documents that
MS Distrubutes is terribly unorganized.  With so many products from 
microsoft and upgrades, keeping track of bug fixes and enhancements is a
real problem.

I am still having several problems with the whole environment.  (Oh, by 
the way, we ARE IBM compatible!).  Microsoft put me on hold for 10 minutes
twice (yes, I held on) and finally recommended that I subscribe to the
$450/year hotline.  I am really disappointed; I have ususally received
good response from MS.  I will put the situations on the net and post
any answers that I may receive directly. 


1a) I think the PS/2 has 3MB - 640K of extended memory.  So I put:
   windowsemmsize=2048 and emmsize=2048 
in the win.ini file.  I understand that this tells windows to use 2MB of 
the 2MB of extended memory that I want to use as expanded memory.
The about box on dos executive immediately says that I have 530k memory and
1750 of expanded memory. 
a) Where has the 300k of expanded memory gone to?
b) My application wants to allocated large amounts of memory that 
certainly is available in expanded memory, but GlobalCompact does not
seem to recognize it?!  My application bombs (gracefully) because I seem
to be limited to the amount of conventional memory left.  
c) How does dos executive differentiate between conventional and expanded
memory?  I do not see an SDK call for this. 

1b) When using the debugging version of the environment, I have gone
through the copy win86.com ... that I found in some document to
get codeview to (periodically, see below) work.  
Does this have to be redone (reinstall software?) if I install more memory?

2) I think the way fonts and font matching occurs is ridiculous.  I have
5 different output devices for displaying text and graphic reports.  We have
been able to get the devices to print 'similar' output only after numerous
tries.  I am never 'sure' of the exact font that I will get!!!
  MS sent out a readcvw.wri file that says in the file 'this file is formatted
for a HP laserjet printer....'  What the heck does this mean!!!  This file will
not print all of the contents on 3 different dot matrix printers I have.
Why the heck is MS developing a distribution file specific to a printer.  Why
is the file specific to a printer?  Is is a font difficulty problem?  I thought
the whole idea behind printing with graphics and fonts with sdk, gdi et. al
was to be device independent!!!!

3) We print large data reports between 1 and 120 pages.  Spooler will only
allow 20 jobs to be buffered at a time.  So the user can either wait 
and print 6 jobs @ 20 pages or one giant job.  But we have to be able
to print page N by itself, thus we need the ability to print ranges of
pages.  I would like to let the user specify pages J to K and use P pages
per job.  I haven't seen any other windows product that allows the
user to specify the number of items in a job from a textual document.
This doesn't sound unreasonable, unix itroff (or variations) provide the
-o13-15 option.
   NEWFRAME escape starts a new page but NEXTBAND will not start a
new page.  I have to do a STARTDOC to reset the rectangle for NEXTBAND and
to get a new page.  (is this right?)  STARTDOC/NEWFRAME/ENDOC is
considerably slower than the STARTDOC/NEXTBAND/ENDOC sequence.  So we have
to use banding.  I am stuck with either a large job or individual paged jobs.

4) Our application uses 20 .obj files.  When using the debugging kernel,
does the stack or heap size have to be increased?  What are good values for
these anyway?  What and how should the buffers and files sizes be configured
to?  I read somewhere (in a *.star file) that a stack N,M command should
be used in config.sys.  I have NEVER used this with any other 
application?  What is this for?
  The debugger works 80% of the time.  Some times I get the Fatal Error
message (maybe my memory is screwed up as described above).  Sometimes
(most of the time) when I try to find a string with /string/ it is
not found when it is there.  
  I am using a remote terminal at com1: and basically the debugger is
not behaving properly.  Some of the errors received when it continually
crashes are not listed in the windows manual (some appendix) and if they
are, the meaning listed does not mean anything intelligible.  MS has
a list of the errors that I never received in a *.star file, I am not
sure why?


/*-These views are mine...---Thanks in advance for any response...-------+
| Peter C. Bahrs                         UUCP ... !uunet!dalsqnt!usl!pcb |
| The USL-NASA Project                        ... !cs.utexas.edu!usl!pcb |
| Center For Advanced Computer Studies   INET  pcb@usl.usl.edu           |
| University of Southwestern Louisiana                                   |
| Lafayette, LA 70504                                                    |
+-----------------------------------------------------------------------*/

paulc@microsoft.UUCP (Paul Canniff 2/1011) (04/22/89)

In article <246400004@uxa.cso.uiuc.edu> mms00786@uxa.cso.uiuc.edu writes:
>
>I am a Computer Engg student, and I had decided to learn programming for a
>windowing system (Mac, MSWindows, or PM) this summer. Being a diehard IBM
>fan, I had almost decided on MSWindows. But all the notes I have read, and this
>ridiculous court suit, etc. are pretty negative (every single one of them). Is
>all this heartache worth it? Or would my efforts be better suited to learning
>'Macintosh Programmers Workshop'?
	[ remainder deleted ]

If you have IBM hardware, and want to learn how windowing systems work,
it would be wise to use MS-Windows.  Or PM if you have an OS/2 SDK, but
that's more $$$.  The things you will learn will include a lot of
Windows-specific things, BUT you will also learn very important lessons
in user-interface design, graphics, data presentation, fonts, etc
etc etc.  Unless you have a job lined up that is Mac-specific, use 
the product that runs on your hardware.  If you later get a chance to
use the Mac interface, do it.  These skills are additive, even
though some specific tricks (like Window's memory management) may
not be globally useful.

All windowing environments have differences.  But knowing any
one of them gives you a big head start for learning a different one! 

A completely unofficial opinion from ...
Paul Canniff
Microsoft