Assembly 之间如何保证100%的二进制兼容?

R9R9R9 2009-03-17 02:08:18
背景:

A公司用C++/CLI 开发一些API 生成a.dll 这样一个Assembly
B公司用C#语言通过调用a.dll 生成b.exe 这样一个可执行文件.
A公司继续开发a.dll.


问题:
如何100%的保证A公司继续开发的a.dll,在B公司不进行任何build或者啥操作的情况下,可以继续正常,完全没有任何问题的使用b.exe这个程序呢?


初步想法:
我自己以前只要不删除/改变a.dll原先的API接口,就应该没有任何问题了? 事实是这样的吗? 有办法可以验证么?
...全文
90 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
linaren 2009-03-18
  • 打赏
  • 举报
回复
a.dll的接口没有变化,你的程序就不用重新编译
R9R9R9 2009-03-17
  • 打赏
  • 举报
回复
嗯,谢谢各位了。
wuyq11 2009-03-17
  • 打赏
  • 举报
回复
不改变接口,就没问题。
zgke 2009-03-17
  • 打赏
  • 举报
回复
A公司只能重构和继承自己的东西了..... 如果A公司开发的DLL是只对B公司 应该改动不大..

如果不是 那A公司有可能删除或则改名以前的老方法. 你可以根据反射来检查是否有你要的方法
超级大笨狼 2009-03-17
  • 打赏
  • 举报
回复
我觉得你说的是对的。
不删除/改变a.dll原先的API接口,就应该没有任何问题了

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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