📄 reg1.prg
字号:
Set Talk off
Clear
DECLARE INTEGER RegOpenKeyEx IN Win32API INTEGER nKey,STRING @cSubKey,;
INTEGERnReserved,INTEGER nAccessMask, INTEGER @nResult
DECLARE INTEGER RegQueryValueEx IN Win32API INTEGER nKey,STRING cValueName,;
INTEGER nReserved, INTEGER @nType,STRING @cBuffer, INTEGER @nBufferSize
DECLARE INTEGER RegCloseKey IN Win32API INTEGER nKey
DECLARE INTEGER GetProfileString IN Win32API AS GetProStr String cSection,;
String cKey, String cDefault,String @cBuffer, Integer nBufferSize
UserName = ""
UserCorp = ""
lnResult = 0
Buffer = SPACE(128)
BufferSize = LEN(Buffer)
IF UPPER(OS()) = "WINDOWS NT" OR UPPER(OS()) = "WINDOWS 4"
lcKey = IIF("NT" $ UPPER(OS()), "Software\Microsoft\WindowsNT\CurrentVersion","Software\Microsoft\Windows\CurrentVersion")
lnError = RegOpenKeyEx(-2147483646, "Software\Microsoft\Windows\CurrentVersion", 0, 1, @lnResult)
* lnError = RegQueryValueEx(lnResult, "PATH", lnReserved, ;
* @lnType, @lcBuffer, @lnBufferSize)
IF lnError = 0
LnType = 0
Buffer = SPACE(128)
BufferSize = LEN(Buffer)
LnError = RegQueryValueEx(lnresult, "Registeredowner",;
0, @lnType, @Buffer, @BufferSize)
IF lnError = 0 AND Buffer <> CHR(0)
UserName = LEFT(Buffer, BufferSize - 1)
ENDIF
lnType = 0
Buffer = SPACE(128)
BufferSize = LEN(Buffer)
lnError = RegQueryValueEx(lnresult, "RegisteredOrganization", 0, @lnType,;
@Buffer, @BufferSize)
IF lnError = 0 AND Buffer <> CHR(0)
UserCorp = LEFT(Buffer, BufferSize - 1)
ENDIF
ENDIF
=RegCloseKey(lnResult)
ELSE
RetVal = GetProStr("MS USER INFO", "DEFNAME", "",@Buffer, BufferSize)
UserName = LEFT(Buffer, RetVal)
RetVal = GetProStr("MS USER INFO", "DEFCOMPANY", "", @Buffer, BufferSize)
UserCorp = LEFT(Buffer, RetVal)
ENDIF
@ 10 ,10 SAY "用户姓名:" + UserName
@ 12 ,10 SAY "用户单位:"+ UserCorp
Set Talk On
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -