1.linux
#include<unistd.h>
char *getcwd(char *buf,size_t size);
2.windows
函数原型:
DWORDGetModuleFileName(
HMODULE hModule, //装载一个程序实例的句柄。如果该参数为NULL,该函数返回该当前应用程序全路径。
LPTSTR lpFilename, //是你存放返回的名字的内存块的指针,是一个输出参数
DWORD nSize //装载到缓冲区lpFileName的最大值
);
//demo
#include <windows.h>
#include <stdio.h>
BOOL CreateSampleService()
{
TCHAR szPath[MAX_PATH];
if( !GetModuleFileName( NULL, szPath, MAX_PATH ) )
{
printf("GetModuleFileName failed (%d)\n", GetLastError());
return FALSE;
}
return TRUE;
}
/*
如果想获得某个正在运行的EXE或者DLL的全路径可以这样写代码
GetModuleFileNameEx(hProcess,hInst,lpFile,MAX_PATH);
*/