2015-01-10 99 views
0

我有一個WPF應用程序,我打算用ClickOnce分發。我已經開發了好幾個月,現在我準備發佈了。一切正常開發計算機上的精細與Windows 7,.Net框架和4.51 VS 2013ClickOnce WPF應用程序使用HttpClient

但現在我測試的其他計算機上。應用程序啓動仍然正常,但開始後下一步就是與Web服務器同步並下載初始內容。它立即崩潰!

的Windows給了我一些問題的信息之前關閉應用程序:

Problem name:    CLR20r3 
    Problem signature 01:  myapplication.exe 
    Problem signature 02:  0.1.0.0 
    Problem signature 03:  54b1359b 
    Problem signature 04:  System 
    Problem signature 05:  4.0.30319.34238 
    Problem signature 06:  53e450ed 
    Problem signature 07:  2f90 
    Problem signature 08:  15d 
    Problem signature 09:  System.Net.Http.HttpRequest 
    OS version:     6.1.7601.2.1.0.256.48 
    Language variant-ID:  1053 
    Further information 1:  0a9e 
    Further information 2:  0a9e372d3b4ad19135b953a78882e789 
    Further information 3:  0a9e 
    Further information 4:  0a9e372d3b4ad19135b953a78882e789 

(左邊一欄是從瑞典由我翻譯的可讀性)

我尋找線索,但發現沒有什麼幫助。

測試計算機有Windows 7和.Net框架4.51。在Windows 8.1上發生同樣的問題。如預期在Windows \ Microsoft.NET \框架\ v4.0.30319

System.Net.Http.HttpRequest存在。

我可以配置提琴手檢測從.Net客戶端發送的流量?至於現在在兩臺機器上都沒有檢測到流量。

任何提示感謝!

通過檢查特定HttpRequestException我現在發現這個在內部異常:「無法連接到遠程服務器」我已經創建了一個Azure的網站的標準方式,並從WPF客戶端我稱之爲的WebAPI

。 ClickOnce配置了「這是完全信任的應用程序」。

從兩臺計算機上進行相同的調用。電腦在同一個本地網絡上。 Visual Studio在機器上的存在是否有所作爲?

+0

放入try/catch'es並將例外寫入文件。 http://logging.apache.org/log4net/ –

+0

是的,這當然是顯而易見的方式。但是我也沒有發現日誌非常有用。 當調用HttpClient的PostAsync方法我得到這個錯誤:在發送請求時發生了一個錯誤,在System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任務task) 在System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任務task) 在System.Runtime.CompilerServices.TaskAwaiter'1.GetResult() 在SongService.DomainServices.GenericRequestHandler。 d__4.MoveNext() 對此有何建議? –

+0

對不起所有的爛攤子。最初的問題是由錯誤的配置造成的...... :(建議的Fiddler defaultProxy下面的建議實際上導致了所有其他問題。當配置正確,defaultProxy被移除時,一切都很好! –

回答

0

要訂購提琴手捕捉流量增按照您的客戶端程序」配置文件配置,或者你可以選擇的方案選擇,如果你想添加它。

<system.net> 
    <defaultProxy enabled = "true" useDefaultCredentials = "true"> 
     <proxy autoDetect="false" bypassonlocal="false" proxyaddress="http://127.0.0.1:8888" usesystemdefault="false" /> 
    </defaultProxy> 
</system.net> 
+0

我試過了,但它仍然沒有顯示任何東西Fiddler,甚至不在開發者機器上...... –

+0

你有可能將HttpRequest的代理屬性設置爲null嗎?如果是這樣,那麼不要將它設置爲null。還有一件事你可以嘗試啓用System.Net跟蹤。這[鏈接](http://msdn.microsoft.com/en-us/library/ty48b824(v = vs.110)。aspx)如何啓用跟蹤。日誌文件將生成在與程序相同的目錄中。 –

相關問題