This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.
English
Deutsch
Hello There, Guest! Login Register


Thread Rating:
  • 1 Vote(s) - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5

Title: API in CSharp unter Visual Studio 2017


#1
Ich würde gerne die aktuellen Messdaten aus den Encodern in einem eigenen von mir geschriebenen Programm verwenden. Ich habe die API von der Caliper2PC Downloadseite downgeloadet und in einen Ordner entpackt. Die Datenübertragung zwischen der Caliper2PC Software und den vorkompilierten Demoprogrammen läuft einwandfrei. Versuche ich jedoch die "Exchange.dll" in meinem Programm einzubinden und unter Visual Studio 2017 zu kompilieren, bekomme ich in Zeile 93 eine Fehlermeldung:

Unbehandelte Ausnahme:

System.BadImageFormatException: "Es wurde versucht, eine Datei mit einem falschen Format zu laden. (Ausnahme von HRESULT: 0x8007000B)"

Die Beispieldateien wurden auf einer älteren VS Version erzeugt. Könnte es an dem von VS durchgeführten Upgrate liegen? Im Migrationsbericht werden keine Fehler angezeigt.
  Huh
 
Reply
#2
[attachment=2]
(03-03-2019, 02:03 PM)Klausi Wrote: Ich würde gerne die aktuellen Messdaten aus den Encodern in einem eigenen von mir geschriebenen Programm verwenden. Ich habe die API von der Caliper2PC Downloadseite downgeloadet und in einen Ordner entpackt. Die Datenübertragung zwischen der Caliper2PC Software und den vorkompilierten Demoprogrammen läuft einwandfrei. Versuche ich jedoch die "Exchange.dll" in meinem Programm einzubinden und unter Visual Studio 2017 zu kompilieren, bekomme ich in Zeile 93 eine Fehlermeldung:

Unbehandelte Ausnahme:

System.BadImageFormatException: "Es wurde versucht, eine Datei mit einem falschen Format zu laden. (Ausnahme von HRESULT: 0x8007000B)"

Die Beispieldateien wurden auf einer älteren VS Version erzeugt. Könnte es an dem von VS durchgeführten Upgrate liegen? Im Migrationsbericht werden keine Fehler angezeigt.
  Huh

Hallo Klausi und willkommen im Forum.

Es gibt 2 Versionen der API dll. Die 32 Bit Version heisst "Exchange.dll" und die 64 Bit Version heisst "Exchange64.dll". Abhängig davon, ob Ihr Programm in 32 Bit oder 64 Bit kompiliert wird, muss die entsprechende dll eingebunden werden. Falls Sie Ihr Programm als 32 Bit Version kompilieren möchten (z.B. wenn das Program auf 32 Bit Windows Versionen laufen soll), muss die Datei "Exchange.dll" eingebunden werden. Um das Programm in 32 Bit zu kompilieren, muss in VS 2017 in Debug bzw. Release Mode von "Any CPU" auf "x86" umgeschaltet werden (siehe Anhang).


Attached Files Image(s)
   
 
Reply
#3
Vielen Dank, jetzt läuft es. Smile
 
Reply
  


Forum Jump:


Browsing: 3 Guest(s)