Questione : Includere le lime di intestazione di C++ dentro. Catturare con la rete l'applicazione

Stiamo utilizzando i terzi api (avendo DLL unmanaged) nella nostra applicazione di Windows (CONTRO 2008, C#).

In la documentazione di api, ci è un'istruzione “se stiate usando C++ per generare un'applicazione, voi può usare i questi include le lime direttamente; se stiate usando un'altra lingua per generare l'applicazione, potete usare le lime di inclusione come

How di mascherina " per utilizzare le lime di intestazione di C++ nell'applicazione delle finestre di C#.Net come mascherina e per usarle dentro. Applicazione netta? l'aiuto del

Any sarebbe altamente
Raj
di appreciated.

Thanks class= del

Risposta : Includere le lime di intestazione di C++ dentro. Catturare con la rete l'applicazione

>> come utilizzare le lime di intestazione di C++ nell'applicazione delle finestre di C#.Net come mascherina ed usarle dentro. Applicazione netta?

Spostare il DLL unmanaged in C++ diretto come assemblea misto ed allora denominare il C++ diretto da C#. Vedere sotto come esempio semplice

http://msdn.microsoft.com/en-us/library/x0w2664k.aspx

“Le assemblee miste sono capaci di contenere sia le istruzioni di macchina unmanaged che le istruzioni di MSIL. Ciò li permette di denominare ed essere denominati dalle componenti di .NET, mentre mantiene la compatibilità con le componenti che sono interamente unmanaged. Using le assemblee miste, gli sviluppatori possono creare le applicazioni using una miscela di funzionalità diretta ed unmanaged. Ciò rende ad assemblee miste l'ideale per le applicazioni esistenti di migrazione Visual C++ alla piattaforma di .NET.

Alternativa. È possibile denominare la funzione esportatrice in DLLs e in EXEs using i servizi di Interop. Se potete modificare il codice del EXE all'esperto le funzioni dovete denominarli potete usare DllImport per importarli nel vostro codice di C#.

http://www.csharphelp.com/archives/archive52.html
http://msdn2.microsoft.com/en-us/library/9h658af8(VS.80).aspx
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
// C++ (tutti in un'assemblea di IJW)
 
#include  
 
namespace UnmanagedCode
{
        foo vuoto ()
        {
                std:: cout  <>
           
Altre soluzioni  
 
programming4us programming4us