我的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