[疑难] EXCEPTION_ACCESS_VIOLATION(0xc0000005) 问题

hurd 2008-09-13
尝试下一个嵌入ole对象的应用程序,在执行时发生EXCEPTION_ACCESS_VIOLATION(0xc0000005) 异常, 附件里有详细的源代码和ddbg信息。

http://dlang.group.iteye.com/topics/download/8211c60d-dd0c-3f68-861d-82995a07f717


似乎是不能访问内存,找了半天没找到解决方法。那位能给看看,感激不尽。。。
Colorful 2008-09-13
通过 ddbg 的信息来看,应该是越界了。

把 g_browserObject.SetHostNames(cast(wchar*)"My Host Name\0"w, null);

改为

g_browserObject.SetHostNames(toUTF16z("My Host Name")), null);

试试吧。

DMD 似乎对字符串常量的存储做了些特别措施,对它进行访问很容易就出现这个异常。
hurd 2008-09-13
我在OleCreate后加了assert:
assert( g_browserObject !is null );


在OleCreate后g_browserObject仍然是空 
Global site tag (gtag.js) - Google Analytics