0

我有一個問題,我無法解決兩天。HttpWebResponse:Windows服務與控制檯應用程序

在一個控制檯應用程序,此代碼工作正常:

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. 

因此,如果ServiceInstaller我無法連接到數據庫,否則,如果我設置帳戶爲LocalSystem我可以打開連接到數據庫,但我不能使用GetResponse()組帳戶用戶。

所以問題是,我應該怎麼做,當一切都放在Windows終端服務器?

我想可能會有一些與管理權限搞砸的東西。我能做些什麼來解決這個問題?再次感謝。

回答

1
默認LocalSystem帳戶下

Windows服務運行的應用程序,而您的控制檯應用程序,您的用戶帳戶,因此,你可能會滿足權限問題(Windows防火牆?)下運行

你應該在管理員帳戶下運行服務看看這是否能解決你的問題。

相關問題