首页 新闻 会员 周边

网页调用winform程序有没有新的技术

0
[已关闭问题] 关闭于 2012-04-13 17:07

大家好,弱弱的问下,网页调用winform程序出了吧winform做成activex,还有没有新的技术呢?我们经理说有,但是我全网搜索了很久,基本都是做成activex的方法~

噹里个噹的主页 噹里个噹 | 菜鸟二级 | 园豆:202
提问于:2012-04-05 15:48
< >
分享
所有回答(3)
0

网页调用的是本地WinForm程序还是远程的WinForm程序?

dudu | 园豆:31003 (高人七级) | 2012-04-05 16:57

如果不用activex,那应该算是远程的。

支持(0) 反对(0) 噹里个噹 | 园豆:202 (菜鸟二级) | 2012-04-05 17:31

@黑精灵: 那是不是可以在网页中直接通过ajax调用远程程序

支持(0) 反对(0) dudu | 园豆:31003 (高人七级) | 2012-04-05 17:54

@黑精灵: 首页正好有篇文章:如何从 Winform 移植到 Webform [自己搞定HTTP协议]

支持(0) 反对(0) dudu | 园豆:31003 (高人七级) | 2012-04-05 21:29

@dudu: 谢谢了哈,这篇文章我看了下,不是很看得懂

支持(0) 反对(0) 噹里个噹 | 园豆:202 (菜鸟二级) | 2012-04-06 16:13
0
 System.Diagnostics.Process process = System.Diagnostics.Process.Start(Server.MapPath(uploadPath));
System.Threading.Thread.Sleep(1500);
if (process != null)
{
process.CloseMainWindow();
process.Close();
}
打开和关闭  参数是你要调用的可执行文件路径  包括bat exe  docx等等
不知道适合你那情况不 呵呵
 如果要传参到winform或者由winform返回值 可以放在数据库里或者xml等  程序读取写入数据库和xml
一个土豆一棵青菜 | 园豆:268 (菜鸟二级) | 2012-04-05 17:12

呵呵,你提供的这个好像不是我的需求。我的需求是能像activitx一样安装后显示winfform的界面,但是我又不想通过activex来实现。activex感觉用户体验方式不太好,还有受到权限的限制

支持(0) 反对(0) 噹里个噹 | 园豆:202 (菜鸟二级) | 2012-04-05 17:28
0

定义http头,在网页中href指定类似定义好的命令头“openwin://”,就可以和客户端交互,前提是要在客户端注册http头定义。

不过,你既然要交互,肯定是在客户端有winform的,安装的时候注册一下,不是问题。

邢少 | 园豆:10926 (专家六级) | 2012-04-06 11:58

但是安装winform的时候是不是也是通过activex的形式来安装呢?

支持(0) 反对(0) 噹里个噹 | 园豆:202 (菜鸟二级) | 2012-04-06 12:11

@黑精灵: 不是。客户端程序和activex本身是没有联系的。

像安装vs是用安装包来安装的。如果你做了客户端,且想在客户哪里安装,就要再写个安装程序。

支持(0) 反对(0) 吕飞 | 园豆:280 (菜鸟二级) | 2012-04-06 13:17

@吕飞: 按照邢少说的,那么打开的这个程序是不是承载在ie里面的??

支持(0) 反对(0) 噹里个噹 | 园豆:202 (菜鸟二级) | 2012-04-06 13:35

@黑精灵: 

注册表中会定义 “openwin://”url命令对应什么动作,

支持(0) 反对(0) 邢少 | 园豆:10926 (专家六级) | 2012-04-06 15:24

@邢少: 我不太清楚你的这中方式和“将应用程序注册为协议处理者”有什么分别。是不一样的吗?

支持(0) 反对(0) 噹里个噹 | 园豆:202 (菜鸟二级) | 2012-04-06 15:33

@黑精灵:

"openwin:// "头是注册在windows系统注册表中的。注册的是“http头”对应的启动程序路径,

注册后 ,你在浏览器中键入“openwin://”会自动启动对应路径的exe,

"openwin:// "是自己注册的一种协议。

支持(0) 反对(0) 邢少 | 园豆:10926 (专家六级) | 2012-04-06 15:41

@邢少: 那应该就是一样的了。这种方式启动的exe并没有承载在网页上。我之前试了下demo,不符合要求啊。而且是在地址栏键入“openwin://”会自动启动对应路径的exe。你看看是不是这种方式http://www.cnblogs.com/phinecos/archive/2009/03/06/1404951.html腾讯的Tencent://Message协议注册表

支持(0) 反对(0) 噹里个噹 | 园豆:202 (菜鸟二级) | 2012-04-06 16:04

@黑精灵: 嗯.是一个东西,

它最简单的应用就是启动一个exe,但是本身这个协议是可以传递参数的,结合这点,它是可以客户端的已经安装好的软件做复杂交互的。 比如:自动登录,传递用户名。密码,启动客户端一个exe,exe作验证,集合window消息,可以做很多事情。

支持(0) 反对(0) 邢少 | 园豆:10926 (专家六级) | 2012-04-06 16:38
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册