• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Tworzenie wszystkich folderów w ścieżce.

Object Storage Arubacloud
0 głosów
428 wizyt
pytanie zadane 4 lutego 2018 w C i C++ przez jveaster Początkujący (440 p.)
Mam pewne durne pytanie. Jak stworzyć scieżkę do katalogu, np. %APPDATA%\\1\\2\\1\\3\\8\\1? Zawsze byłem pewien że jak stworzę plik przez fstream do nieistniejącego katalogu to fstream stworzy katalog, a tu okazuje się że jednak tak nie jest...

2 odpowiedzi

+1 głos
odpowiedź 4 lutego 2018 przez niezalogowany
Stworzy nieistniejący plik, a nie katalog ;)

Patrz: http://en.cppreference.com/w/cpp/experimental/fs/create_directory
komentarz 5 lutego 2018 przez jveaster Początkujący (440 p.)

Moje środowisko przekonuje mnie że nie ma funkcji std::experimental::filesystem::create_directory() (tak samo jak z SHCreateDirectoryEx)... Następną aplikację będę pisał w czymś innym, ale tą już muszę w tym skończyć, sama końcówka. Jest jakaś inna funkcja?

+1 głos
odpowiedź 4 lutego 2018 przez j23 Mędrzec (194,920 p.)

ExpandEnvironmentStrings() i SHCreateDirectoryEx().

 

komentarz 5 lutego 2018 przez j23 Mędrzec (194,920 p.)

Te same problemy miałbyś w innych środowiskach. Problem z C++ Builderem jest między innymi taki, że ludzie używają starych kilkunastoletnich wersji tego środowiska, które nie wspierają nowych standardów C++.

 

Wracając do tematu: musisz dodać bibliotekę shell32.lib do projektu. Nie pamiętam, gdzie w opcjach projektu dodaje się biblioteki, ale wiem, że w BCB można było dodawać biblioteki z poziomu kodu. Daj w którymś pliku .cpp:


#pragma link "shell32.lib"
komentarz 5 lutego 2018 przez jveaster Początkujący (440 p.)
edycja 5 lutego 2018 przez jveaster
Dodałem już, ta opcja jest w zakładce project. Nic to nie dało oczywiście.
komentarz 5 lutego 2018 przez j23 Mędrzec (194,920 p.)

No to nie wiem. Według dokumentacji ta funkcja jest dostępna od WinXP, zatem przy założeniu, że korzystasz z C++ Buildera 6, wszystko powinno się kompilować/konsolidować bez problemu. Zawsze możesz sobie napisać funkcję, która "tworzy" ścieżkę wykorzystując do tego CreateDirectory().

 

 

komentarz 5 lutego 2018 przez jveaster Początkujący (440 p.)
Mam C++ Builder 9, wydawało się lepsze. Dzięki za pomoc, spróbuję.
1
komentarz 5 lutego 2018 przez j23 Mędrzec (194,920 p.)
Pewnie lepsze od szóstki, ale i tak nie wspiera standardu C++11/C++14, czyli jest to środowisko z poprzedniej epoki.

Podobne pytania

0 głosów
1 odpowiedź 303 wizyt
0 głosów
1 odpowiedź 648 wizyt
0 głosów
2 odpowiedzi 529 wizyt
pytanie zadane 7 czerwca 2017 w C i C++ przez teusiek Początkujący (280 p.)

92,555 zapytań

141,403 odpowiedzi

319,557 komentarzy

61,940 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...