在 Native C++ 中,如何获取当前进程名称和日期时间。我不是 C++ 程序员。
在 C# 中,这样做非常简单:
进程名称:
Process.GetCurrentProcess().ProcessName
约会时间:
DateTime.Now.ToString("yyyy-MM-dd_HH.mm.ss.ff")
如何在 C++ 本机中检索它们?
在 Native C++ 中,如何获取当前进程名称和日期时间。我不是 C++ 程序员。
在 C# 中,这样做非常简单:
进程名称:
Process.GetCurrentProcess().ProcessName
约会时间:
DateTime.Now.ToString("yyyy-MM-dd_HH.mm.ss.ff")
如何在 C++ 本机中检索它们?
获取系统时间
句法
void WINAPI GetSystemTime(
__out LPSYSTEMTIME lpSystemTime
);
参数: lpSystemTime [out]
指向 SYSTEMTIME 结构的指针,用于接收当前系统日期和时间。lpSystemTime 参数不能为 NULL。使用 NULL 将导致访问冲突。
返回值:此函数不返回值或提供扩展的错误信息。
备注:要设置当前系统日期和时间,请使用 SetSystemTime 函数。
要求:支持的最低客户端 Windows 2000 Professional
最低支持服务器: Windows 2000 Server
头文件: Winbase.h(包括 Windows.h)
库: Kernel32.lib
DLL: Kernel32.dll
http://msdn.microsoft.com/en-us/library/windows/desktop/ms724390(v=vs.85).aspx
对于进程名称:
要获取当前进程的名称,您可以使用GetModuleFileName()
:
char exe_path[MAX_PATH];
GetModuleFileName(NULL, exe_path, MAX_PATH);
然后,您可以提取exe_path
最后一个\
字符之后的部分。
要获取当前时间,您可以使用std::time()
.
进程名称:
char name[256];
GetProcessImageFileName(GetCurrentProcess(),name,256);
您也可以从命令行参数中获取它
对于日期,请使用 time.h 中的 localtime(),例如这里