This source file includes following definitions.
- GetLocalUsrName
- GetLocalPCName
- GetLocalUsrInfo
- OnNT
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 #pragma once
22
23 #define VC_EXTRALEAN
24 #include<winbase.h>
25
26 #include<lmcons.h>
27
28 namespace jmmcg { namespace NTUtils {
29
30 inline jmmcg::tstring __fastcall GetLocalUsrName(void) {
31 register jmmcg::tchar tmp[UNLEN+1];
32 register unsigned long size=sizeof(tmp)/sizeof(jmmcg::tchar);
33 ::GetUserName(tmp,&size);
34 assert(tmp && size);
35 return tmp;
36 }
37
38 inline jmmcg::tstring __fastcall GetLocalPCName(void) {
39 register jmmcg::tchar tmp[MAX_COMPUTERNAME_LENGTH+1];
40 register unsigned long size=sizeof(tmp)/sizeof(jmmcg::tchar);
41 ::GetComputerName(tmp,&size);
42 assert(tmp && size);
43 return tmp;
44 }
45
46 inline void __fastcall GetLocalUsrInfo(jmmcg::tstring &unc,jmmcg::tstring &user) {
47 unc=GetLocalPCName();
48 user=GetLocalUsrName();
49 }
50
51 inline bool __fastcall OnNT(void) noexcept(true) {
52 register OSVERSIONINFO osinfo;
53 osinfo.dwOSVersionInfoSize=sizeof(OSVERSIONINFO);
54 return ::GetVersionEx(&osinfo) && osinfo.dwPlatformId==VER_PLATFORM_WIN32_NT;
55 }
56
57 } }