2日間解決できなかった問題があります。
コンソール アプリでは、このコードは正常に機能します。
url="http://www.reuters.com/finance/currencies/quote?srcAmt=1.00&srcCurr=USD&destAmt=&destCurr=ASD&historicalDate=MMddyyyy"
HttpWebRequest req = WebRequest.Create(url) as HttpWebRequest;
req.Timeout = 3000000;
using (HttpWebResponse resp = req.GetResponse() as HttpWebResponse)
{
// ...
}
しかし、私の Windows サービスでGetResponse()は、「リモート名を解決できませんでした: 'www.reuters.com'」という例外がスローされます。
何が間違っているのかわかりません。おそらく何か間違った設定をしていServiceInstallerます。
正しい道を示してくれてありがとう、しかし追加の問題があります。
仮想マシンで作業しています (管理者権限はありますが、管理の経験はまったくありません)。
ユーザーのサービスインストーラーでアカウントを設定した場合 (およびログインの詳細を提供した場合)、データベース (Odbc) への接続に問題があります。接続を開くとスローされます:
ERROR [08001] [MERANT][ODBC Sybase driver]
Allocation of a Sybase Open Client Context failed.
Sybase normally generates a SYBINIT.ERR file containing more specific reasons for failing.\r\n
ERROR [01S00] [MERANT][ODBC Sybase driver]
Invalid attribute in connection string: Port.
したがって、Account User を設定ServiceInstallerすると DB に接続できません。それ以外の場合、Account を LocalSystem に設定すると、DB への接続を開くことはできますが、使用できませんGetResponse()。
問題は、すべてが Windows ターミナル サーバーに配置されている場合、どうすればよいかということです。
管理者権限に何か問題がある可能性があると思います。これを修正するにはどうすればよいですか? 再度、感謝します。