Yahoo 知識+ 將於 2021 年 5 月 4 日 (美國東岸時間) 停止服務,而 Yahoo 知識+ 網站現已轉為僅限瀏覽模式。其他 Yahoo 資產或服務,或你的 Yahoo 帳戶將不會有任何變更。你可以在此服務中心網頁進一步了解 Yahoo 知識+ 停止服務的事宜,以及了解如何下載你的資料。
VB6 在 Win 7 呼叫 RegQueryValueEx
=====================================================
我用VB6 在 Windows 7 Professional 的 OS 上呼叫 RegQueryValueEx
lRes = RegOpenKey(hKey, SubKey, lHandle)
lRetLen = 400
sRetVal = Space(lRetLen)
lRes = RegQueryValueEx(lHandle, ValueName, 0, REG_SZ, ByVal sRetVal, lRetLen)
我試著去讀底下裡面所有的 REG_SZ 的資料 (用 不同的 ValueName)
HKEY_LOCAL_MATHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion
但是 底下的2 項卻讀不出來 (IRes = 2)
CSDVersion
ProductId
可是 當我在 Windows XP Professional 底下執行卻沒有問題
=====================================================
請問
1. 是那兒出錯了 或是我少安裝了什麼?
2. 承上 將來可能還會有什麼問題
3. 同樣的程式碼 在 XP 底下完全沒有問題 但是在 Windows 7 下 "開啟" 時出現
**************************************
Data View
Automation error
Error accessing the OLE registry
**************************************
錯誤訊息
這是那兒出錯了? 如何修正?
謝謝
謝謝 阿戊大師 的幫忙
透過compatibility 的設定是可以免除 "Automation error" 的訊息
但是 在執行 lRes = RegQueryValueEx(...) 之後
IRes 還是得到 2 的錯誤值
(sRetVal 沒有取得正確的資料)
所以 "Automation error" 並不是拿不到register資料的原因
這是我最主要的問題
還請各位大大幫忙
謝謝
2 個解答
- 9 年前最愛解答
嘗試管理員權限吧
在製成的檔案案右鍵,以管理員權限執行
順便告訴你秘訣:
打開的 "工程屬性" 面板中,點 "製成" 選項,在裡面的 "版本編號" 的 "檔案資訊" 中打 "update" (這裡就是關鍵)
附註:Windows 自己會檢測文件名是否包含 Setup / Install / Update
這些會讓製程文件自動增加權限
資料來源: ME