ssssss-94 Temat założony przez niniejszego użytkownika |
Otwarcie pliki w Appdata » 2013-12-04 17:03:15 Mam pewien problem, mianowicie potrzebuje w c++ otworzyć plik ktory zajduje sie w folderze appdata\.minecraft\core.exe Tutaj zapisuje Sciezke folderu AppData aktywnego użytkownika char AppDataFolder[ MAX_PATH ]; SHGetFolderPathA( 0, CSIDL_APPDATA, 0, SHGFP_TYPE_DEFAULT, AppDataFolder );
Jak można wykorzystać tą zmienna AppDataFolder aby moc skorzystac z jej potfolderow? np w ten sposob: AppDataFolder/.minecraft/core.exe(otworzyc ten plik) I dodatkowo jak otworzyc taki folder? system( "explorer "Co w takim razie tutaj podac" ); |
|
pekfos |
» 2013-12-04 17:08:37 |
|
ssssss-94 Temat założony przez niniejszego użytkownika |
Dalej :-) » 2013-12-04 20:46:34 Tworzy sie sciezka: std::string core; core = std::string( AppDataFolder ); core = std::string( AppDataFolder ) + std::string( "\\.minecraft\\" ); std::cout << core; system( "explorer core" ); Wypisuje sie poprawna sciezka (taka jak u mnie na komputerze), ale otwieraja sie moje dokumenty. A potrzebuje dostac sie do AppData... Juz nie wiem co robic. |
|
Adik80 |
» 2013-12-05 12:33:52 system( "explorer " + core );
|
|
pekfos |
» 2013-12-05 13:36:09 system( "explorer " + core );
|
I c_str(). system( "explorer core" );
|
Zakładasz, że kompilator jest inteligentniejszy od Ciebie? W każdym języku, który umożliwia takie coś (C++ akurat nie umożliwia), nazwę zmiennej trzeba oznaczyć. Inaczej, jak w tym przypadku, będzie to dosłownie to, co jest napisane. |
|
ssssss-94 Temat założony przez niniejszego użytkownika |
» 2013-12-05 14:49:58 Pisałem juz tak wczesniej, wyswietla mi blad, ze nie da sie przekonwertowac tego do char cannot convert parameter 1 from 'std::basic_string<_Elem,_Traits,_Ax>' to 'const char *' Najpierw miałem zmienna char, ktora przechowywała adres AppData. Aby móc dodać do niej \.minecraft\ musiałem zmienic na string, niestety spowrotem nie da sie zmienic na char bo to: char core2[ MAX_PATH ]; core2 = char( core );
^nie działa |
|
pekfos |
» 2013-12-05 14:58:10 niestety spowrotem nie da sie zmienic |
|
|
ssssss-94 Temat założony przez niniejszego użytkownika |
» 2013-12-05 15:48:37 std::string core; core = std::string( AppDataFolder ); core = std::string( AppDataFolder ) + std::string( "\\.minecraft\\" ); std::cout << core; system( "explorer" + core.c_str() ); Otrzymuje error C2110: '+' : cannot add two pointers co jeszcze potrzebuje zrobic? |
|
« 1 » 2 |