Seite 1 von 1

Library für Kamera Fernsteuerung.

Verfasst: 28.02.2011 19:35
von swissgregi
Ich besitze die Kamera EX-F1 von Casio.
Damit lassen sich unter anderem Slowmotion Videos drehen mit bis zu 1200fps.

Nun wäre es natürlich schön, wenn man diese Kamera mit Purebasic fernsteuern könnte.
Jens Skovgaard Olsen hat auf der Seite http://code.google.com/p/exf1ctrl/ bereits etwas funktionierendes in C Programmiert.
Der Sourcecode ist offen, doch leider kann ich mit C nicht sehr viel anfangen.

Wie ich sehe gibt es da eine "exf1api.c" welche alle Funktionen beinhaltet, welche ich gerne in PureBasic hätte.

Nun meine Frage:
Wäre es nicht möglich aus dieser "exf1api.c" eine dll zu kompilieren, um in PureBasic darauf zuzugreifen?
Ich denke das sollte kein grosser aufwand sein, da ja alles bereits programmiert ist.
Wer kann das machen? Wäre jemand hier bereit dazu?

Ich und viele EX-F1 Benutzer wären sehr dankbar.

Grüsse aus der Schweiz
Gregi

Re: Library für Kamera Fernsteuerung.

Verfasst: 28.02.2011 23:05
von Tur0k
Unter exf1ctrl\lib\ ist eine Library (libexf1.lib) ... die kannst du doch mit PureBasic hoffentlich verwenden :)

Re: Library für Kamera Fernsteuerung.

Verfasst: 01.03.2011 00:56
von swissgregi
Hallo Tur0k

Hmm, wusste gar nicht, was .lib Dateien sind. Ich dachte zuerst dass es nur dll's gibt.

Wie ich sehe, muss ich die Library mit "Import" einlesen.
Doch irgendwie schaffe ich es nicht, ich kriege immer eine Fehlermeldung.

So sieht der Sourcecode der libexf1.lib aus: http://code.google.com/p/exf1ctrl/sourc ... /libexf1.c
Wie habe ich denn das zu bewerkstelligen?

Kann mir da einer eine Beispiel anhand der ersten Funktion

Code: Alles auswählen

void exf1Cmd(WORD cmd, ...)
geben?

Re: Library für Kamera Fernsteuerung.

Verfasst: 01.03.2011 01:04
von TomS
Und wie lautet diese Fehlermeldung? :roll:

Code: Alles auswählen

Import "libexf1.lib"
efx1Cmd(cmd.w)
EndImport
Das soll's schon gewesen sein.
Du musst halt die Konstanten aus der exf1.h Datei nach PB übernehmen.

Code: Alles auswählen

#CMD_GET_DEVICE_INFO = "%1001"
#CMD_OPEN_SESSION  = "%1002"
#CMD_CLOSE_SESSION  = "%1003"
#CMD_GET_STORAGE_IDS = "%1004"
;usw....

Re: Library für Kamera Fernsteuerung.

Verfasst: 01.03.2011 02:52
von swissgregi
Hmm, egal was ich probiere, ich erhalte immer folgenden Error:

Code: Alles auswählen

POLINK: error: Unresolved external symbol '___security_cookie'.
POLINK: error: Unresolved external symbol '@__security_check_cookie'.
POLINK: fatal error: 2 unresolved external(s).
hier steht irgendwas, dass etwas im Compiler hätte deaktiviert werden müssen: http://blogs.msdn.com/b/nikolad/archive ... piler.aspx

Ähm, müsste also die "libexf1.lib" neu(korrekt) kompiliert werden bevor ich weitermachen kann?

Re: Library für Kamera Fernsteuerung.

Verfasst: 14.03.2011 11:47
von swissgregi
Die Library wurde nun neu kompiliert, mit ausgeschaltetem Security Cookie.

Nun versuchte ich folgenden Code:

Code: Alles auswählen

Import "libexf1.lib"
usbGetStatus()
EndImport
usbGetStatus()
Doch nun erhalte ich folgende Fehlermeldung:
POLINK: error: Unresolved esternal symbol '_usbGetStatus'.
POLINK: fatal error: 1 unresolved external(s).
Was sagt mir das nun?

Re: Library für Kamera Fernsteuerung.

Verfasst: 16.03.2011 22:14
von swissgregi
Hat niemand eine Idee?

Re: Library für Kamera Fernsteuerung.

Verfasst: 16.03.2011 22:24
von grapy
Schon

Code: Alles auswählen

ImportC
probiert?

Re: Library für Kamera Fernsteuerung.

Verfasst: 17.03.2011 00:48
von swissgregi
Ja, der Import Befehl scheint nicht das Problem zu sein.
Die Fehlermeldung kommt erst beim aufrufen der Funktion.