请问下更改后如何编译DLL文件啊

yueccc 2010-01-14 12:56:33
请问下更改后如何编译DLL文件啊~~~我用的是静态的那种~~我更改后出现错误是:can not debug project unless a host application is defined .Use the run|parameter ....delogbox.我在别的工程里已经应用这个DLL文件,现在我想改下这个里面的一些内容,想编译,他就会出现这样的情况
...全文
82 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
gucunlin 2010-02-09
  • 打赏
  • 举报
回复
可能你是是更改的DLL文件源码,只是编译后没有运行而已。让DLL跟一个exe文件关联.
gzypz 2010-01-14
  • 打赏
  • 举报
回复
呵呵 这个吗?
你得懂得怎样使用反编译语言咯!
zhgwbzhd 2010-01-14
  • 打赏
  • 举报
回复
没听说过拿过来一个dll文件,就可以再用bcb来编译成新的呢。
还是那源代码来吧,可以编译一下。
要不你就要学习汇编了。直接修改他的机器码吧。
一、简介   AheadLib 是用来生成一个特洛伊DLL的工具,用于分析DLL中的函数参数调用(比如记录Socket send了什么等等)、更改函数功能(随心所欲了:)、更改界面功能(比如在Hook里面生成一个按钮,截获事件等等)。 二、使用   1.用 AheadLib 打开要模拟的 DLL,生成一个 CPP 文件。   2.用 Visual Studio 6.0/.NET 建立一个 DLL 工程,把这个 CPP 文件加入到项目中。   3.使用 Release 方式编译,生成的 DLL 将和原来的 DLL 具有一模一样的导出函数,并且能顺利把这些函数转发到原来的函数中。   4.AheadLib 还可以生成 Hook 代码,用于截取当前进程的所有消息,这样就可以随心所欲地处理各种消息了 (修改第三方程序界面功能的好助手)。 三、备注   1.如果导出函数过多,在 Visual Studio 6.0 中,如果出现编译错误,请在项目属性关闭与编译头功能。   2.如果是 C++ 、C __stdcall、C __fastcall 的方式导出的话,生成的函数声明将会还原成原代码级别(可能需要修改才能编译,比如导出C++类的情况)。此时使用 __declspec(dllexport) 导出 ——不能指定导出序号。   3.如果是 NONAME 或者 C _CDECL 方式导出(比如 DEF 导出,大多数Windows DLL都是这种情况,比如WS2_32等等),则使用#pragma comment(linker, "/EXPORT:...)导出,且指定导出序号。   4.如果系统中没有 DbgHelp.dll,将无法识别 C++ 模式的导出。

13,826

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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