word2010 64位开发问题

一只小蝈蝈 2012-03-26 07:08:33
代码为:Public Declare PtrSafe Sub WdLoadConfig Lib "CheckLib" ( _
ByRef conf As HMCONFIG, _
ByVal bdir As String, _
ByVal ulib As String, _
ByRef fUseUser As LongPtr, _
ByVal InstLib As String, _
ByRef fCheck_T As LongPtr, _
ByRef qcx As LongPtr)

上述代码在word 2010 32位中可运行,但到64位中就不行了,请问高手在不修改checklib(32位的)的前提下,如何修改此代码。求解决方案
...全文
330 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
ah_2046 2012-04-10
  • 打赏
  • 举报
回复
OFFICE64位不支持32位的DLL。微软主页上有说明。
一只小蝈蝈 2012-04-05
  • 打赏
  • 举报
回复
用vs2010重新编译了CheckLib.dll,在xp平台下,word2010调用该文件时通过,但在win764位平台下,word2010 64位调用该文件却提示“找不到该文件”。是不是win7系统有什么要求或设置呀,求高手赐教!
dsd999 2012-03-29
  • 打赏
  • 举报
回复
没有源码,那就没办法了。
一只小蝈蝈 2012-03-29
  • 打赏
  • 举报
回复
没有源码,有什么好的解决方案吗?
dsd999 2012-03-27
  • 打赏
  • 举报
回复
不行指的是什么?没反应还是有报错?
dsd999 2012-03-27
  • 打赏
  • 举报
回复
CheckLib.dll是自己写的吗?

能把CheckLib.dll也换成64位的吗?
一只小蝈蝈 2012-03-27
  • 打赏
  • 举报
回复
原来函数Public Declare PtrSafe Sub WdLoadConfig Lib "CheckLib" ( _
ByRef conf As HMCONFIG, _
ByVal bdir As String, _
ByVal ulib As String, _
ByRef fUseUser As Long, _
ByVal InstLib As String, _
ByRef fCheck_T As Long, _
ByRef qcx As Long)
这个函数在vba32位中可以调用,但到64位就不能调用了,应该是参数长度不一致造成了的,将long换成longptr后在64位中也不行,请问如何调整数据类型???
CheckLib.dll为32位的

5,139

社区成员

发帖
与我相关
我的任务
社区描述
其他开发语言 Office开发/ VBA
社区管理员
  • Office开发/ VBA社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧