473,320 Members | 2,146 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,320 software developers and data experts.

native 64-bit compilation on Win64 and .NET

Hello,

I have three questions:

1) I have been perusing the MSDN VC++ pages. Everything seems to be geared
towards .NET integration. Will MS continue support natively compiled code
or will they be pushing developers to do everything as "managed" C++?

2) Also, on 32-bit platforms we can call 32-bit unmanaged DLLS from managed
assemblies. On Win64 will a 64-bit .NET assembly be able to call an
unmanaged 64-bit DLL?

3) On the AMD64, thats supports the running of bot 32-bit and 64-bit code,
would we be able to call unmanaged 32-bit DLLs from a 64-bit .NET assembly?
(Sometimes its not practical/possible to recompile/port the 32-bit DLL).

Please let me know if there is a better forum for these questions...

Thanks.

-d

--

Nov 16 '05 #1
3 1503

"Dennis Landi" <[none][at][none]> wrote in message
news:Oi**************@TK2MSFTNGP09.phx.gbl...
Hello,

I have three questions:

1) I have been perusing the MSDN VC++ pages. Everything seems to be geared towards .NET integration. Will MS continue support natively compiled code
or will they be pushing developers to do everything as "managed" C++? No, we fully supprt compiling native code.

2) Also, on 32-bit platforms we can call 32-bit unmanaged DLLS from managed assemblies. On Win64 will a 64-bit .NET assembly be able to call an
unmanaged 64-bit DLL? Yes, it will.

3) On the AMD64, thats supports the running of bot 32-bit and 64-bit code,
would we be able to call unmanaged 32-bit DLLs from a 64-bit .NET assembly? (Sometimes its not practical/possible to recompile/port the 32-bit DLL). No. You will have to use any of the supported IPC mechanisms like named
pipes, sockets, memory mapped files, COM. There is no type of thunk on
64-bit version of Windows that will allow 64-bit user mode code to call
32-bit user mode code in the same process.
Please let me know if there is a better forum for these questions...


Ronald Laeremans
Visual C++ team
Nov 16 '05 #2

"Ronald Laeremans [MSFT]" <ro*****@online.microsoft.com> wrote in message
news:uP**************@TK2MSFTNGP10.phx.gbl...
3) On the AMD64, thats supports the running of bot 32-bit and 64-bit code, would we be able to call unmanaged 32-bit DLLs from a 64-bit .NET

assembly?
(Sometimes its not practical/possible to recompile/port the 32-bit DLL).

No. You will have to use any of the supported IPC mechanisms like named
pipes, sockets, memory mapped files, COM. There is no type of thunk on
64-bit version of Windows that will allow 64-bit user mode code to call
32-bit user mode code in the same process.


Ronald, thanks for the response.

You mention COM as one way for 64-bit .NET assembly to communicate with a
32-bit DLL. So a 64-bit assembly could invoke a 32-bit out-of-process COM
object just like we would do it now on a 32-bit O.S.?


Nov 16 '05 #3

"Ronald Laeremans [MSFT]" <ro*****@online.microsoft.com> wrote in message
news:uP**************@TK2MSFTNGP10.phx.gbl...
3) On the AMD64, thats supports the running of bot 32-bit and 64-bit code, would we be able to call unmanaged 32-bit DLLs from a 64-bit .NET

assembly?
(Sometimes its not practical/possible to recompile/port the 32-bit DLL).

No. You will have to use any of the supported IPC mechanisms like named
pipes, sockets, memory mapped files, COM. There is no type of thunk on
64-bit version of Windows that will allow 64-bit user mode code to call
32-bit user mode code in the same process.


Ronald, thanks for the response.

You mention COM as one way for 64-bit .NET assembly to communicate with a
32-bit DLL. So a 64-bit assembly could invoke a 32-bit out-of-process COM
object just like we would do it now on a 32-bit O.S.?


Nov 16 '05 #4

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

4
by: David Kantowitz | last post by:
I am trying to wrap a native-C++ DLL in managed C++, to use in a .NET project. The native code is compiled into a DLL, and I have created a .def file that exports the mangled names of the...
3
by: Xavi Sam | last post by:
Hi When I build my asp.net application the ASP.NET generates a net.assembly by page in the directory of my pc: C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files Theese...
1
by: Miku | last post by:
Hi Guies, I am new to vb.net. In my project I am using vb.net & MySql 4.0.17 as a backend. For database connectivity i have downloaded ByteFX - Mysql .net native provider. I have written the...
3
by: Lonewolf | last post by:
Hi all, I'm having difficulties passing data back to managed class from my native class when the data is generated from within a native thread in the native class itself. I will give the following...
8
by: Gary Nastrasio | last post by:
If I compile with /clr:safe, which is exactly meant by saying I can't use "Native Types" in my code? Is a native type something such as float, short, or int? Thanks, Gary
5
by: dovgani | last post by:
I have an unmanaged MFC project. The output is static lib. I would like to compile using /clr option. The native lib size is 64 megs and with /clr and /O1 options is 940 megs. Is it possibly...
10
by: krunalb | last post by:
Hi, I am trying to shift unsigned long long value by 64 bits and this is what i get #include <stdio.h> int main() { unsigned short shiftby= 64;
5
by: =?Utf-8?B?U2hhcm9u?= | last post by:
I have a class that is writen in unmanaged pure native C++. This class files (h and cpp) are inserted to a managed C++ (VC++ 2005, C++/CLI) DLL compoenet. This DLL compoenet is used in a C#...
2
by: Bob Altman | last post by:
Hi all, We have a native class modeled after the System::Exception class, and all exceptions that we throw derive from this class. For now this class is quite simple: just Description and...
4
by: joes.staal | last post by:
Hi, I know this has been asked earlier on, however, none of the other threads where I looked solved the following problem. 1. I've got a native C++ library (lib, not a dll) with a singleton. 2....
0
by: DolphinDB | last post by:
Tired of spending countless mintues downsampling your data? Look no further! In this article, you’ll learn how to efficiently downsample 6.48 billion high-frequency records to 61 million...
0
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
1
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
0
by: Vimpel783 | last post by:
Hello! Guys, I found this code on the Internet, but I need to modify it a little. It works well, the problem is this: Data is sent from only one cell, in this case B5, but it is necessary that data...
0
by: jfyes | last post by:
As a hardware engineer, after seeing that CEIWEI recently released a new tool for Modbus RTU Over TCP/UDP filtering and monitoring, I actively went to its official website to take a look. It turned...
1
by: PapaRatzi | last post by:
Hello, I am teaching myself MS Access forms design and Visual Basic. I've created a table to capture a list of Top 30 singles and forms to capture new entries. The final step is a form (unbound)...
0
by: Defcon1945 | last post by:
I'm trying to learn Python using Pycharm but import shutil doesn't work
1
by: Shællîpôpï 09 | last post by:
If u are using a keypad phone, how do u turn on JavaScript, to access features like WhatsApp, Facebook, Instagram....
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 3 Apr 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome former...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.