当前位置:首页
开发技术指南» 文章正文
    引言:

 ·大家推荐个太阳镜    »显示摘要«
    摘要: 夏天到了,天气热了,阳光毒了,一圈人都戴上了太阳镜,打击给推荐些好的牌子,我还是学生,没什么money,所以不要给我说什么ray-ban或gucci之类的~~谢谢大家~~ ......
    摘要: 在网上搜索过,,却找不到我这个蓝屏代码的解释,又急着装机,所以在这先发问了,谢回复 系统也重装了(并且换过系统),硬盘也换过了,但总是运行时蓝屏,, 装过xp,,win98,,这两个系统,,开机能进入桌面,,但运行不到5分钟,,就会蓝屏死机,不知道为什么,希望有朋友能给点答案,谢谢了 部分蓝屏代码 a fatal exception oe has occurred at 0028:c004......


关于注册表

请教高手:如何读取注册表!!谢谢

NO.1   作者: yyhzpk

RegOpenKeyEx(HKEY_CURRENT_USER,sKeyName,NULL,KEY_QUERY_VALUE,&p1);  
  RegQueryValueEx(p1,   QOPTION_THUMB,   NULL,&dwType,(LPBYTE)&pOption->wThumbnailSize,&dwType);  
 

NO.2   作者: HotUs

Private   Type   FILETIME  
                  dwLowDateTime   As   Long  
                  dwHighDateTime   As   Long  
  End   Type  
  Public   Type   SECURITY_ATTRIBUTES  
      nLength   As   Long  
      lpSecurityDescriptor   As   Long  
      bInheritHandle   As   Boolean  
  End   Type  
   
  Private   Declare   Function   RegEnumValue   Lib   "advapi32.dll"   Alias   "RegEnumValueA"   (ByVal   hkey   As   Long,   ByVal   dwIndex   As   Long,   ByVal   lpValueName   As   String,   lpcbValueName   As   Long,   lpReserved   As   Long,   lpType   As   Long,   lpData   As   Byte,   lpcbData   As   Long)   As   Long  
  Private   Declare   Function   RegEnumKeyEx   Lib   "advapi32.dll"   Alias   "RegEnumKeyExA"   (ByVal   hkey   As   Long,   ByVal   dwIndex   As   Long,   ByVal   lpName   As   String,   lpcbName   As   Long,   ByVal   lpReserved   As   Long,   ByVal   lpClass   As   String,   lpcbClass   As   Long,   lpftLastWriteTime   As   FILETIME)   As   Long  
  Private   Declare   Function   RegOpenKeyEx   Lib   "advapi32.dll"   Alias   "RegOpenKeyExA"   (ByVal   hkey   As   Long,   ByVal   lpSubKey   As   String,   ByVal   ulOptions   As   Long,   ByVal   samDesired   As   Long,   phkResult   As   Long)   As   Long  
  Private   Declare   Function   RegCloseKey   Lib   "advapi32.dll"   (ByVal   hkey   As   Long)   As   Long  
  Private   Declare   Function   RegCreateKeyEx   Lib   "advapi32.dll"   Alias   "RegCreateKeyExA"   (ByVal   hkey   As   Long,   ByVal   lpSubKey   As   String,   ByVal   Reserved   As   Long,   ByVal   lpClass   As   String,   ByVal   dwOptions   As   Long,   ByVal   samDesired   As   Long,   lpSecurityAttributes   As   SECURITY_ATTRIBUTES,   phkResult   As   Long,   lpdwDisposition   As   Long)   As   Long  
  Private   Declare   Function   RegQueryValueEx   Lib   "advapi32.dll"   Alias   "RegQueryValueExA"   (ByVal   hkey   As   Long,   ByVal   lpValueName   As   String,   ByVal   lpReserved   As   Long,   lpType   As   Long,   lpData   As   Any,   lpcbData   As   Long)   As   Long  
  Private   Declare   Function   RegSetValueEx   Lib   "advapi32.dll"   Alias   "RegSetValueExA"   (ByVal   hkey   As   Long,   ByVal   lpValueName   As   String,   ByVal   Reserved   As   Long,   ByVal   dwType   As   Long,   ByVal   lpData   As   String,   ByVal   cbData   As   Long)   As   Long  
  Private   Declare   Function   RegSetValueExA   Lib   "advapi32.dll"   (ByVal   hkey   As   Long,   ByVal   lpValueName   As   String,   ByVal   Reserved   As   Long,   ByVal   dwType   As   Long,   ByRef   lpData   As   Long,   ByVal   cbData   As   Long)   As   Long  
  Private   Declare   Function   RegSetValueExB   Lib   "advapi32.dll"   Alias   "RegSetValueExA"   (ByVal   hkey   As   Long,   ByVal   lpValueName   As   String,   ByVal   Reserved   As   Long,   ByVal   dwType   As   Long,   ByRef   lpData   As   Byte,   ByVal   cbData   As   Long)   As   Long  
  Private   Declare   Function   RegDeleteKey   Lib   "advapi32.dll"   Alias   "RegDeleteKeyA"   (ByVal   hkey   As   Long,   ByVal   lpSubKey   As   String)   As   Long  
  Private   Declare   Function   RegDeleteValue   Lib   "advapi32.dll"   Alias   "RegDeleteValueA"   (ByVal   hkey   As   Long,   ByVal   lpValueName   As   String)   As   Long  
  Public   Declare   Function   RegSaveKey   Lib   "advapi32.dll"   Alias   "RegSaveKeyA"   (ByVal   hkey   As   Long,   ByVal   lpFile   As   String,   ByVal   lpSecurityAttributes   As   Long)   As   Long  
  Public   Declare   Function   RegRestoreKey   Lib   "advapi32.dll"   Alias   "RegRestoreKeyA"   (ByVal   hkey   As   Long,   ByVal   lpFile   As   String,   ByVal   dwFlags   As   Long)   As   Long  
  Private   Const   ERROR_SUCCESS   =   0&  
  Private   Const   ERROR_BADDB   =   1009&  
  Private   Const   ERROR_BADKEY   =   1010&  
  Private   Const   ERROR_CANTOPEN   =   1011&  
  Private   Const   ERROR_CANTREAD   =   1012&  
  Private   Const   ERROR_CANTWRITE   =   1013&  
  Private   Const   ERROR_OUTOFMEMORY   =   14&  
  Private   Const   ERROR_INVALID_PARAMETER   =   87&  
  Private   Const   ERROR_ACCESS_DENIED   =   5&  
  Private   Const   ERROR_NO_MORE_ITEMS   =   259&  
  Private   Const   ERROR_MORE_DATA   =   234&  
   
  Public   Const   REG_NONE   =   0&  
  Public   Const   REG_SZ   =   1&  
  Public   Const   REG_EXPAND_SZ   =   2&  
  Public   Const   REG_BINARY   =   3  
  Public   Const   REG_DWORD   =   4&  
  Public   Const   REG_DWORD_LITTLE_ENDIAN   =   4&  
  Public   Const   REG_DWORD_BIG_ENDIAN   =   5&  
  Public   Const   REG_LINK   =   6&  
  Public   Const   REG_MULTI_SZ   =   7&  
  Public   Const   REG_RESOURCE_LIST   =   8&  
  Public   Const   REG_FULL_RESOURCE_DESCRIPTOR   =   9&  
  Public   Const   REG_RESOURCE_REQUIREMENTS_LIST   =   10&  
   
  Public   Const   KEY_QUERY_VALUE   =   &H1&  
  Public   Const   KEY_SET_VALUE   =   &H2&  
  Public   Const   KEY_CREATE_SUB_KEY   =   &H4&  
  Public   Const   KEY_ENUMERATE_SUB_KEYS   =   &H8&  
  Public   Const   KEY_NOTIFY   =   &H10&  
  Public   Const   KEY_CREATE_LINK   =   &H20&  
  Public   Const   READ_CONTROL   =   &H20000  
  Public   Const   WRITE_DAC   =   &H40000  
  Public   Const   WRITE_OWNER   =   &H80000  
  Public   Const   SYNCHRONIZE   =   &H100000  
  Public   Const   STANDARD_RIGHTS_REQUIRED   =   &HF0000  
  Public   Const   STANDARD_RIGHTS_READ   =   READ_CONTROL  
  Public   Const   STANDARD_RIGHTS_WRITE   =   READ_CONTROL  
  Public   Const   STANDARD_RIGHTS_EXECUTE   =   READ_CONTROL  
  Public   Const   KEY_READ   =   STANDARD_RIGHTS_READ   Or   KEY_QUERY_VALUE   Or   KEY_ENUMERATE_SUB_KEYS   Or   KEY_NOTIFY  
  Public   Const   KEY_WRITE   =   STANDARD_RIGHTS_WRITE   Or   KEY_SET_VALUE   Or   KEY_CREATE_SUB_KEY  
  Public   Const   KEY_EXECUTE   =   KEY_READ  
   
  Public   Const   HKEY_CURRENT_USER   =   &H80000001  
  Public   Const   HKEY_LOCAL_MACHINE   =   &H80000002  
  Public   Const   HKEY_CLASSES_ROOT   =   &H80000000  
  Public   Const   HKEY_CURRENT_CONFIG   =   &H80000005  
  Public   Const   HKEY_USERS   =   &H80000003  
   
  Dim   lbuffer   As   Long,   sbuffer   As   String,   hkey   As   Long,   ltype   As   Long,   ldata   As   Long  
  Public   Function   getvalue(mainkey   As   Long,   subkey   As   String,   keyv   As   String,   svalue)   As   Long  
  rtn   =   RegOpenKeyEx(mainkey,   subkey,   0,   KEY_READ,   hkey)  
  If   rtn   <>   ERROR_SUCCESS   Then  
          getvalue   =   rtn  
          Exit   Function  
  End   If  
  rtn   =   RegQueryValueEx(hkey,   keyv,   0,   ltype,   ByVal   0,   lbuffer)  
  getvalue   =   rtn  
  Select   Case   ltype  
  Case   REG_SZ  
          lbuffer   =   255  
          sbuffer   =   Space(lbuffer)  
          rtn   =   RegQueryValueEx(hkey,   keyv,   0,   ltype,   ByVal   sbuffer,   lbuffer)  
          getvalue   =   rtn  
          If   rtn   <>   ERROR_SUCCESS   Then  
                  Exit   Function  
          End   If  
          svalue   =   Left(sbuffer,   InStr(sbuffer,   Chr(0))   -   1)  
  Case   REG_EXPAND_SZ  
          sbuffer   =   Space(lbuffer)  
          rtn   =   RegQueryValueEx(hkey,   keyv,   0,   ltype,   ByVal   sbuffer,   lbuffer)  
          getvalue   =   rtn  
          If   rtn   <>   ERROR_SUCCESS   Then  
                Exit   Function  
          End   If  
          svalue   =   Left(sbuffer,   InStr(sbuffer,   Chr(0))   -   1)  
  Case   REG_DWORD  
          rtn   =   RegQueryValueEx(hkey,   keyv,   0,   ltype,   ldata,   lbuffer)  
          getvalue   =   rtn  
          If   rtn   <>   ERROR_SUCCESS   Then  
                  Exit   Function  
          End   If  
          svalue   =   ldata  
  Case   REG_BINARY  
          rtn   =   RegQueryValueEx(hkey,   keyv,   0,   ltype,   ldata,   lbuffer)  
          getvalue   =   rtn  
          If   rtn   <>   ERROR_SUCCESS   Then  
                  Exit   Function  
          End   If  
          svalue   =   ldata  
  End   Select  
  RegCloseKey   hkey  
  End   Function  
  Public   Function   setvalue(mainkey   As   Long,   subkey   As   String,   keyv   As   String,   ltype,   svalue,   lbuffer   As   Long)   As   Long  
  Dim   ss   As   SECURITY_ATTRIBUTES  
  ss.nLength   =   Len(ss)  
  ss.lpSecurityDescriptor   =   0  
  ss.bInheritHandle   =   True  
  rtn   =   RegCreateKeyEx(mainkey,   subkey,   0,   "",   0,   KEY_WRITE,   ss,   hkey,   S)  
  setvalue   =   rtn  
  If   rtn   <>   ERROR_SUCCESS   Then  
          Exit   Function  
  End   If  
  Select   Case   ltype  
  Case   REG_SZ  
          lbuffer   =   Len(svalue)  
          rtn   =   RegSetValueEx(hkey,   keyv,   0,   ltype,   ByVal   svalue,   lbuffer)  
          setvalue   =   rtn  
          If   rtn   <>   ERROR_SUCCESS   Then  
                  Exit   Function  
          End   If  
  Case   REG_EXPAND_SZ  
          lbuffer   =   Len(svalue)  
          rtn   =   RegSetValueEx(hkey,   keyv,   0,   ltype,   ByVal   svalue,   lbuffer)  
          setvalue   =   rtn  
          If   rtn   <>   ERROR_SUCCESS   Then  
                  Exit   Function  
          End   If  
  Case   REG_DWORD  
          lbuffer   =   4  
          rtn   =   RegSetValueExA(hkey,   keyv,   0,   ltype,   svalue,   lbuffer)  
          setvalue   =   rtn  
          If   rtn   <>   ERROR_SUCCESS   Then  
                  Exit   Function  
          End   If  
  Case   REG_BINARY  
          rtn   =   RegSetValueExA(hkey,   keyv,   0,   ltype,   svalue,   lbuffer)  
          setvalue   =   rtn  
          If   rtn   <>   ERROR_SUCCESS   Then  
                  Exit   Function  
          End   If  
  End   Select  
  RegCloseKey   hkey  
  End   Function  
  Public   Function   openkey(mainkey   As   Long,   subkey   As   String,   ByVal   ltype   As   Long,   hkey   As   Long)  
  openkey   =   RegOpenKeyEx(mainkey,   subkey,   0,   ltype,   hkey)  
  End   Function  
   
  Public   Function   closekey(hkey   As   Long)  
  closekey   =   RegCloseKey(hkey)  
  End   Function  
   
   
  Public   Function   deletevalue(mainkey   As   Long,   subkey   As   String,   keyv   As   String)  
  rtn   =   RegOpenKeyEx(mainkey,   subkey,   0,   KEY_WRITE,   hkey)  
  If   rtn   =   0   Then  
  rtn   =   RegDeleteValue(hkey,   keyv)  
  rtn   =   RegCloseKey(hkey)  
  End   If  
  End   Function


    摘要: vc应用程序用installshield打包时,compile及build后还需要做什么呢?怎么找不到打包后的exe文件呢?谢谢!! ......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE