cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

Can't use namespaces in 64 bit dll???

Highlighted
Level 8

Can't use namespaces in 64 bit dll???

Hello World!

I develop a sychroneapplication for Wildfire 3.0.
Now I have structured my complete project with namespaces!
That works really fine with 32-bit! But now I compile and link my projekt with
Microsoft Platform SDK for Windows Server 2003 R2 to create a 64bit dll and nothing works.


Is there a compiler-switch or anything else that i can use the namespaces on 64bit?
Why doesn't that work?



Thanks, Lars

3 REPLIES 3

Can't use namespaces in 64 bit dll???


Lars -

I assume that your C++ code failed to compile. Can you share your compiler
error messages with us?

> I develop a sychrone application for Wildfire 3.0.
> Now I have structured my complete project with namespaces!
> That works really fine with 32-bit! But now I compile and link my projekt
with
> Microsoft Platform SDK for Windows Server 2003 R2 an nothing works.

I have that same version of the Platform SDK installed. I have only
compiled
C code with it, though, not C++. I checked some of the same code and I did
find namespace declarations, so I believe this version of the SDK compiler
supports namespaces. Take a look at the makefiles in these folders:

Samples/Multimedia/DirectShow/VMR/VMRXclBasic
Samples/Multimedia/wia/GetImage

> Is there a compiler-switch or anything else that i can use the namespaces
on 64bit?

You can list all the compiler switches by typing "cl /?". I read them over
and didn't see anything specifically about namespaces, but I did see some
options to avoid. Make sure you're not using either of these:

/Tc<source file="> compile file as .c
/TC compile all files as .c

...and consider using one of these:

/Tp<source file="> compile file as .cpp
/TP compile all files as .cpp

Finally, even though the Visual Studio compiler is NOT the same as the SDK
(as
are the libraries), take a look at the compile switches in your Visual
Studio
project and look for corresponding switches in the Platform SDK compiler.

|+| M a r k |+|

Mark Stallard
Rapid Response Development
information Solutions
Integrated Defense Systems
Raytheon Company




(business)
+1.978.436.6016
(cell)
+1.617.331.5443
(tie line)
239.6016

-



880 Technology Drive
Billerica, MA 01821
www.raytheon.com


Raytheon Sustainability

This message contains information that may be confidential and privileged.
Unless you are the addressee (or authorized to receive mail for the
addressee), you should not use, copy or disclose to anyone this message or
any information contained in this message. If you have received this message
in error, please so advise the sender by reply e-mail and delete this
message. Thank you for your cooperation.









RE: Can't use namespaces in 64 bit dll???

Hello,


@MARK: thanks for your answer!


My dll compiles successful. I do not have any errors or warnings!!!


Now I analysed my dll with the dependency walker.
I'm using the SAP library for Unicode librfc32u.lib (its a 64 bit library, but named with 32)
That lib uses the msvcr80.dll an it seems, that on is not 64bit.
The log of the Dependency Walker:

SOLVED: Can't use namespaces in 64 bit dll???

Hello,

I have solved the problem! It was a missing library!!


Including libsapucum.lib solved the problem!


Maybe this thread can help others.



Thanks!