Click here to Skip to main content
15,167,677 members
Home / Discussions / C#
   

C#

 
AnswerRe: First real C# program by C++ developer Pin
Roger Wright12-Sep-12 21:21
professionalRoger Wright12-Sep-12 21:21 
GeneralRe: First real C# program by C++ developer Pin
BobJanova13-Sep-12 0:07
MemberBobJanova13-Sep-12 0:07 
GeneralRe: First real C# program by C++ developer Pin
jschell13-Sep-12 9:28
Memberjschell13-Sep-12 9:28 
AnswerRe: First real C# program by C++ developer Pin
V.12-Sep-12 21:30
professionalV.12-Sep-12 21:30 
AnswerRe: First real C# program by C++ developer Pin
Richard MacCutchan12-Sep-12 23:26
mveRichard MacCutchan12-Sep-12 23:26 
AnswerRe: First real C# program by C++ developer Pin
jschell13-Sep-12 9:59
Memberjschell13-Sep-12 9:59 
AnswerRe: First real C# program by C++ developer Pin
wizardzz13-Sep-12 11:46
Memberwizardzz13-Sep-12 11:46 
AnswerRe: First real C# program by C++ developer Pin
Alan Balkany13-Sep-12 12:10
MemberAlan Balkany13-Sep-12 12:10 
Your C# program can use the same DLL as the C++ program.

Using a DLL from C# is even easier than using it from C++: Just use the DllImport directive:

http://msdn.microsoft.com/en-us/library/aa984739%28v=vs.71%29.aspx[^]

The above example doesn't show the mangled C++ name you need in a DllImport directive, so here's a working example from my code:

C#
[DllImport("vdrdll.dll", CallingConvention = CallingConvention.Cdecl, EntryPoint = @"?setNumObjects@@YAXH@Z")]
static extern void setNumObjects(int num);


You get the mangled name from the *.exp file that's created when you compile the C++ DLL. The mangled name always starts with '?' and ends with 'Z'.

The second line is just the standard function signature.

Your C# program needs:

C#
using System.Runtime.InteropServices;


at the top so it recognizes the DllImport keyword.
"Microsoft -- Adding unnecessary complexity to your work since 1987!"

AnswerRe: First real C# program by C++ developer Pin
Alan Balkany13-Sep-12 12:44
MemberAlan Balkany13-Sep-12 12:44 
QuestionDynamic TimeSlots Pin
Member 941347212-Sep-12 9:34
MemberMember 941347212-Sep-12 9:34 
AnswerRe: Dynamic TimeSlots Pin
Pete O'Hanlon12-Sep-12 10:46
mvaPete O'Hanlon12-Sep-12 10:46 
QuestionSieve of Eratosthenes Pin
WebMaster12-Sep-12 5:23
MemberWebMaster12-Sep-12 5:23 
AnswerRe: Sieve of Eratosthenes Pin
fjdiewornncalwe12-Sep-12 5:31
professionalfjdiewornncalwe12-Sep-12 5:31 
AnswerRe: Sieve of Eratosthenes Pin
Manfred Rudolf Bihy12-Sep-12 5:36
professionalManfred Rudolf Bihy12-Sep-12 5:36 
GeneralRe: Sieve of Eratosthenes Pin
WebMaster12-Sep-12 5:39
MemberWebMaster12-Sep-12 5:39 
GeneralRe: Sieve of Eratosthenes Pin
Manfred Rudolf Bihy12-Sep-12 5:45
professionalManfred Rudolf Bihy12-Sep-12 5:45 
GeneralRe: Sieve of Eratosthenes Pin
WebMaster12-Sep-12 5:56
MemberWebMaster12-Sep-12 5:56 
GeneralRe: Sieve of Eratosthenes Pin
Manfred Rudolf Bihy12-Sep-12 6:04
professionalManfred Rudolf Bihy12-Sep-12 6:04 
GeneralRe: Sieve of Eratosthenes Pin
Richard MacCutchan12-Sep-12 6:40
mveRichard MacCutchan12-Sep-12 6:40 
AnswerRe: Sieve of Eratosthenes Pin
J4amieC12-Sep-12 5:53
MemberJ4amieC12-Sep-12 5:53 
AnswerRe: Sieve of Eratosthenes Pin
Pete O'Hanlon12-Sep-12 5:54
mvaPete O'Hanlon12-Sep-12 5:54 
GeneralRe: Sieve of Eratosthenes Pin
WebMaster12-Sep-12 5:59
MemberWebMaster12-Sep-12 5:59 
GeneralRe: Sieve of Eratosthenes Pin
J4amieC12-Sep-12 6:02
MemberJ4amieC12-Sep-12 6:02 
GeneralRe: Sieve of Eratosthenes PinPopular
Manfred Rudolf Bihy12-Sep-12 6:06
professionalManfred Rudolf Bihy12-Sep-12 6:06 
GeneralRe: Sieve of Eratosthenes Pin
J4amieC12-Sep-12 6:07
MemberJ4amieC12-Sep-12 6:07 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.