目前的项目需要在asp.net中使用一个由客户提供的dll (用COM写的)。搜索了csdn以前的问题解答,我用了tlbimp.exe对dll文件进行wrapping, 然后在add reference 中加入了wrapped 后的dll文件。最后,用regsvr32对原dll进行了注册。都搞定后,在我的c#代码中加入了如下几行:using DLLNamespace;private void Page_Load(object sender, System.EventArgs e)
{
//early binding
DllNamespace.COMClass COMInstance = new DllNamespace.COMClass();
try
{
((DllNamespace.COMClass)COMInstance).dosth();
}
catch (Exception ex)
{
Response.Write("Exception in COMClass: " + ex.Message);
}
}奇怪的是,除了第一次能够正常运行之外,其后几次都会throw一个“java.lang.NullPointer Exception”. 我想有两种可能,一是原dll文件是用java写的,所以才会抛出java异常。二是.net的garbage collection 对COM不起作用。于是,我就在((DllNamespace.COMClass)COMInstance).dosth();后面加了句COMInstance.destroy();重新启动机器和VS,但结果还是一样。各位高手们,帮我看一下。谢谢。
解决方案 »
- 未能加载类型“FredCK.FCKeditorV2.FileBrowser.Config”,在线等
- asp 如何写弹出登录窗口,背景的页面保持不变
- 在武汉的同行进来
- 如何在asp.net中对Datalist进行分页显示?
- sql2005 输出XML后ASP.NET 的字符替换问题
- |M| 看幕白兄在 我问个很变态的问题 看怎么解决 当用户打开一个页面的时候 显示页面正在加载中 注:不是简单的用JS完成的那种是程序Load时
- 问个sql语句问题
- 不爽.发个GOOGLE地图坐标也被删除了.散分.不就是说某个地方发现有好多轰炸机,好玩啊
- 关于mailto的问题
- 没有分作礼品仍要请教!!DataList中放LinkButton,HyperLink,用强类型数据集填充取点击获取行号的问题???!!
- 存储过程的分页的问题,“最后一页”按钮点了没有反应,点了“第一页”和“上一页”有作用。(高分请教在线等)
- 新手求助:未定义类型问题
{
if (!IsPostBack)
{
//early binding
DllNamespace.COMClass COMInstance = new DllNamespace.COMClass();
try
{
((DllNamespace.COMClass)COMInstance).dosth();
}
catch (Exception ex)
{
Response.Write("Exception in COMClass: " + ex.Message);
}
}
}
http://support.microsoft.com/default.aspx?scid=kb;EN-US;Q317109
“<%@ Page aspcompat="true" language="c#" Codebehind="Gifting.aspx.cs" AutoEventWireup="false" Inherits="MazamaWeb.Gifting" %>”我也觉得奇怪,会抛出“java.lang.NullPointer Exception”,会不会是因为COM是用java写的。客户提供的COM文件是一个dll文件。To goody9807(), 还是一样。