Skocz do zawartości

Zablokowane [C++] Ścieżka pliku


Dragon

Rekomendowane odpowiedzi

Więc tak, mam taki o to kod:

#include <iostream>
#include <shlobj.h>
using namespace std;

int main()
{   
    LPITEMIDLIST pidl;
    LPMALLOC     pShellMalloc;
    char         Dir[MAX_PATH];
    if (SUCCEEDED(SHGetMalloc(&pShellMalloc)))
        if (SUCCEEDED(SHGetSpecialFolderLocation(NULL, CSIDL_APPDATA, &pidl)))
        {
            if (SHGetPathFromIDList(pidl, Dir))
                cout << Dir << endl;
                CopyFile(Dir"\\blalb\\plik.txt", "miejsce gdzie ma byc skopiowany", true);
            pShellMalloc->Free(pidl);
        }
    pShellMalloc->Release();    
    system("pause>nul");
}

 

Chodzi o to, żeby mi samo napisało ścieżke do Dan Aplikacji użytkownika, żeby pewien plik skopiować, ale chcę jeszcze coś do tego dodać. Tzn. bo kod mi już wyszukuje to: C:/Documents and Settings/Paweł/Dane aplikacji tylko że ja np. chce jeszcze cos do tego dodać, np. C:/Documents and Settings/Paweł/Dane aplikacji/EA Games. Chce użyć do tego funkcji copy file, ale nie wiem co mam wpisać. Daje CopyFile(Dir + "\\blalb\\plik.txt", "miejsce gdzie ma byc skopiowany", true);, daje kurde "Dir + ścieżka", "Dir ścieżka", po prostu padam już.

Odnośnik do komentarza
Udostępnij na innych stronach

#include <iostream>
#include <shlobj.h>
#include <string.h>
using namespace std;

int main()
{  
    LPITEMIDLIST pidl;
    LPMALLOC     pShellMalloc;
    char         Dir[MAX_PATH];
    if (SUCCEEDED(SHGetMalloc(&pShellMalloc)))
        if (SUCCEEDED(SHGetSpecialFolderLocation(NULL, CSIDL_APPDATA, &pidl)))
        {
            if (SHGetPathFromIDList(pidl, Dir))
                cout << Dir << endl;
                string temp = Dir;
                temp += "\\blalb\\plik.txt";
                CopyFile(temp.c_str(), "miejsce gdzie ma byc skopiowany", true);
            pShellMalloc->Free(pidl);
        }
    pShellMalloc->Release();    
    system("pause>nul");
}

Odnośnik do komentarza
Udostępnij na innych stronach

po include string daj:

using namespace std;

 

a potem pierw dajesz obiekt string temp = Dir, a nastepnie temp += "plik.txt"

poprawilem w przykladzie.

 

btw. szybciej pobrac zmienna srodowiskowa tak: http://msdn.microsoft.com/en-us/library/ms...28VS.85%29.aspx

Odnośnik do komentarza
Udostępnij na innych stronach

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...