write_reg_pw.prg

来自「功能模块:报关操作,运输操作,报关查询,运输查询」· PRG 代码 · 共 53 行

PRG
53
字号
func write_reg_pw
para new_password,isManage
*开启机码
DECLARE INTEGER RegOpenKey IN Win32API INTEGER nHKey,STRING cSubKey, INTEGER @nHandle
*建立机码
DECLARE INTEGER RegCreateKey  IN Win32API  INTEGER nHKey,STRING cSubKey, INTEGER @nHandle
*关闭开启的机码
DECLARE INTEGER RegCloseKey  IN Win32API  INTEGER nHKey
*删除机码
DECLARE INTEGER RegDeleteKey IN Win32API  INTEGER nHKEY,STRING cSubkey
*删除某一机码下的值
DECLARE INTEGER RegDeleteValue IN Win32API INTEGER nHKEY,STRING cEntry

#DEFINE HKEY_CLASSES_ROOT       -2147483648
#DEFINE HKEY_CURRENT_USER       -2147483647
#DEFINE HKEY_LOCAL_MACHINE      -2147483646
#DEFINE HKEY_USERS              -2147483645
#DEFINE ERROR_SUCCESS            0

if isManage
	retu WriteRegistryString(HKEY_LOCAL_MACHINE,"SOFTWARE\红虎工作室\yzkh","sapw",new_password)
else
	retu WriteRegistryString(HKEY_LOCAL_MACHINE,"SOFTWARE\红虎工作室\yzkh","khpw",new_password)
endif
*************************************************************** 
*写入字串值 WriteRegistryString *** 传回值:.T.成功,.NULL.失败 
*************************************************************** 
FUNCTION WriteRegistryString
LPARAMETERS HKey, Subkey, Entry, Value 
LOCAL nHandle, nResult, nSize, cDataBuffer, nType 
nHandle=0
nResult=RegOpenKey(HKey,SubKey,@nHandle)

IF nResult#ERROR_SUCCESS 
   RETURN .NULL. 
ENDIF 

DECLARE INTEGER RegSetValueEx IN Win32API ;
INTEGER nHKey, STRING lpszEntry,INTEGER dwReserved, INTEGER fdwType, STRING lpbData, INTEGER cbData 
* fdwType 键类型 : 
*         0 - 二进制类型
*         1 - 字符型
nSize=LEN(Value)
nResult=RegSetValueEx(nHandle,Entry,0,0,Value,nSize)
=RegCloseKey(nHandle)

IF nResult#ERROR_SUCCESS
   RETURN .NULL. 
ENDIF 

RETURN .T. 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?