0

aspまたはwindowsサービスがどのように機能するかについて私は何かを理解していないと思います。

asp.netプロジェクトでスケジュールされたレポートを作成しようとしています。現在、ローカルマシンでWindowsサービスを実行していますが、後で専用サーバーで実行されます。数分ごとにASPページを要求することになっています。要求されると、現在、Webページはpage_loadで私に電子メールを送信します。これは、WindowsサービスでWebページを呼び出すために使用するコードです。

HttpWebRequest request= (HttpWebRequest)WebRequest.Create(address);
request.Method = "GET";
response = request.GetResponse();
reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
result = reader.ReadToEnd();

私もすべてのステップでサービスから私に電子メールを送ってきたので、私はそれがここまで進んでいることを知っています。ただし、サービスがページを要求した場合、Webページは何もしません。aspページのアドレスをブラウザに貼り付けると、ページからメールが届きます。ASP.NET Webサイトは、コンピューター上でVSデバッグモードで実行されています。サービスは最初にブラウザを開く必要がありますか?

ページを機能させるためにブラウザーが必要な場合、ブラウザーを定期的に開かずにaspプロジェクトでコードを実行する方法はありますか?

4

2 に答える 2

1

あなたは(ほとんど)Windowsサービスからブラウザを開くことができません、そしてこれをするのは間違っています。メール送信をサービスに移動できますか?

于 2013-03-25T21:13:48.870 に答える
1

タスクスケジューラを使用してWebページを呼び出すだけです。

//Create a new scheduled task to open a browser eg: internet explorer then right
//click properties, in the run window type in with the quotes an example
"C:\Program Files\Internet Explorer\iexplore.exe" "http://www.mywebsite.com/something/myactionpage.chtml" 
//If you want to open the page with another browser, just change the first path

またはそのような

Windowsサービスで使用するのに最適なタイマー

于 2013-03-25T21:20:14.433 に答える