Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

11.08.2015, 19:43

[C# Compiler (csc.exe)] Wie gibt man eine C++-Library an?

Hi

In der VS IDE ist es ja einfach man kann einfach auf "Hinzufügen"->"Vorhandenes Element" klicken. Das dann auf "Kopieren, wenn neuer" stellen und (manchmal) bei Erstellen "Zielplatform" auf "x86" stellen. So!

Aber wie macht man das wenn man den C#-Compiler direkt benutzt (fragt mich bitte nicht wieso ich das will :) )
Ich weiß das man mit "/r" Verweise verlinken kann das geht aber da nur mit .NET-Dateien. Was muss ich schreiben um C++-Librarys zu verlinken und um die Assembly auf "x86" zu setzen?

mfg

2

11.08.2015, 20:38

Du kannst dir in der IDE in den projekteinstellungen irgendwo die befehlszeile anzeigen lassen. Da kannst du mal abgucken

3

11.08.2015, 20:52

Ja ich hab da mal nachgeguckt. Habs aber nicht gefunden. Ich denke es müsste irgendwo "Erstellen" oder "Build-Ereignisse" sein aber da kann man nur eigene Kommandozeilenargumente für das Programm eingeben um es zu testen (fürs Debugging).

Weiß jemand vielleicht genau wo man das finden kann?

Nimelrian

Alter Hase

Beiträge: 1 216

Beruf: Softwareentwickler (aktuell Web/Node); Freiberuflicher Google Proxy

  • Private Nachricht senden

4

12.08.2015, 11:05

@GameXCraft Hast du überhaupt nach einer Lösung für dein Problem gesucht, zum Beispiel über Google? Wenn ja, nach was hast du gesucht? Was hast du gefunden?
Ich bin kein UserSideGoogleProxy. Und nein, dieses Forum ist kein UserSideGoogleProxyAbstractFactorySingleton.

5

12.08.2015, 14:42

ja ich hab das gesucht: "c# compiler c++ library anhängen".
Da komm ich auf diese Seite: https://msdn.microsoft.com/en-us/library/fwkeyyhe.aspx.

Aber da sind tausende Optionen wovon viele so klingen als weren sie das richtige. Ich find's nicht.

6

12.08.2015, 14:53

Das ist die Spezifikation für den C++ Compiler. Du kannst ja mal hier gucken https://msdn.microsoft.com/en-us/library/6s2x2bzy.aspx
Das was du suchst ist wahrscheinlich /platform:x86. Das mit der C++ Library kannst du wohl mit /addmodule machen. Du hättest auch einfach /? angeben können um alle Switches anzusehen wie man das bei nahezu allen Kommandozeilenprogramme machen kann ;)

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

7

12.08.2015, 15:04

Seit wann kann man überhaupt C++ DLLs in ein C# Programm linken? Eigentlich muss man dafür doch manuelle DLL-Imports im C# Code schreiben. Gibt's da neue komfortable Wege, die mir unbekannt sind? Auch statisch gegen eine dynamic link library linken zu wollen klingt für mich auf den ersten Blick schon inhaltlich verkehrt.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

Beiträge: 1 223

Wohnort: Deutschland Bayern

Beruf: Schüler

  • Private Nachricht senden

8

12.08.2015, 15:12

Man kann direkt gegen eine C++ CLI DLL linken die nativen C++ Code enthält.

9

12.08.2015, 15:13

also "/addmodule" geht nicht, das hab ich schon gestern ausprobiert. Da steht denn "Assembly konnte nicht geladen werden. Falsches Format" oder sowas in der Art.

10

12.08.2015, 15:15

Zitat

Gibt's da neue komfortable Wege, die mir unbekannt sind?

Ja in VS2013 kann man bei "Vorhandene Elemente" auch "C++ Librarys anhängen". Die muss man dann einfach auf "Kopieren, wenn neuer" stellen und dann geht das.

Werbeanzeige