Witam, moje pytanie brzmi Jakiej funkcji użyć aby pobrać lokalizację programu ?
Chodzi mi oto aby program po włączeniu pobierał swoja lokalizację.
np. Włączam program.exe pobiera on swoją lokalizację np "C:\programy\program.exe" i ja wyświetla.
proszę o pomoc
Pobijasz rekord ilości założonych wątków? Każdy Twój problem można rozwiązać korzystając z dokumentacji, google lub czytając kod i komunikaty błędów ze zrozumieniem, dlaczego ze wszystkim od razu na forum przylatujesz? W C++, używając WINAPI, GetModuleHandle
+ GetModuleFileName
, w C++/CLI Process::GetCurrentProcess()->MainModule->FileName
.
String^ path = ExtractFilePath(ParamStr(0));
Co robię źle?
error:
error C3861: 'ExtractFilePath': identifier not found
error C3861: 'ParamStr': identifier not found
Juz sam nie wiem ;/
Kod nie działa bo jest przeznaczony dla Borland C++ Buildera. Przecież dostałeś odpowiedź, czego nie rozumiesz? Tak trudno wcisnąć F1 albo wstawić po prawej stronie =
?
Próbowałem ale mi nie wychodzi....
Chcę zobaczyć TYLKO PRZYKŁAD PRZYPISANIA SCIEZKI DO ZMIENNEJ.
Przypominam że korzystam z Visual C++ 2010
Pokaż mi przykład przypisania ścieżki programu do zmiennej za pomocą Process::GetCurrentProcess()->MainModule->FileName :)
EDIT:
A tą funkcja by się nie dało?
string file = Application->ExecutablePath;
Gdybyś wcisnął F1 to byś wiedział, że Process znajduje się w przestrzeni nazw System::Diagnostics
.
using namespace System::Diagnostics;
...
String ^fileName = Process::GetCurrentProcess()->MainModule->FileName;
No tak działa ;) Wielkie Dzięki, ale ja chciałem samą ścieżkę bez nazwy pliku.exe ;(
Dasz rade to jakoś szybko zedytować :)
Edit:
Wiesz zamiast scieżki:
"C:\folder1\folder2\programy\program.exe"
chciałbym ścieżkę
"C:\folder1\folder2\programy\"
Wiem, że mogę to wyciąć ale na pewno jest jakaś specjalna funkcja do otrzymywania samej lokalizacji bez exe
Przy uzyciu tego:
String^ fileName = Path::GetDirectoryName(Process::GetCurrentProcess()->MainModule->FileName);(
wywala:
error C2653: 'Path' : is not a class or namespace name
error C3861: 'GetDirectoryName': identifier not found
using namespace System::IO;
patrz do helpa co gdzie leży…
Dzięki ;)