Познавательный блог Мобильная врсия

Страницы

Промо

Как узнать имя файла который запущен на C++

Как узнать имя файла который запущен на C++. Для того чтобы узнать полный путь имя самого себя, будем использовать функцию GetModuleFileName.

Функция GetModuleFileName извлекает полный путь доступа к файлу, содержащему указанный модуль, которым владеет текущий процесс.

GetModuleFileName работает только с модулями, которыми владеет текущий процесс. Чтобы определить модули, которые принадлежат другому процессу, используют функцию GetModuleFileNameEx.

DWORD GetModuleFileName(
HMODULE hModule,
LPTSTR lpFilename,
DWORD nSize
);

Если функция завершается успешно, возвращаемое значение - длина строки, которая копируется в буфер, в TCHARs. Если буфер является слишком маленьким, чтобы вместить имя модули, строка обрезается до величины nSize, а функция возвращает значение nSize.

hModule — Дескриптор модуля, путь к которому требуется. Если этот параметр - ПУСТО (NULL), GetModuleFileName извлекает путь к исполняемому файлу текущего процесса.В нашем случае используем hInstance.

Код:

#include "windows.h"
int APIENTRY WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow)
{
char buffer[MAX_PATH];
GetModuleFileName(hInstance,buffer,MAX_PATH);
MessageBox(NULL,buffer,"My_Name",NULL);
return 0;
}

В результате получаем MessageBox с полным путем к самому себе.

Комментарии

Комментарий от Анастасия [ 21 февраля, 2016, 14:53 ]

Спасибо огромное. То, что искала!

Написать комментарий








Поиск по сайту

Статистика

Мета

  Разработка и дизайн — StvPromo.ru