Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!usc!samsung!think.com!snorkelwacker.mit.edu!primerd!primerd!eriador!mguyott From: mguyott@eriador.prime.com Newsgroups: comp.windows.ms.programmer Subject: Borland C++ problem. Message-ID: <149000018@eriador> Date: 3 Apr 91 06:05:46 GMT Lines: 89 Nf-ID: #N:eriador:149000018:000:3262 Nf-From: eriador.prime.com!mguyott Apr 2 20:28:00 1991 We are attempting to use Borland`s new C++ on a real "commercial" Windows 3.0 project. We were using Zortech C++ and were very happy with it until we attempted to use their int86x() function. This function does not work and as we absolutly need it for our communications software we were left with nothing we could do. Soooooo, we are trying Borland's C++ compiler. The first problem that we ran into was that we received an error message indicating that we had exceeded some internal compiler table size. The message was: Compiler table limit exceeded. We called Borland and they told us our program was too complex and we should make it simplier! That was a lot of help! We managed to get it working for the moment by limiting the parts of windows.h that we include (i.e. we defined things like NOSOUND, NOMETAFILE, etc.). This initial problem has made it clear to us that Borland`s C++ is only a temporary fix until we can find a real C++ compiler that works. I really wish Zortech would fix their int86x() bug so we could go back to their compiler (anyone from Zortech listening! (-8 )! Anyway, at this point we were making progress. Now I have encountered a problem that I can not work around. I would greatly appreciate any help that anyone who has experienced this problem could provide me with! The problem is in attempting to call MakeProcInstance(). The compiler does not seem to recognize the dialog box function name. The compiler appears not to recognize it despite a function prototype only a few lines prior. At this point I have no idea how to get the compiler to do the right thing. The error generated is: ---- Borland C++ Version 2.0 Copyright (c) 1991 Borland International conndlg.cxx: Error conndlg.cxx 28: Type mismatch in parameter 1 in call to 'MakeProcInstance(int(far pascal*)(),unsigned int)' in function ConnectDlg::ConnectDlg(unsigned int,unsigned int) *** 1 error in Compile *** Available memory 1048575 ---- The code that generates this error is: ---- #include #include "conndlg.hxx" BOOL FAR PASCAL ConnectDlgProc(HWND, WORD, WORD, LONG); /* Public member functions. */ ConnectDlg::ConnectDlg(HANDLE hInstPar, HWND hWndPar) { hWndParent = hWndPar; hInstParent = hInstPar; lpfnConnectDlgProc = MakeProcInstance(ConnectDlgProc, hInstParent); } /* This is the dialog box win proc. It is a friend to this class so it ** is able to access the member variables of this class. */ BOOL FAR PASCAL ConnectDlgProc(HWND hDlg, WORD wMessage, WORD wParam, LONG lParam) { return(FALSE); } /* End of ConnectDlg::ConnectDlgProc(). */ ---- If anyone wants more information please feel free to contact me. Wish me luck! Marc ---- Two of the worst things we teach our children are that a knowledge of science is nice but not necessary, and a knowledge of sex is necessary but not nice. Marc Guyott Constellation Software, Inc. (508) 620-2800 Framingham, Mass. 01701 USA Ext. 3135 mguyott@primerd.prime.com ...!{uunet, decwrl}!primerd.prime.com!mguyott