Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Bibliothek in Unterordner

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Bibliotheken
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Type



Anmeldungsdatum: 24.02.2006
Beiträge: 187
Wohnort: Dresden

BeitragVerfasst am: 31.03.2011, 08:48    Titel: Bibliothek in Unterordner Antworten mit Zitat

Hallo Leute,

ist vielleicht ne dämliche Frage, aber wie kann ich eine *.dll in mein Programm laden, wenn sie sich in einem Unterordner (also nicht im Programmverzeichnis) befindet.

Ich habs bereits mit #inclib "[pfad]\[datei]" und #libpfad "[pfad]" versucht, wobei [pfad] einmal der relative und der absolute Pfad war...

Aber entweder wird die Bibliothek oder der Pfad nicht gefunden.
Mach ich irgendwas falsch?

MfG Type
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4594
Wohnort: ~/

BeitragVerfasst am: 31.03.2011, 11:27    Titel: Re: Bibliothek in Unterordner Antworten mit Zitat

Type hat Folgendes geschrieben:
[...] #libpfad "[pfad]" [...]

#libpath hoffentlich?
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Type



Anmeldungsdatum: 24.02.2006
Beiträge: 187
Wohnort: Dresden

BeitragVerfasst am: 31.03.2011, 13:43    Titel: Antworten mit Zitat

ups... - ja natürlich zwinkern
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4594
Wohnort: ~/

BeitragVerfasst am: 31.03.2011, 14:31    Titel: Antworten mit Zitat

Unter Linux habe ich eine zusätzlich mitgelieferte .so-Datei eingebunden, indem ich ein Startscript mit dem Aufruf
Code:
export LD_LIBRARY_PATH="./bibliotheksordner"
./programmname

beigelegt habe. Unter Windows habe ich das nicht getestet, könnte so ähnlich aber vielleicht auch klappen.
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 31.03.2011, 15:56    Titel: Antworten mit Zitat

SetDllDirectory()
http://msdn.microsoft.com/en-us/library/ms686203(v=vs.85).aspx
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 01.04.2011, 18:31    Titel: Antworten mit Zitat

Oh seh grad die andere Interpretationsmöglichkeit der Frage.
Nun, da könnte dir vll. das hier weiterhelfen -> http://msdn.microsoft.com/en-us/library/d91k01sh(v=vs.80).aspx
Ich weiß allerdings nicht, ob im LIBRARY-Statement Pfadangaben erlaubt sind.

Alternativ kannst du auch die Importtabelle der Binary umpatchen; das dürfte mit CFFExplorer gehen...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Type



Anmeldungsdatum: 24.02.2006
Beiträge: 187
Wohnort: Dresden

BeitragVerfasst am: 05.04.2011, 19:05    Titel: Antworten mit Zitat

Sorry erstmal, dass ich erst jetzt antworte.

Das sieht ja alles ganz schön kompliziert aus. Wozu gibt es denn dann libpath!?
Naja, wie dem auch sei, ich strebe eigentlich eine Plattform unabhängige Lösung des Problems an...

Kann ich nicht in meinem Programm einfach sagen: suche dll Sowieso unter folgendem Pfad: ...

Wie sieht das eigentlich dem "festen einbinden" der DLL aus?

MfG Type
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 05.04.2011, 19:49    Titel: Antworten mit Zitat

Type hat Folgendes geschrieben:
Wozu gibt es denn dann libpath!?


An der Raute zu erkennen, ist libpath ein Metabefehl, der vom Präprozessor verarbeitet wird. libpath sagt dem Compiler wo er zu suchen hat, nicht dem Programm!
Generell kannst du dir merken, dass Befehle mit einer Raute vornedran niemals im endgültigen Programm landen werden, sondern nur als Anweisungen an den Compiler dienen.
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Bibliotheken Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz