DEP preventing my COM DLL from working

▼魔方 西西 提交于 2020-01-25 03:14:28

问题


I'm trying to use a COM DLL (written in Delphi 7) within my Delphi 7 IntraWeb application but it's failing due to DEP. I'm pretty much certain it's DEP that is preventing me from using the DLL because if I compile and run my IntraWeb app as a StandAlone Server, everything works fine. But, compiling and runnning it as an ISAPI DLL, it fails.

On WinXP (using IIS 6) I can add DllHost.exe to DEP and everything works. Of course, I really don't want to do that. On Win7/2008 (IIS 7) this isn't an option.

Can someone point me in a direction that can help me get my COM DLL to work when called from an IntraWeb ISAPI DLL?

Do I need to do something to the COM DLL? Are there any permissions I can add somewhere?

Thanks, Michael


回答1:


i would host the dll inside a local executable, calling methods until the crash happens. You would do this with DEP enabled on your own machine.

Unfortunately Delphi 7 itself crashes with Data Execution Prevention enabled, in addition to memory violations in the RTL/VCL that TOndrej mentioned.

That is what you'll need to do to get your COM dll working with DEP - find the bugs and fix them.



来源:https://stackoverflow.com/questions/7502036/dep-preventing-my-com-dll-from-working

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!