GetModuleName - C++ Builder

C++ Builder 参考手册 ➙ System::Sysutils ➙ GetModuleName


根据实例句柄获取文件名

头文件:#include
命名空间:System::Sysutils
函数原型:

System::UnicodeString __fastcall GetModuleName(System::NativeUInt Module);

参数:

  • Module:实例句柄;

返回值:

  • 完整的路径和文件名;
  • 在 Windows 里面通过调用 API 函数 GetModuleFileName 实现,Module 参数是 HINSTANCE 或 LoadLibrary 返回的句柄,如果参数为 NULL 返回的是当前 exe 的完整路径和文件名,或者调用这个 dll 的 exe 文件的完整路径和文件名;
  • 在其他操作系统里面与调用方式有关,有可能返回的不是完整路径,也可能失败,返回空字符串。

例如:

UnicodeString s = Sysutils::GetModuleName((System::NativeUInt)Sysinit::HInstance);

如果这段代码在 exe 里面,得到的是 exe 的完整路径和文件名;
如果这段代码在 dll 里面,得到的是 dll 的完整路径和文件名。


相关:

  • Sysinit::HInstance
  • Sysinit
  • System::Sysutils::GetEnvironmentVariable
  • System::Sysutils::GetCurrentDir
  • System::Sysutils
  • Vcl::Forms::TApplication::ExeName
  • Vcl::Forms
  • _argc
  • _argv, _targv, _wargv
  • environ, _environ, _tenviron, _wenviron

C++ Builder 参考手册 ➙ System::Sysutils ➙ GetModuleName

你可能感兴趣的:(GetModuleName - C++ Builder)