COM msado15.dll程序已停止运行. [英] COM msado15.dll Program has stopped running.

查看:128
本文介绍了COM msado15.dll程序已停止运行.的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大家好,

我们一直在程序中使用旧的msado15.dll.我们以前是导入它#import"msado15.dll"的.几天前,我们已升级到Windows8.可惜,我们的软件在未安装Service Pack 1的Windows 7上停止运行.
早些时候,当我们使用Windows 7时,我们已经升级到Service Pack 1,并且发生了同样的问题,因此我们从所有计算机上卸载了Windows 7的Service Pack 1,一切正常.

但是我想使用Windows 8,他们已经更改了msado15.dll.
我在网上做了一些研究,他们说我们应该用msado60.tlb替换导入,但这对我们的编译破坏也不起作用.

任何人都可以建议我们可以遵循的适当步骤,以便使我们的程序在Windows 7上像Windows 8一样在没有Service Pack 1的情况下运行.

已经被这个问题困扰了几天了.帮助将不胜感激.

Hello Guys,

We had been using the old msado15.dll in our program . And we used to import it #import "msado15.dll" . Now just a few days back we upgraded to Windows 8. And alas, our software stopped working on Windows 7 which didnt have Service pack 1 installed.
Earlier when we were using Windows 7 we had upgraded to Service pack 1 and the same problem was happening so we uninstalled the service pack 1 for windows 7 from all machines and everything worked fine.

But with Windows 8 i suppose they have already changed the msado15.dll.
I did some research online and they said that we should replace the imports with the msado60.tlb but this also didnt work with our compilation breaking.

Can any one suggest proper steps that we can follow so as to get our program running on Windows 7 without service pack 1 as we as on windows 8.

Have been stuck with this issue for a few days now . help will be much appreciated.

推荐答案

类似 [^ ]是您的问题-MS更改了IID

那篇文章还包括一个热修复程序...

在您的代码中修复它可能是一种替代方法,但是我不知道您如何设置它-您必须同时导入旧的和新的类型库(使用
sounds like this[^] is your problem - MS changed the IIDs

That article also includes a hot fix ...

Fixing it in your code could be an alternative, but I don''t know how you''ve set it out - you''d have to import both old and new typelibs (using the rename_namespace[^] directive) and have two implementations


这就是我们过去在C ++环境中的引用方式
#import"c:\ program Files \ Common Files \ system \ ado \ msado15.dll" named_namespace("ADOCG")named("EOF","EndofFile")

我已将其更改为
#import"c:\ program Files \ Common Files \ system \ ado \ msado28.tlb" named_namespace("ADOCG")named("EOF","EndofFile")

还可以请您详细说明必须导入旧的和新的类型库(使用rename_namespace [^]指令)并具有两个实现"的意思.
This is how we used to refer in our C++ environment
#import "c:\program Files\Common Files\system\ado\msado15.dll" rename_namespace("ADOCG") rename("EOF","EndofFile")

I have changed it to
#import "c:\program Files\Common Files\system\ado\msado28.tlb" rename_namespace("ADOCG") rename("EOF","EndofFile")

Also can you please elaborate on what you mean by "you''d have to import both old and new typelibs (using the rename_namespace[^] directive) and have two implementations"


这篇关于COM msado15.dll程序已停止运行.的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆