Seite 1 von 2

[erledigt] Hülfäää - wie benutze ich eine .dll ?

Verfasst: 10.12.2005 00:14
von scholly
moin, moin...

Newbie und DLL - 3 Welten begegnen sich :(

Ich hab mir jetzt >2 Std nen Wolf gesucht um ein Bespiel/Tutorial zu finden, anhand dessen ich lernen kann, wie ich die DLL, die ich fürs AVI-Info-Auslesen gefunden habe, nun nutzen/einbinden kann. Fehlanzeige.
Gibts wirklich nix, woraus jemand, der garkeine Ahnung von Libraries hat, lernen kann, wie man sie benutzt ?

scholly :cry:

Verfasst: 10.12.2005 00:40
von edel
Schon mal einen Blick in die Hilfe geworfen ?
Dort findest du unter Library "alles" was du brauchst .

Verfasst: 10.12.2005 00:49
von spacewalker
ich vermute fast, damit ist eine spezifische dll die sich gerade mit AVI beschaeftigt und die referenz dazu gemeint... In dem fall brauchst du die dokumentation fuer diese DLL, sonst wirklich - original PB-Hilfe.

Verfasst: 10.12.2005 00:58
von scholly
hallodri hat geschrieben:Schon mal einen Blick in die Hilfe geworfen ?
Dort findest du unter Library "alles" was du brauchst .
Was meinst Du denn, was ich mir in den 2 Std angesehen habe ?
Englisch und deutsche Hilfe, das pdf zu 3.20 und auch auf den PB-Sites war ich.
Nope, nix, njente, das alles hilft noch nicht mal als Einstieg, da nirgendwo ein Beispiel/Tutorial, das konkret erklärt, wie man mit den Infos in einer DLL-Hilfe umgeht, um deren Funktionen von PB aus zu nutzen.

Achja, und ich finde einen Textbausteine als Antwort nicht nett und wenig hilfreich.

@spacewalker:
Die Doku zur abcAVI.dll habbich, aber die nützt mir nicht viel, solange ich nicht gebacken bekomme, wie ich die Infos dort in PB-Code umsetze :(

Verfasst: 10.12.2005 01:23
von spacewalker
z.b.:

Code: Alles auswählen

Ergebnis = CallFunction(#Library, FunktionsName$ [,Parameter1 [, Parameter2...]])
Also angenommen du hast eine xy.dll, die funktion abc beinhaltet, mit der ID 1 geöffnet.

Code: Alles auswählen

OpenLibrary(1,"xy.dll")
funktion abc erwartet als parameter einen string und soll ASCII code als byte zurueck geben.

Code: Alles auswählen

b = CallFunction(1, "abc","C")
in der DLL N. 1 wird hiermit due funktion abc mit dem parameter C als string aufgerufen, diese gibt dann einen wert zurueck mit welchem variable b gefuellt wird.

Code: Alles auswählen

Debug b
sollte im falle "C" zahl 67 ergeben

Ich meine ich weiss ja nicht wirklich womit genau du ein problem hast.

P.S.
hast du das demo oder vollversion? ich bilde mir ein dass im demo etwas gesperrt ist, entweder dll benutzung oder erstellung, irgendas von den beiden - solltest du eine demo-version haben, schaue bitte nach

Verfasst: 10.12.2005 03:11
von nicolaus
scholly hat geschrieben: Was meinst Du denn, was ich mir in den 2 Std angesehen habe ?
Englisch und deutsche Hilfe, das pdf zu 3.20 und auch auf den PB-Sites war ich.
Nope, nix, njente, das alles hilft noch nicht mal als Einstieg, da nirgendwo ein Beispiel/Tutorial, das konkret erklärt, wie man mit den Infos in einer DLL-Hilfe umgeht, um deren Funktionen von PB aus zu nutzen.
Das stimmt aber so nicht. Wenn du in der Hilfe mal auf Library gehst und dann in dem rechten teil nach unten scrollst findest du ein beispiel was so aussieht (ist aus der hilfe von PB)

Code: Alles auswählen

If OpenLibrary(0, "USER32.DLL")

  *F = IsFunction(0, "MessageBoxA")
  If *F
    CallFunctionFast(*F, 0, "Body", "Title", 0)
  EndIf
  
  CloseLibrary(0)
EndIf
; ExecutableFormat=Windows
; EOF
Du kannst dir das auch noch mal hier anschauen da ist das Beispiel genauso
http://www.purearea.net/pb/german/manua ... index.html

Verfasst: 10.12.2005 03:29
von Hroudtwolf
Ein schönes Tutorial von Remi_Meier:

http://mypage.bluewin.ch/remimeier/Tutorials.htm

Hülfäää - wie benutze ich eine .dll ?

Verfasst: 10.12.2005 23:13
von scholly
moin, moin...

@spacewalker:
Ich meine ich weiss ja nicht wirklich womit genau du ein problem hast.
Ich will alle Infos aus einem Media-file (avi,mpeg1/2,mp3,ogg,etc...) auslesen uns hab für AVI die abcAVI.dll gefunden. Mangels Tutorial finde ich keinen Einsprung, wie ich lernen kann, deren Funktionen nun vob PB aus zu nutzen.
hast du das demo oder vollversion?
Vollversion :wink:

@nicolaus:
Es tut mir leid, aber aud diesem Codeschnipsel kann ich nicht lernen, wie ich generell eine Fremd-DLL nutze. Selbst wenn ich versuche, das Bespiel mit Hilfe der Win32.hlp nachzuvollziehen, stolpere ich über die Diskrepanz zwischen "MessageBoxA" im Schnipsel und "MessaggeBox/MessageBoxEx" in der WinHelp.

@Hroudtwolf:
jo, das DLL-Tutorial von Remi werd ich wohl als Grundlage nehmen, um die DLL-Nutzung "auf die harte Tour" (Try and Error mit jede Menge letzterem) zu lernen :( .
bis zum nexten mal...
scholly

Verfasst: 10.12.2005 23:26
von Falko
Versuch doch mal die DLL mittels folgendem Tool auszulesen. Damit kannst du den passenden PB-Source generieren.
Da es wegen der unbekannten Variablen alles auf .l setzt musst du noch
wissen bzw. googlen, welche Parameter in den Funktionen wie deklariert sind.

Mir gefällt ts-soft sein Tool sehr gut und ich konnte es schon sehr
gut einsetzen. :allright:

Da hat er endlich was Nützliches gebracht :mrgreen:

[OT]
Hoffentlich kommt später auch mal ein Tool um OCX's von VCC6 nach PB
zu generieren :mrgreen: .
[/OT]

http://www.purearea.net/pb/showcase/download.php?id=247

MfG Falko

Verfasst: 10.12.2005 23:27
von Blackskyliner
Durch "Try & Error" hab ich PB kennengelernt :D ich nenns aber "Learning by Doing" :D und finds nicht verkehrt :D