E
Eric Twietmeyer
Hello,
I am running into something very strange. I am writing a .NET assembly
using managed c++ (VS.NET 2003) and in this project when I attempt to make a
call to sscanf (from stdio.h) I get the error indicated in the subject line
when compiling.
Strangely, if I create a new "Hello World" application that is completely
stripped down I can successfully link when there is a call to sscanf. I
duplicate the project settings from my main assembly when doing this (except
of course creating an exe rather than a dll).
Also very strangely, in my real assembly, I can compile and link
successfully with calls to random other functions defined in stdio.h (I
tried tmpfile and tmpnam for instance), but not others (_snscanf, others).
Also I can link successfully with calls to functions defined in other
headers, for instance inserting a call to _fpreset() compiles and links fine
as well.
I assume I am seeing something strange having to do with link order? My
assembly uses various System dlls and various other assemblies that we have
written locally. I have no idea how the linker attempts to resolve these,
but the sscanf symbol is clearly located in the msvcrt(d).lib library,
against which I am linking.
Does anyone know what might be going on? It would be very painful to
attempt to break apart the assembly to determine which piece under which
circumstances will not link.
Thanks in advance,
Eric Twietmeyer
I am running into something very strange. I am writing a .NET assembly
using managed c++ (VS.NET 2003) and in this project when I attempt to make a
call to sscanf (from stdio.h) I get the error indicated in the subject line
when compiling.
Strangely, if I create a new "Hello World" application that is completely
stripped down I can successfully link when there is a call to sscanf. I
duplicate the project settings from my main assembly when doing this (except
of course creating an exe rather than a dll).
Also very strangely, in my real assembly, I can compile and link
successfully with calls to random other functions defined in stdio.h (I
tried tmpfile and tmpnam for instance), but not others (_snscanf, others).
Also I can link successfully with calls to functions defined in other
headers, for instance inserting a call to _fpreset() compiles and links fine
as well.
I assume I am seeing something strange having to do with link order? My
assembly uses various System dlls and various other assemblies that we have
written locally. I have no idea how the linker attempts to resolve these,
but the sscanf symbol is clearly located in the msvcrt(d).lib library,
against which I am linking.
Does anyone know what might be going on? It would be very painful to
attempt to break apart the assembly to determine which piece under which
circumstances will not link.
Thanks in advance,
Eric Twietmeyer