"Roger Garrett" <RogerGarrett (AT) discussions (DOT) microsoft.com> wrote
Quote:
Suppose that I write a J# class library. When that gets
compiled it produces a .DLL file. Is that .DLL file a
standard, regular type of .DLL? |
Well, not really. It is an assembly. The classes in that assembly can be
"consumed" by other .Net components, but in general an assembly is not going
to "export" free functions in the traditional Win32 API sense of the term.
Quote:
In particular, can I reference that .DLL file from a C++ program? |
You can use one of the interop methods. Dot Net classes can be wrapped up as
COM objects and the C++ program can consume them as any other COM object.
Quote:
And most importantly, when that C++ program runs on a computer, and
invokes methods
within that J# .DLL, does that computer also have to have the .NET |
yes
Quote:
and the J# redistributables installed, |
yes
Quote:
or will that C++ program be able to run just fine
without those redistributables? |
no
Quote:
My hope is that I can write the majority of my application as a J# class
library, and then just have a small C++ program that invokes the main
functionality within the J# class library's .DLL file, thereby avoiding
the
need to have my potential customers also install the .NET and J#
redistributables. |
There are third party tools, with which I have no experience, such as these:
http://thinstall.com/help/?_netsupport.htm http://www.remotesoft.com/linker/
which purport to do this. You may want to do some research.
Regards,
Will