分享
 
 
 

求助:WebSpere VS IE 时IE中运行.NET的Windows控件出现的问题

王朝c#·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

求助:WebSpere VS IE 时IE中运行.NET的Windows控件出现的问题

最近小弟搞一个工程,B/S的,比较的麻烦,需要将.net和j2ee联合使用

服务器是j2ee,使用什么阿法奇或汤姆猫之类的基于java的发布器,没有IIS ,

客户端为一个在IE中运行的一个使用c#编写的WindowsForm控件

网页内嵌一个控件自然又牵涉到控件的下载和自动更新

首先在要运行的机器上装了.NET框架1.1,进入,然后进入

[控制面板]-[管理工具]-[Microsoft .NET Framework 1.1 Configuration]

然后进入[我的电脑]-[运行库安全策略]-[计算机]-[代码组]-[All_Code]进入它的属性对话框

中,把它的[权限集]设为[FullTrus]

本来参考相关材料显示该控件的HTML页面代码为

<html>

<head>

<title>电子病历编辑器演示</title>

</head>

<body>

<object id="mycontrol" width="100%" height="90%" classid="DocumentLib.dll#TextDocumentLib.EditPanel"

VIEWASTEXT>

</object>

<input type="button" value="初始化" onclick="init()" />

</body>

</html>

但将 documentlib.dll 拷贝到运行j2ee的服务器上,该页面不能正确显示,后觉得可能发布器有什么问题

于是自己编了个端口监听程序,分析出了差别,原来在于HTTP返回的contenttype有差别,

至于为什么有这个差别我就没深究了,我在服务器上加了一个JSP,文件名为 dll.jsp,代码如下

---------------------------------------------------------------------------------------------------

<%@ page contentType="text/html; charset=GBK" %><%

try

{

com.haitai.emr.common.Debug.println("DLL.jsp");

response.setContentType("application/octet-stream"); //设置返回的文件类型

FileInputStream hFile = new FileInputStream(pageContext.getServletContext().getRealPath("/") + "\DocumentLib.DLL"); // 以byte流的方式打开文件

System.out.println(pageContext.getServletContext().getRealPath("/") + "\emrtext\EMRTextDocumentLib.DLL");

int i = hFile.available(); //得到文件大小

byte data[] = new byte[i];

hFile.read(data); //读数据

hFile.close();

ServletOutputStream toClient = response.getOutputStream(); //得到向客户端输出二进制数据的对象

toClient.write(data); //输出数据

toClient.flush();

toClient.close();

}

catch(IllegalStateException e){

e.printStackTrace();

}

catch(Throwable ext){

ext.printStackTrace();

}

%><%@ page import="java.lang.*" %><%@ page import="java.util.*" %><%@ page import="java.io.*" %>

-----------------------------------------------------------------------------------------------------

HTML代码变成了

<html>

<head>

<title>电子病历编辑器演示</title>

</head>

<body>

<object id="mycontrol" width="100%" height="90%" classid="dll.jsp#TextDocumentLib.EditPanel"

VIEWASTEXT>

</object>

<input type="button" value="初始化" onclick="init()" />

</body>

</html>

结果页面能正确显示了

现在出现的问题是这个页面打开时老是连接dll.jsp,估计是检查最新版本吧.我根据一些资料猜测可以在页面引用

应用程序配置文件来避免这个重复的操作.服务器上可以放置一个合适的 webconfig.xml ,HTML页面改成如下

<html>

<head>

<title>电子病历编辑器演示</title>

<link rel="Configuration" href="webconfig.xml" />

</head>

<body>

<object id="mycontrol" width="100%" height="90%" classid="dll.jsp#TextDocumentLib.EditPanel"

VIEWASTEXT>

</object>

<input type="button" value="初始化" onclick="init()" />

</body>

</html>

可是我不知道如何编写这个webconfig.xml,我用 sn.exe makecert.exe signcode.exe 对那个控件搞了个强名称

,处理后的dll文件可以扔进Windows2000的assembly高速缓冲中,然后尝试的写了个如下的webconfig.xml ,可以好像没有用

<configuration>

<runtime>

<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">

<dependentAssembly>

<assemblyIdentity name="DocumentLib" publicKeyToken="4b96b5c6ae565d61" Culture="neutral" />

<bindingRedirect newVersion="1.0.1803.26449" />

<codeBase version="1.0.1803.26449" href="DocumentLib.dll" />

</dependentAssembly>

</assemblyBinding>

</runtime>

</configuration>

还有一个问题,在某些机器中,控件加载缓慢,仔细研究,发现程序在"System.Resources.ResourceManager.GetObject()"

中停留了很长时间,我还有一次定位到了"System.ConfigTreeParser.Parse(string , string , boolean )"上,

不知道是什么地域设置还是权限有什么问题或者其他原因.

问题总结:

1.如何对IE中运行的.netWindows控件进行自动下载和更新,最好靠个 <link rel="Configuration" href="webconfig.xml" />

避免无意义的下载dll文件

2.能不能不使用上面的 dll.jsp 而直接定向到 dll文件本身

3.如何解决在某些机器中控件加载缓慢问题

4.上面的发布器对文件名大小写敏感, DocumentLib.dll 和 DocumentLib.DLL是不同的, vs.net编译生成 dll ,而IE却老是

视图下载 DLL,害的我拷贝到服务器上时要改dll为DLL , 不知能不能少这点麻烦.

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有