Я пытаюсь установить конкретный каталог для моего кода, который является проектом MFC. Был написан код для диалога (в visual studio C++), и теперь я собираюсь использовать .exe-файл этого кода в другой ОС и заменить этот файл в той директории, которую я хочу. Для того, чтобы прийти к этой цели, я использовал GetModuleFileName function.Therefore, следуя these предложения я включил этот кусок кода для OnInitDialog() функции моего кода:Как установить каталог для исполняемого файла для разных операционных систем?
//function that gets the directory without the file name:
TCHAR szFilePath[_MAX_PATH];
TCHAR driveLetter[3];
TCHAR directory[MAX_PATH];
TCHAR FinalPath[MAX_PATH];
::GetModuleFileName(NULL, szFilePath, _MAX_PATH);//Retrieves the current directory for the current process.
// Add all the files and directories in the windows directory.
//VERIFY(0 < ::GetWindowsDirectory(lpszWinPath, MAX_PATH));
// Make the windows directory the current directory.
::GetCurrentDirectory(MAX_PATH, lpszOldPath);
//::SetCurrentDirectory(lpszWinPath);
::SetCurrentDirectory("C:\\Program Files");
Однако, теперь я не получаю сообщение об ошибке но я не знаю, почему я не вижу выхода. В качестве примера я ожидаю, что будет создан файл .exe в указанном каталоге.
Что вы делаете в каталоге Windows? – MSalters
Да, Пропущено из кода – Braian
«Я не знаю, почему я не вижу никакого вывода»: это потому, что ваш код, как предусмотрено, не генерирует выход. –