asp.net里嵌入winfrom

by_封爱 2012-04-20 01:11:05
如何?

就是比如一个winfrom窗体 上面有个按钮 点击messagebox.show...

然后把这个exe做成ocx 然后在asp.net(html)里直接操作这个exe跟任何的html or js 毫无关系

求思路,求代码,求链接........

...全文
200 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
孟子E章 2012-04-20
  • 打赏
  • 举报
回复
我的第一个链接就是内嵌啊。dll,ocx道理是一样的

C#开发ActiveX控件,.NET开发OCX控件案例
http://www.xueit.com/cshare/show-4546-1.aspx
by_封爱 2012-04-20
  • 打赏
  • 举报
回复
那我们不谈论浏览器协议(因为我不懂)

那我这么说吧 是不是把 winform封装成ocx了 就可以实现内嵌了?
孟子E章 2012-04-20
  • 打赏
  • 举报
回复
他有一个ocx 下载到本地 注册下也是可以的,但需要启用浏览器的ActiveX才可以
浏览器协议是另外一种方法
by_封爱 2012-04-20
  • 打赏
  • 举报
回复
我怎么感觉跟浏览器协议没任何关系呢?

以前修改一项目 他有一个ocx 下载到本地 注册下 然后就可以访问他的内容了

他就是一个cs的chart显示数据用的

也没有浏览器协议什么的啊?
孟子E章 2012-04-20
  • 打赏
  • 举报
回复
DLL
OCX
都是类似的,
你可以通过
自定义浏览器协议
实现
任何形式的界面程序
完整的代码
http://blog.sina.com.cn/s/blog_4a77f0630100hav3.html
http://www.cnblogs.com/CharlieSong/archive/2009/04/04/1429464.html
by_封爱 2012-04-20
  • 打赏
  • 举报
回复
就算是窗体控件库(虽然我不懂) 但是我知道 自定义控件 生成的是DLL

那么html里可以引用DLL么?

如果是这样 那么所有的窗体 控件不都得动态创建了么?

能不能 就是新建一个winform程序 上面拖个按钮 点击事件 弹出 对话框

然后直接把整个exe 弄成OCX?
孟子E章 2012-04-20
  • 打赏
  • 举报
回复
应该是窗体控件库
by_封爱 2012-04-20
  • 打赏
  • 举报
回复

using System;
using System.Windows.Forms;
using System.Runtime.InteropServices;
namespace WindowsControlLibrary1
{
[ComVisible(true)]
public partial class UserControl1 : UserControl
{
public UserControl1()
{
InitializeComponent();
}
public void SendMessage(string msg){

_lblMessage.Text = msg;
}
}
}




<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Windows Form Control Test Page</title>
<script type="text/javascript">
function SendMessageToWinControl()
{
var winCtrl = document.getElementById("MyWinControl");
winCtrl.SendMessage("Message sent from the HTML page!!");
}
</script>
</head>
<body>
<h1>Windows Form Control:</h1>
<object id="MyWinControl" classid="http:WindowsControlLibrary1.dll#WindowsControlLibrary1.UserControl1"
height="100" width="300" VIEWASTEXT/>
<br/><br/>
<input type="button" onclick="SendMessageToWinControl()" value="Send Message" />
</body>
</html>





请问下 他那个工程是什么? 类库吗? 如果是类库 那生成的不是DLL吗?
孟子E章 2012-04-20
  • 打赏
  • 举报
回复
Hosting a Windows Form Control in a web page
http://weblogs.asp.net/spano/archive/2007/09/19/hosting-a-windows-form-control-in-a-web-page.aspx

采用
<object id="MyWinControl" classid="http:WindowsControlLibrary1.dll#WindowsControlLibrary1.UserControl1"
height="100" width="300" VIEWASTEXT/>
足球中国 2012-04-20
  • 打赏
  • 举报
回复
既然知道是ocx也就是active。用c#写个不就可以了。
by_封爱 2012-04-20
  • 打赏
  • 举报
回复
首先 我们经理 用过delphi 写的exe 做成的ocx 直接弄网页里

首先注册下那个ocx就可以了 虽然打开是浏览器 但是 只有一个html其他全是delphi里的东西

连接数据库什么的 也是

然后吧 我昨天去客户那 看到他们用一款软件 就是一个html里面就是C# winfrom的程序

为什么我确定是winfrom呢 因为 winform左上角有一个默认图标 那个软件连这个图标都没改

所以 我想看看是怎么实现的


Console.WriteLine("求大神现身..........");

段传涛 2012-04-20
  • 打赏
  • 举报
回复
[Quote=引用楼主 的回复:]
如何?

就是比如一个winfrom窗体 上面有个按钮 点击messagebox.show...

然后把这个exe做成ocx 然后在asp.net(html)里直接操作这个exe跟任何的html or js 毫无关系

求思路,求代码,求链接........
[/Quote]
完全不用js 还真没有搞过
xuan.ye 2012-04-20
  • 打赏
  • 举报
回复
网上 有js 打开应用程序的代码

62,268

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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