Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » DLL Path ATL

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
31.10.2005, 19:53 Uhr
~iBOT
Gast


Hi alle zusammen,
Ich habe mir eine schöne Typelibrary gebastelt. Diese läßt sich auch wunderbar regestrieren. Leider ist das Verzeichnis der dll variabel. Wie kann die dll das verzeichnis von sich selber zur laufzeit ermitteln?
Danke für eure hilfe!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
31.10.2005, 20:07 Uhr
Bruder Leif
dances with systems
(Operator)


Moin!

Such mal in der API-Referenz nach GetCurrentDirectory() (oder som habs grad nicht zur Hand)...
--
Mit 40 Fieber sitzt man nicht mehr vor dem PC.
Man liegt im Bett.
Mit dem Notebook.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
01.11.2005, 09:05 Uhr
~iBOT
Gast


Ich hatte schon eine ähnliche Function ausprobiert. Das problem ist nur, dass ich das verzeichnis des Progrmas welches die dll aufruft bekomme. Aber nicht das verzeichnis der dll selber. Noch eine Idee?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
01.11.2005, 16:03 Uhr
Uwe
C/C++ Master
(Administrator)


Hallo,
IMO wird das nicht funktionieren. Wenn Du z.B. mit LoadLibrary die dll einbindest, kannst Du aus der dll, mit GetModuleFileNameEx(...) den Path auslesen. Aber die dll kann ohne Aufrufer ja nicht selbständig agieren. Was funzen könnte, ist ein eigenes Setup für die dll, welches irgendwo den Path hinterlegt. Oder hab ich da etwas falsch verstanden?
--
"Es ist schwierig, ein Programm wirklich idiotensicher zu machen, weil Idioten so genial sind."

Bis dann...
Uwe
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
01.11.2005, 16:29 Uhr
~iBOT
Gast


Ich glaube du hast mich verstanden. Ich will das Problem aber mal erklären:
Ich starte aus der DLL (die von einem Script/Programm was auch immmer benutzt wird), eine comandozeilen exe. DLL --->startet exe. Jetzt will ich für die exe die gestartet wird aber nirgenwo im code nen festen pfad schreiben, sondern habe die Regel das die exe immer im verzeichnis der dll liegt. Dafür brauche ich jetzt aber für den afruf der exe das Verzeichnis der dll. Woher bekomme ich das?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
01.11.2005, 19:28 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


GetModuleFileName, dann als Modul entweder das von der exe nehmen (liegt ja im dll-dir) oder eben erst mit LoadLibrary die dll laden und dann freigeben, im endeffekt kommts aufs gleiche raus
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
02.11.2005, 16:35 Uhr
~iBOT
Gast


Entweder ich bin bekloppt oder ihr versteht mich nicht richtig oder ich mache etwas falsch! Also ich möchte in der DLL wissen wo Sie selber liegt!
@flosoft
Das script welches meine KOmponente Aufruft kann liegen wo es will! Das interessiert mich nicht. Die exe die im Ordner der dll Liegt möchte ich mit der DLL aufrufen.Das geht aber nur wenn ich den Pfad der DLL bekomme! GetModuleFileName gibt mir den Pfad des Programms zurück welches die dll Aufruft. Oder meinst du ich sollte in der Dll , die dll nochmal laden um dan den Pfad zu bekommen? Das muß doch anders gehen oder?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
02.11.2005, 16:49 Uhr
Spacelord
Hoffnungsloser Fall


Wenn irgendein Prozess deine Dll benutzt kannst du mit EnumProcessModules die Handles aller benutzen Module erlangen.Wenn dein "Script" also die Dll benutzt bekommst du über den Prozess des Skriptes das Handle der Dll und dann mit GetModuleFileName den genauen Pfad der Dll....

MfG Spacelord
--
.....Ich mach jetzt nämlich mein Jodeldiplom.Dann hab ich endlich was Eigenes.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
02.11.2005, 16:52 Uhr
~iBOT
Gast


Danke! Jetzt hab auch ich es verstanden! Das wollte ich wissen! Nochmal danke an alle beteiligten!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: