Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Нужно определить каталог запуска программы / 3 сообщений из 3, страница 1 из 1
09.10.2017, 23:32
    #39533714
polin11
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужно определить каталог запуска программы
Вариант 1
Все работает, если в пути нет русских букв
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
string getDir()
{
	char* buffer = new char[MAX_PATH];
	GetCurrentDirectoryA(MAX_PATH, buffer);
	CharToOemA(buffer, buffer);
	return (string)buffer;
}



Вариант 2
Все работает, даже если в пути есть русские буквы
Выделить глобальную переменную (атрибут для класса) runDirectory, которая доступна в разных функциях (методах класса)
присвоить runDirectory=(string)argv[0]

Вопрос можно ли обойтись без выделения отдельной переменной для решения задачи?
...
Рейтинг: 0 / 0
10.10.2017, 00:18
    #39533727
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужно определить каталог запуска программы
polin11Все работает, если в пути нет русских букв

Вот только каталог запуска и текущий каталог - две разные вещи. GetCurrentDirectory
возвращает вторую, argv[0] - чаще всего первую, но не всегда.

Первая процедура (если не считать утечки памяти и пары опечаток) вполне работоспособна. По
крайней мере у меня она вполне нормально выводит текущий каталог даже если в нём есть
русские буквы. Вот если в текущем каталоге буквы не из ANSI - тогда да, проблема.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
10.10.2017, 05:12
    #39533746
CEMb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужно определить каталог запуска программы
GetModuleFileName(nullptr, ...) возвращает имя запущенного файла вместе с путём. Если отсечь имя, получится путь.
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Нужно определить каталог запуска программы / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]