我的VBA代碼無法訪問Windows 7 64位和Word 2010 32位上的C:\ Windows \ System32文件夾中的DLL。VBA代碼無法訪問System32中的DLL
Private Declare Function my_func Lib "mydll.dll" (ByVal param As String) As Long
Public Sub MyFuncTest
n = my_func("a")
End
我複製MYDLL.DLL到C:\ Windows \ System32下,並呼籲MyFuncTest卻得到了這樣的錯誤消息 「錯誤53: 'MYDLL.DLL' 未找到」。
不過,我改變了申報代碼:
Private Declare Function my_func Lib "C:\Users\myname\Documents\mydll.dll" (ByVal param As String) As Long
然後我複製MYDLL.DLL到C:\用戶\ MYNAME \文檔,我的帳戶中的文檔文件夾,MyFuncTest成功執行。
在聲明中將「mydll.dll」更改爲「C:\ Windows \ System32 \ mydll.dll」無效。我嘗試在同一個VBA環境中使用FileSystemObject#FileExists方法訪問C:\ Windows \ System32 \ mydll.dll,但它返回了False(未找到)。
Windows XP和Word 2003沒有問題。
任何人都可以幫忙嗎?
這是一個類似的問題,具有相同的根本原因。 http://stackoverflow.com/questions/29886297/whats-special-about-c-windows-system32-in-the-path – smwikipedia 2015-04-27 05:53:34