C#: Откройте браузер и POST к URL из настольного приложения окон

У меня есть маленькое приложение WPF (хотя я предполагаю, что действительно не имеет значения, является ли это формой wpf или приложением веб-формы?), что я хочу иметь, запускают новое окно браузера и POST к определенному URL. Я бездельничал с:

System.Diagnostics.Process.Start("http://myurl.com");

для запуска окна, но я не думаю, что могу использовать тот же процесс для фактической регистрации на URL... Я также экспериментировал с HttpWebRequest, но я хотел бы, чтобы пользователь смог использовать приложение после того, как я отправил на этот URL, не только показывают им результаты... На что я могу посмотреть к способному, чтобы сделать что-то вроде этого?

8
задан Dave Clemmer 5 September 2011 в 17:33
поделиться

4 ответа

Есть несколько решений , не уверен, какой из них подойдет вам лучше всего ...

  1. Продолжите свой исходный подход
  2. Вставьте элемент управления веб-браузера в свое приложение, как предложено в других ответах
  3. Делайте все программно «за кулисами»

Для № 3 вы можете посмотреть здесь: http://geekswithblogs.net/rakker/archive/2006/04/21/76044.aspx

Если вы хотите выбрать № 1 - лучше сложно, поскольку вам нужно управлять внешним приложением, и разные браузеры будут вести себя по-разному.

Я использовал протокол «javascript:» и приведенный ниже код с IE в качестве браузера по умолчанию при работе с одним «недружелюбным к пользователю» приложением. Обратите внимание, что это не "

3
ответ дан 5 December 2019 в 07:35
поделиться

Вы можете создать скрытый элемент управления WebBrowser и выполнить Navigate () (используя перегрузку, которая позволяет вам указать метод запроса). Вам нужно будет указать целевой фрейм «_blank», чтобы навигация происходила в новом окне браузера.

3
ответ дан 5 December 2019 в 07:35
поделиться

Используйте вместо него класс WebBrowser .

5
ответ дан 5 December 2019 в 07:35
поделиться

Прямого способа сделать это нет. Что вы можете сделать, так это сгенерировать HTML-страницу с формой, заполненной данными, которые вам нужно опубликовать, и небольшим количеством javascript для автоматической публикации страницы при ее загрузке. Затем вам просто нужно открыть эту страницу в браузере ...

Сгенерированный HTML-код может выглядеть так:

<html>
<head>
<script language="Javascript">
function submitForm() {
    var theForm = document.getElementById("theForm");
    theForm.submit();
}
</script>
</head>
<body onload="submitForm()">
<form id="theForm" action="http://myurl.com" method="POST">
    <input type="text" name="username" value="myusername"/>
    <input type="password" name="password" value="mypassword"/>
</form>
</body>
</html>

Если страница должна отображаться в вашем приложении, загрузите ее в элемент управления WebBrowser

11
ответ дан 5 December 2019 в 07:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: