Як дізнатися ім'я файлу який запущений на c »пізнавальний блог

Як дізнатися ім'я файлу який запущений на 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 з повним шляхом до самого себе.

Схожі статті