启动浏览器并从winform应用程序传递数据

时间:2010-07-06 14:52:51

标签: c# winforms

我有一个winform应用程序需要在新的浏览器窗口中打开一个URL并将数据传递给它。此外,数据太大,无法通过查询字符串参数。 有没有办法启动新的浏览器实例并以某种方式将数据作为表单数据或会话传递?

6 个答案:

答案 0 :(得分:0)

不完全是您的问题的答案,但您可以在窗口中嵌入IE控件并轻松处理代码。 请参阅:http://msdn.microsoft.com/en-us/library/2te2y1x6%28v=VS.85%29.aspx

答案 1 :(得分:0)

假设您可以控制您发送的网站,我会使用RandomNoobs建议。 将数据传递到数据存储区,并使用该数据的唯一ID。在查询字符串中传递该id,您可以从查询字符串中获取具有唯一ID的数据。

答案 2 :(得分:0)

我不知道这是否会有所帮助,但这就是我的意思。

  1. 构建参数,并将它们存储到参数数据表中,该数据表将用于从Web浏览器的页面获取参数;
  2. 启动浏览器并传递一些参数值,可以是Id,也可以用于识别您的完整参数以查询底层数据库;
  3. 从您在浏览器中打开的网页中,收集用于查询参数表的值,并进行查询;
  4. 检索参数并为会话执行所需的工作。
  5. 编辑#1

    如果这是一个XML表示,只需将此XML表示保存到XML文件中并将其放入共享磁盘存储中,以便您可以打开该文件并从Web应用程序中读取它。

    也许Serialization在这里很有用。

    希望这有帮助! =)

答案 3 :(得分:0)

您可以使用数据库存储对象

答案 4 :(得分:0)

1)通过您选择的持久性方法(很可能是SQL数据库)存储您的对象

2)检索唯一标识数据库中该对象的密钥(可能是主键,无论是自动递增整数还是GUID)

3)通过查询字符串

将该密钥传递给网页

4)让页面从数据库中加载该对象。

5)......?

6)利润!

答案 5 :(得分:0)

Link =“http://aaa.com/asdas.exe”例如。你可以这样使用。

System.Diagnostics.Process p = new System.Diagnostics.Process();

   p.StartInfo.FileName = "\"" + Link + "\"";
   p.StartInfo.UseShellExecute = true;
   p.Start();