When trying to build demo1a using either the make.bat or from thr RadAsm IDE, I get the following error:

LINK : fatal error LNK1104: cannot open file "C:\Masm32\Lib\AdvApi32.lib"

I have Masm, and radasm int the root dir of drive D:, and ObjAsm installed in the Masm directory.

I am using xp pro sp2.

my user variables are:
INCLUDE d:\masm32\ObjAsm32;d:\masm32\ObjAsm32\Resources;d:\masm32\ObjAsm32\Resources\Dialogs
MASM32_PATH d:\masm32
OA32_PATH d:\masm32\ObjAsm32

and masm is in my Path, so I cannot figure this out, anyone have any ideas?

Posted on 2005-11-03 13:10:52 by rags
A quick guess of mine would be that some OA32 object has been compiled with
includelib C:\Masm32\Lib\AdvApi32.lib
instead of
includelib \Masm32\Lib\AdvApi32.lib

A quick fix can be done with a hex editor, changing C:\Masm32 to D:\Masm32. But first, find which .lib contains that text (use Windows Explorer's search for text)
Posted on 2005-11-03 13:17:31 by Ultrano
Hi Rags
To solve this problem, you have to recompile first the ObjMem32 library  and all objects to fit into your configuration.
Use the ObjAsm32\Code\ObjMem32\Make_Lib_xxx.bat and then ObjAsm32\Code\Objects\MakeObjs.bat in that order!


Posted on 2005-11-03 16:14:29 by Biterider
  Thanks for the help. I recompiled the objects like you said and it solved that annoying problem.
BTW, I am using ver1.3d, and I recompiled using the P3 bat.
However, when doing so I got this error:

Assembling: Graph2d.asm
d:\masm32\ObjAsm32\Code\Objects\Graph2d.inc(814) : error A2137: too few arguments to INVOKE
d:\masm32\ObjAsm32\Code\Objects\Graph2d.inc(814) : error A2114: INVOKE argumenttype mismatch : argument : 1
d:\masm32\ObjAsm32\Code\Objects\Graph2d.inc(1818) : error A2137: too few arguments to INVOKE
d:\masm32\ObjAsm32\Code\Objects\Graph2d.inc(1818) : error A2114: INVOKE argument type mismatch : argument : 1
d:\masm32\ObjAsm32\Code\Objects\Graph2d.inc(1845) : error A2137: too few arguments to INVOKE
d:\masm32\ObjAsm32\Code\Objects\Graph2d.inc(1845) : error A2114: INVOKE argument type mismatch : argument : 1
Microsoft (R) Library Manager Version 5.12.8078
Copyright (C) Microsoft Corp 1992-1998. All rights reserved.

LINK : fatal error LNK1181: cannot open input file "Graph2d.obj"

The offending line is:

        invoke VarBstrFromDate, rTimeCurrent, 0, LOCALE_NOUSEROVERRIDE, addr pTimeCurrent

According to the 2003 SDK The first argument should be of type DATE, while rTimeCurrent is defined as a real8, could that be the problem?

I am a relative newbie when it comes to programming,my  knowledge of these things isn't that good, I just do this as a hobby.
BTW, great job you've done on the ObjAsm programming model.


Posted on 2005-11-04 09:31:10 by rags
Hi Rags,
The problem is your Masm32\Include\OleAut32.inc file. There, you have a line looking something like


According to the MS documentation it should be


Replace the the first 2 dwords by a real8 and recompile the Graph2D object. This should work...  :)



Posted on 2005-11-04 10:05:26 by Biterider
Thanks alot!
That did the trick.

Posted on 2005-11-04 11:11:42 by rags