ExtractFilePath bei ActiveX Anwendung
Hallo,
eigentlich dachte ich es mir ganz einfach - bei meinem Programm kann es passieren, dass ich das "eigene" Verzeichnis, sprich das, in dem meine .exe steht, weitergeben muss. Sofern ich mein Progrgramm als normale .exe starte, liefern
Delphi-Quellcode:
"normale" Werte, wie
ExtractFilePath(Application.ExeName);
bzw. ExpandUNCFileName(Application.ExeName); \\server\Programmierung\Formularanwendung\Anwendun g.exe und X:\Programmierung\Formularanwendung\ Sobald ich aber die selbe Funktion via ActiveX starte, werden mir an dieser Stelle die Pfade verkürzt dargestellt, wie X:\PROGRA~1\FO06FC~1\ und \\server\PROGRA~1\FO06FC~1\Anwendung.exe Gibt es eine Funktion, die das Gegenteil von ExtractShortPathName macht bzw. hat jemand einen Tipp, wie ich sonst zu meinen Pfaden in der richtigen Schreibweise komme? Danke schon mal Thomasch |
Re: ExtractFilePath bei ActiveX Anwendung
Probier mal GetLongPathName.
|
Re: ExtractFilePath bei ActiveX Anwendung
Hallo,
danke für den Tipp, nur steht hier, dass die Funktion wohl nicht unter VCL implementiert ist. Ich habe mir mal kurz GetFullPathName angesehen, scheitere da aber momentan an der Umwandlung der Zeichenkettentypen. Thomasch |
Re: ExtractFilePath bei ActiveX Anwendung
Application.ExeName greift auf ParamStr(0) zu.
ParamStr(0) greift auf GetModuleFilename (<- Win32-API) zu. Das Problem ist GetModuleFilename. Zitat:
Code:
Es hängt also von der Windows-Version ab.
Windows Me/98/95: This function retrieves long file names when an application version number is greater than or equal to 4.00 and the long file name is available. Otherwise, it returns only 8.3 format file names.
|
Re: ExtractFilePath bei ActiveX Anwendung
:gruebel: Verstehe ich jetzt nicht - es ist doch letztendlich die selbe Funktion, die ich auf dem selben Rechner ausführe...
|
Re: ExtractFilePath bei ActiveX Anwendung (gelöst)
Hallo,
das Problem hat sich erledigt. Im Delphi-Forum fand ich eine Lösung, die funktioniert - jetzt muss ich nur noch herausfinden, was genau da gemacht wird :mrgreen: Viele Grüße Thomasch |
Re: ExtractFilePath bei ActiveX Anwendung
Zitat:
http://support.microsoft.com/default...b;en-us;228469 auf "deutsch": GetModuleFilename baut Mist, wenn es aus einem fremden Caller-Prozess aufgerufen wird. Muss man GetModuleFileNameEx nehmen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:27 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz