Windows服务调用DLL时候出现异常

ysq520 2011-08-02 10:08:25
调用一短信供应商DLL,用自己写的一个非windows服务测试程序调用没有问题,但是嵌到windows服务中时就出现了

“应用程序发生异常 未知软件异常(0X0EEDFADE) 位置为0x7c80bef7”

目前做了以下尝试:对调用路径<发布/调试版本>的确认、调用函数的引用确认、参数确认

有没有高手给予帮助,本人实在是黔驴技穷了...

环境:windows2003 VS2008 .NET2.0 DLL为delphi编写
...全文
276 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
ysq520 2011-08-03
  • 打赏
  • 举报
回复
问题已经解决,因为在windows服务中做了线程,默认线程模型为MTA[多线程套间],将线程模型改成STA[单线程套间]即可!

trTest.ApartmentState = ApartmentState.STA;//old
OR
trTest.SetApartmentState(ApartmentState.STA);//New


感谢各位兄弟们的帮助!
结贴加分!
ysq520 2011-08-02
  • 打赏
  • 举报
回复
以Administrator运行也是同样的问题! 也严重感谢楼上2位回答...
宝_爸 2011-08-02
  • 打赏
  • 举报
回复
如果winform或者Console可以而 windows service不行的话。
可能是权限问题。试试用Administrator来运行windows service.
xuexiaodong2009 2011-08-02
  • 打赏
  • 举报
回复
难道是服务权限导致的??
dazhabai 2011-08-02
  • 打赏
  • 举报
回复
不知道,帮顶

111,092

社区成员

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

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

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