Vannak olyan eszközök is csomagolja néhány C ++ osztály C #?

szavazat
2

Egy szoftver SDK kapunk néhány API-kat C ++ osztály könyvtár, köztük a h, lib, dll fájlokat.

Azonban szeretném használni C # dolgozni a könyvtár.

Tehát, vannak-e olyan eszköz lehetne csomag a C ++ osztály könyvtár a C #? Vagy valami javaslata?

Nem akarom használat CLI, mert olyan sok osztályok.

A kérdést 12/06/2011 13:32
a forrás felhasználó
Más nyelveken...                            


3 válasz

szavazat
2

Ha azt szeretnénk, hogy lezárja a könyvtár kézzel, ez elég egyenesen előre kell használni a C ++ / CLI hogy hozzon létre egy irányított közrefogja az API vagy P / Invoke hívja a natív kód közvetlenül a C #.

Ha azt szeretnénk, hogy hozzon létre egy wrapper automatikusan, úgy vélem, a korty projekt, mint a C / C ++ => C # modult . A korty modul használ P / Invoke a motorháztető alatt (ez így van, a szerzők azt állítják,, használható Mono is). Úgy tűnik, hogy kezelni sok a részleteket ( .Net és Mono ) P / Invoke csomagolóanyagokat az Ön számára. Én nem használtam, de úgy tűnik, hogy mit keres.

Válaszolt 12/06/2011 13:43
a forrás felhasználó

szavazat
2

Használja a C ++ / CLI , dialektusban C ++ használt menedzselt kód a .NET platform. A nyelv, amelyet elsősorban a felhasználás egy alkalmazást, mint a tiéd.

Lásd ezt a cikket (a cím egy kicsit túlzás, de a tartalom jó). Egyéb keresések borításain C ++ kódot kell adni további példákat.

Barry rámutatott, egy platform meghívási (P / Invoke) hívás hagynám hívja natív kódot a DLL.

Válaszolt 12/06/2011 13:44
a forrás felhasználó

szavazat
1

Egy dolog, amit tehet, hogy építsenek egy COM közrefogja a C ++ osztály könyvtár. Miután a C ++ osztályok vannak csomagolva COM objektumok, akkor képes lesz arra, hogy használja őket a C # kódot.

lásd http://msdn.microsoft.com/en-us/library/aa645736(v=vs.71).aspx ( "COM együttműködéshez 1. rész: C # Kliens-oktató")

Ha szüksége van info, hogy hogyan csomagolja C ++ könyvtárak a COM tudtam javaslom, hogy olvassa el a kiváló könyv „Inside COM” A Microsoft Press.

Válaszolt 12/06/2011 13:45
a forrás felhasználó

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more