有源码,可以在DELPHI中进行源码级调试吗?
解决方案 »
- adoquery1中使用监时表查询
- 菜鸟问题,大家都来答阿
- [致命错误] photo.dpr(11): File not found: 'bsSkinData.dcu'
- 如何以最高的效率格式化字符窜
- 菜鸟问题 :一个用ADO连接SQL Server 2000数据库的问题,
- 求救啊!sos!
- 分解blob字段中的流,高分求救!!!
- 我不提问
- 为什么没有人帮我呢
- 见笑啦!!小弟我有一个小问题,想麻烦大家!!!!!(我给40分!!!!!)
- WEBBrowser 怎么保存图片到文件?
- 230分了, 如何使用ODAC???(我再次申请了一个号,三个号加在一起落230了,只要问题解决就请在三个问题中发言,分就全给)
1.在Run-Parameters-Host Appliction,选择宿主文件
2.Project-Option中选择Debuging中的Debug information即可
这个应该是:当前项目为DLL项目,运行的是DLL,DLL和EXE在项目组里面。2.Project-Option中选择Debuging中的Debug information即可
这个应该是:EXE、DLL最好都选择编译DEBUG信息。
求解~
Directories/Conditionals tab of the project options, then this will automatically happen.Either use this directory as your webserver's scripts or isapi directory, or move the DPR/DOF/CFG/RES files to your webserver's
scripts or isapi directory. If you do the later through the Delphi menu option File | Save Project As, the Delphi will fix up the
directories of your source files in the uses section of the DPR for you. It is not necessary to move the PAS files.That should be it. Build and debug happily ever after. The only downside to this is that you have to either change your webserver setup or move your project file to your scripts or isapi directory which is a annoying if you are using a source control system and you are the only one with this setup.
SOLUTION BBefore compiling, change the linking options of your project to include Remote Debugging Symbols.Before debugging, open a file (an empty text file will do) from the directory your DLL is in. That directory will become the current
directory for Delphi. When you start debugging, Delphi will correctly find your DLL and load its Symbol Table because it is in this
directory.I don't like this solution because you have to always make sure that the directory your DLL is in always the current directory for Delphi before debugging.
SOLUTION CBefore compiling, change the linking options of your project to include Remote Debugging Symbols.After you have started to debug, open the View | Debug Windows | Modules dialog. Find the entry for your DLL. If this is an isapi
DLL, make sure you have made a request to the webserver so your DLL will already be loaded, otherwise you won't find it in this list. Right click on your DLL and choose "Reload Symbol Table..." and enter in the full path and filename for your DLL and click OK. This will then properly load the Symbol Table.A downside to this solution (other than you have to do it every time) is that you can't debug any code the executes when your DLL is first loaded.
Solution DI can't get any of the solutions to work, the only thing that works is when I manually define the dll path in View\DebugWindows\Modules.->Just wanted to tell you I got it working. I checked Remote Debug info in the linker tab, and now it works!一般有问题都是DLL和EXE在不同目录的情况下,在你指定不同输出目录时尤其常见。EXE,DLL和源码在同一目录肯定没有问题,有时需要你打开本目录一个源码文件,和因为delphi的当前目录也有关系。一般情况下,如果源码能调试了,再将host和输入文件指定到不同目录也是可以的。总之,这是一个问题,但它是一个可以解决的问题。
调试Dll需要注意几点
1.应用程序与dll源文件应放在一个目录下
2.project--->option中的输出目录应设置为dll源文件的输出路径
3.加宿主文件
4.Project-Option中选择Debuging中的Debug information
1.应用程序与dll源文件应放在一个目录下(例:c:\Import\)
2.project--->option中的输出目录应设置为dll源文件的路径(c:\Import\)
3.加宿主文件(Run-->parameters)
4.Project-Option中选择Debuging中的Debug information
1.加宿主文件(Run--> parameters)
2.Project->Option>Compiler中选择Debuging中的Debug information
3.Project->Option->Linker中选择EXE and DLL options中的Include TD32 debug info应用程序与dll源文件可以不在一个目录下,project->option中Directories的输出目录也可以为空。