Я использую boost, чтобы создать каталог для размещения временных файлов.
int main( int argc, char* argv[] )
{
std::cout << "Current Dir: " << argv[0] << std::endl;
boost::filesystem::create_directories( "TempFolder" );
return 0;
}
Теперь, если дважды щелкнуть исполняемый файл, папка «TempFolder» будет создана в том же каталоге, что и исполняемый файл, что я ожидаю. Однако, если я сейчас перетащу файл на исполняемый файл, папка будет создана в "C: \ Documents and Settings \ 0xC0DEFACE" , чего я, конечно, не ожидал.
Видя, что мое приложение не изменилось, и распечатанный каталог не изменился, и мое приложение в настоящее время игнорирует пропущенные строки, почему папка теперь создается в новом каталоге?
Я использую Windows XP с VS9 и использую Boost 1,39.