请输入您要查询的百科知识:

 

词条 GetModuleFileName
释义

GetModuleFileName 概述

VB声明

Declare Function GetModuleFileName Lib "kernel32" Alias "GetModuleFileNameA" (ByVal hModule As Long, ByVal lpFileName As String, ByVal nSize As Long) As Long

说明

获取一个已装载模板的完整路径名称

返回值

Long,如执行成功,返回复制到lpFileName的实际字符数量;零表示失败。会设置GetLastError

参数表

参数 类型及说明

hModule Long,一个模块的句柄。可以是一个DLL模块,或者是一个应用程序的实例句柄。如果该参数为NULL,

该函数返回该应用程序全路径。

lpFileName String,指定一个字串缓冲区,要在其中容纳文件的用NULL字符中止的路径名,hModule模块就是从这个文件装载进来的

nSize Long,装载到缓冲区lpFileName的最大字符数量

注解

在Windows 95下,函数会核查应用程序的内部版本号是否为4.0或更大的一个数字。如果是,就返回一个长文件名,否则返回短文件名

原型及各参数解释

DWORD GetModuleFileName(

HMODULE hModule,

LPTSTR lpFilename,

DWORD nSize

);

获得hModule所指的文件的名字,

hModule在LoadLibrary之类的函数会返回,是一个句柄,用来标记这个文件资源。

lpFilename是你存放返回的名字的内存块的指针,是一个输出参数,nSize是这个内存块的大小,用于防止溢出。

返回值是用于指示是否发生错误的。

VC函数

函数原型:

DWORD GetModuleFileName(

HMODULE hModule,

LPTSTR lpFilename,

DWORD nSize

);

函数参数说明:

hModule HMODULE 装载一个程序实例的句柄。如果该参数为NULL,该函数返回该当前应用程序全路径。

lpFileName LPTSTR 是你存放返回的名字的内存块的指针,是一个输出参数

nSize DWORD ,装载到缓冲区lpFileName的最大值

函数返回值:

如果返回为成功,将在lpFileName的缓冲区当中返回相应模块的路径,如果所设的nSize过小,那么返回仅按所设置缓冲区大小返回相应字符串内容。

如果函数失败,返回值将为0,利用GetLastError可获得异常代码。

需要的头文件为:

windows.h

VC源代码

#include <windows.h>

#include <stdio.h>

BOOL CreateSampleService()

{

TCHAR szPath[MAX_PATH];

if( !GetModuleFileName( NULL, szPath, MAX_PATH ) )

{

printf("GetModuleFileName failed (%d)\", GetLastError());

return FALSE;

}

return TRUE;

}

随便看

 

百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。

 

Copyright © 2004-2023 Cnenc.net All Rights Reserved
更新时间:2024/11/16 6:47:09