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

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

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

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

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

我不知道这是否会有所帮助,但这就是我如何去做。

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

编辑#1

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

也许Serialization在这里很有用。

希望这可以帮助! =)

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

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

3)通过查询字符串将该密钥传递给网页

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

5)……?

6)利润!

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

 System.Diagnostics.Process p = new System.Diagnostics.Process(); p.StartInfo.FileName = "\"" + Link + "\""; p.StartInfo.UseShellExecute = true; p.Start();