[Back to DELPHI SWAG index] [Back to Main SWAG index] [Original]

    > "EWin32Error in Module VCL30.DPL at address 00010B8F. Problems Calling
    > Win32 API"
    >
    > After this error the UI for Win95 gets all screwed up.

    This is the routine of interest from SYSUTILS.PAS...

       procedure RaiseLastWin32Error;
       var
         LastError: DWORD;
         Error: EWin32Error;
       begin
         LastError := GetLastError;
         if LastError <> ERROR_SUCCESS then
           Error := EWin32Error.CreateFmt(SWin32Error, [LastError,
             SysErrorMessage(LastError)])
         else
           Error := EWin32Error.Create(SUnkWin32Error);
         Error.ErrorCode := LastError;
         raise Error;
       end;

    If the message does not include an error code, GetLastError returned
    ERROR_SUCCESS. From what I can tell, this can occur in these places...

       - Controls.TWinControl.CreateWnd; the call to Windows.RegisterClass fails

       - Controls.TWinControl.CreateWnd; the call to Windows.CreateWindow or
    Windows.CreateWindowEx fails

       - Classes.THandleStream.SetSize; the call to SetEndOfFile fails with no
    error code

       - ComObj.RegisterComServer; a procedure named DllRegisterServer does not
    exist in the DLL

       - ComObj.CreateRemoteComObject; the call to GetModuleHandle('ole32.dll')
    fails with no error code

    >From the symptoms you've described, the first two seem to be the most
    likely. I suspect that you are running out of some resource (not memory;
    probably GDI or USER heap space). Does the problem persist if you remove a
    few of the 40 controls? What other programs are running on the computer?
    What video driver are you using? It wouldn't happen to be a Diamond product?

    - Brian

[Back to DELPHI SWAG index] [Back to Main SWAG index] [Original]