如何了解图书馆如何协同工作?

Posted

技术标签:

【中文标题】如何了解图书馆如何协同工作?【英文标题】:How to find out how libraries work together? 【发布时间】:2011-02-26 11:46:11 【问题描述】:

我的任务是复制现有应用程序的功能。此应用程序依赖于可从 C# 访问的 .NET 托管程序集。我可以在我的新 C# 项目中导入这些 DLL,但没有关于如何使用它们的文档。

是的,这被标记为“SDK”,但不包含示例或文档。关于我应该如何进行的任何指示?

我考虑过创建存根程序集并从原始应用程序监视它们的使用情况,但这涉及大量代码。有什么工具可以帮我做吗?

【问题讨论】:

【参考方案1】:

使用Reflector 是最好的方法。您可以查看调用了什么并以一种简单易用的方式检查 dll。

你也可以试试Cecil

它们都是检查托管 dll 的绝佳工具

【讨论】:

如果 dll 是托管的,那么主 exe 也可能是 .net。看看他们如何使用自己的 api。 好建议。不要忘记反汇编调用代码以查看 API 在上下文中是如何使用的。 是的,Reflector 是要走的路,假设程序集没有被混淆。它可以将反汇编的程序集导出到 Visual Studio 项目,然后您可以构建该项目、添加到您的解决方案中,并使用 VS 测试项目来编写对旧程序集中的类/方法的调用。掌握窍门后实际上会很有趣!

以上是关于如何了解图书馆如何协同工作?的主要内容,如果未能解决你的问题,请参考以下文章

OpenVR、SteamVR 和 Unity3D 如何协同工作?

UIPIckerViews 在一个 UIView 中协同工作

如何高效率协同工作-。工具

如何理解OA协同办公系统的工作流引擎?

superagent 和 nock 如何协同工作?

来谈谈边缘计算和5G如何协同工作的