
Ergebnis 1 bis 9 von 9
-
Mich gibt's schon länger
- 31.03.2012, 10:12
- #1
Hallo,
ich verwende im Programm einen WebClient mit dessen Hilfe ich einen Webservice abfrage.
Jetzt habe ich das Problem dass sobald ich einen Relese Stand auf das Smartphone bringe dieser nicht mehr funktioniert.
Ich komme ohne Probleme zu der Suche hin, gebe dort was ein und drücke dann auch Suchen. Die Suche endet aber nie, das gleiche funktioniert aber mit der Debug-Version einwandfrei.
Was mache ich falsch? Hat jemand eine Idee?
MfG Johann Löwen
-
entwickelt Apps
- 31.03.2012, 13:32
- #2
Irgendwo ein
#DEBUG
#endif
Drin?
Mit der kostenlosen PocketPC.ch App von meinem LG-E900 aus geschrieben.
-
Mich gibt's schon länger
- 31.03.2012, 15:09
- #3
Nein, habe ich nirgends verwendet.
---------- Hinzugefügt um 16:09 ---------- Vorheriger Beitrag war um 15:32 ----------
Ich habe mich mit hilfe von MessageBoxen an das Problem herangetatet. Es ist auf jeden Fall nicht der WebClient.
In der Methode "Private Sub WebClient_UploadStringCompleted(sender As Object, e As System.Net.UploadStringCompletedEventArgs)"
befindet sich folgender Code:
Code:Dim mediaItems As New Collections.ObjectModel.ObservableCollection(Of MediaItem)() Dim mediaItemElements As IEnumerable(Of Xml.Linq.XElement) = xdoc.Root.Element(xns + "Body").Element(xns1 + "GetXMLStructureResponse").Element("GetXMLStructureReturn").Descendants("item") Dim mediaItem = From item In mediaItemElements _ Select New MediaItem() With _ { _ .Altersfreigabe = item.Element("Altersfreigabe").Value, _ .AmazonID = item.Element("AmazonID").Value, _ .Ausstattung = item.Element("Ausstattung").Value, _ .Auszeichnungen = item.Element("Auszeichnungen").Value, _ .Bemerkung = item.Element("Bemerkung").Value, _ .Beschreibung = item.Element("Beschreibung").Value, _ .Bild3D = item.Element("Bild3D").Value, _ .BildAbtastung = item.Element("BildAbtastung").Value, _ .BildFarbe = item.Element("BildFarbe").Value, _ .BildFormat = item.Element("BildFormat").Value, _ .BildNorm = item.Element("BildNorm").Value, _ .CoverHaupt = item.Element("CoverHaupt").Value, _ .CoverSonstige = item.Element("CoverSonstige").Value, _ .CoverVorab = item.Element("CoverVorab").Value, _ .Cut = item.Element("Cut").Value, _ .Darsteller = item.Element("Darsteller").Value, _ .Drehbuch = item.Element("Drehbuch").Value, _ .DVDDB_ID = item.Element("DVDDB_ID").Value, _ .EAN = item.Element("EAN").Value, _ .Genre = item.Element("Genre").Value, _ .HiddenFeatures = item.Element("HiddenFeatures").Value, _ .ImdbID = item.Element("ImdbID").Value, _ .Indiziert = item.Element("Indiziert").Value, _ .Kamera = item.Element("Kamera").Value, _ .KinoReleaseDatum = item.Element("KinoReleaseDatum").Value, _ .Label = item.Element("Label").Value, _ .Laufzeit = item.Element("Laufzeit").Value, _ .Medium = item.Element("Medium").Value, _ .MediumBox = item.Element("MediumBox").Value, _ .MediumReleaseDatum = item.Element("MediumReleaseDatum").Value, _ .MediumReleaseLand = item.Element("MediumReleaseLand").Value, _ .MediumType = item.Element("MediumType").Value, _ .Musik = item.Element("Musik").Value, _ .ProdJahr = item.Element("ProdJahr").Value, _ .ProdLand = item.Element("ProdLand").Value, _ .Produzent = item.Element("Produzent").Value, _ .RCode = item.Element("RCode").Value, _ .Regie = item.Element("Regie").Value, _ .Schnitt = item.Element("Schnitt").Value, _ .Szenenfotos = item.Element("Szenenfotos").Value, _ .Titel = item.Element("Titel").Value, _ .TitelDeutsch = item.Element("TitelDeutsch").Value, _ .TitelOriginal = item.Element("TitelOriginal").Value, _ .TitelZusatz = item.Element("TitelZusatz").Value, _ .TonFormat = item.Element("TonFormat").Value, _ .Trailer = item.Element("Trailer").Value, _ .Untertitel = item.Element("Untertitel").Value, _ .UntertitelHG = item.Element("UntertitelHG").Value, _ .Verleihversion = item.Element("Verleihversion").Value} MessageBox.Show("1") Try For Each mi As MediaItem In mediaItem MessageBox.Show("2") mediaItems.Add(mi) Next Catch ex As Exception MessageBox.Show("3") End Try MessageBox.Show("4") RaiseEvent SearchCompleted(Me, New DVDDBEventArgs(True, mediaItems))
-
Mich gibt's schon länger
- 01.04.2012, 09:48
- #4
So, habe ein paar neue Erkentnisse aber auch wieder ein ppar Fragen. Zuerst war ich sehr verwundert das ich im Release-Mode auch Debuggen kann. Dies hat mir aber sehr weiter geholfen wobei aber sachen aufgetreten sind die ich nicht verstehe.
Das Einfrieren findet in dieser Zeile statt:
Code:.CoverHaupt = item.Element("CoverHaupt").Value, _
Code:Private _CoverHaupt As String = String.Empty Public Property CoverHaupt As String Get Return _CoverHaupt End Get Set(ByVal value As String) If Not String.IsNullOrEmpty(value) Then _CoverHaupt = CleanValue(value) If Not String.IsNullOrEmpty(_CoverHaupt) Then If Not App.Cache.FileExists("cover_" & _CoverHaupt & ".jpg") Then App.Cache.DownloadFile("http://www.domain.de?idc=" & _CoverHaupt & "&size=135", "cover_" & _CoverHaupt & ".jpg", AddressOf DownloadCompleted) Else RaiseEvent PropertyChanged(Me, New PropertyChangedEventArgs("CoverHauptImage")) End If End If RaiseEvent PropertyChanged(Me, New PropertyChangedEventArgs("CoverHaupt")) End If End Set End Property
Code:Private Sub DownloadCompleted(ByVal e As Cache.DownloadCompletedEventArgs) If Not e.Success Then _UseCoverHauptImageUri = True End If RaiseEvent PropertyChanged(Me, New PropertyChangedEventArgs("CoverHauptImage")) End Sub Public Function FileExists(ByVal fileName As String) As Boolean Dim res As Boolean = False If Not fileName.StartsWith(CACHEDIR) Then fileName = IO.Path.Combine(CACHEDIR, fileName) End If Try Using isoStore As IO.IsolatedStorage.IsolatedStorageFile = IO.IsolatedStorage.IsolatedStorageFile.GetUserStoreForApplication() If isoStore.FileExists(fileName) Then res = True End If End Using Catch ex As Exception End Try Return res End Function Public Sub DownloadFile(ByVal uri As String, ByVal fileName As String, methode As Action(Of DownloadCompletedEventArgs)) If Not fileName.StartsWith(CACHEDIR) Then fileName = IO.Path.Combine(CACHEDIR, fileName) End If If (Microsoft.Phone.Net.NetworkInformation.DeviceNetworkInformation.IsNetworkAvailable) Then Using isoStore As IO.IsolatedStorage.IsolatedStorageFile = IO.IsolatedStorage.IsolatedStorageFile.GetUserStoreForApplication() If isoStore.AvailableFreeSpace > 1048576 Then Dim webClient = New WebClient() webClient.OpenReadAsync(New Uri(uri), New DowloadHelper(fileName, methode)) AddHandler webClient.OpenReadCompleted, AddressOf WebClient_OpenReadCompleted End If End Using End If End Sub Private Sub WebClient_OpenReadCompleted(ByVal sender As Object, ByVal e As OpenReadCompletedEventArgs) If e.Error Is Nothing Then Dim fileName As String = DirectCast(e.UserState, DowloadHelper).FileName Dim str As IO.Stream = e.Result Try Using isoStore As IO.IsolatedStorage.IsolatedStorageFile = IO.IsolatedStorage.IsolatedStorageFile.GetUserStoreForApplication() DeleteFile(fileName) Dim buffer As Byte() = New Byte(1023) {} Using isoStorStr As IO.IsolatedStorage.IsolatedStorageFileStream = isoStore.OpenFile(fileName, IO.FileMode.CreateNew) Dim bytesRead As Int32 = str.Read(buffer, 0, 1024) While (bytesRead > 0) isoStorStr.Write(buffer, 0, bytesRead) bytesRead = str.Read(buffer, 0, 1024) End While isoStorStr.Flush() End Using End Using Catch ex As Exception End Try End If Try If DirectCast(e.UserState, DowloadHelper).Methode IsNot Nothing Then Dim fileName As String = DirectCast(e.UserState, DowloadHelper).FileName DirectCast(e.UserState, DowloadHelper).Methode(New DownloadCompletedEventArgs(e.Error Is Nothing, fileName)) End If Catch ex As Exception End Try End Sub
Wenn ich debugge komme ich bis zu dieser Zeile:
Code:If Not App.Cache.FileExists("cover_" & _CoverHaupt & ".jpg") Then
Sobald er versucht die Zeile abzuarbeiten, wird das Visual Studio ausgelastet. Nach einer Zeit, etwa 30-45 Sekunden bekomme ich eine OutOfMemoryException.
Warum denn das da wird doch nix besonderes gemacht, oder?
Und warum dies nur im Release und nicht im Debug-Modus?
-
Mich gibt's schon länger
- 01.04.2012, 17:04
- #5
So es funktioniert nun.
ich habe zwar nicht wirklich verstanden was da genau falsch war aber ich habe es nun so umgeschrieben das es funktioniert.
MfG Johann Löwen
-
Gehöre zum Inventar
- 02.04.2012, 08:04
- #6
Könnte schlicht und ergreifend ein Compiler-Fehler sein. Hatten so ein Problem mal mit .Net 1.1 und einem Switch-Statement - da hat die Optimierung irgendwie zu einem Fehler geführt (und damit taucht das im Debug-Code dann auch nicht auf, weil dort einiges an Optimierungen nicht passiert).
-
Mich gibt's schon länger
- 03.04.2012, 21:48
- #7
Ist natürlich möglich. Das lehr einen nicht immer allen im Debug-Modus zu machen.
-
Gehöre zum Inventar
- 03.04.2012, 23:07
- #8
Na ja, solche Probleme sind letzten Endes selten (sonst wären sie bei Microsofts Tests aufgefallen). Da muss oft einiges zusammenkommen. Aber natürlich schadet es nicht das ganze nochmal im Release zu testen bevor man es in den Market lädt.
-
Mich gibt's schon länger
- 03.04.2012, 23:11
- #9
Habe es zum Glück nur als Beta hochgeladen.
Ähnliche Themen
-
Tastatur funktioniert nicht richtig
Von daywalker266 im Forum HTC HD7Antworten: 0Letzter Beitrag: 18.12.2011, 15:08 -
Funktioniert nicht richtig
Von amomhrer im Forum Sony Ericsson Xperia X10Antworten: 1Letzter Beitrag: 16.06.2011, 16:13 -
Wetter funktioniert nicht richtig
Von Clemens1 im Forum HTC HD2 KommunikationAntworten: 0Letzter Beitrag: 09.08.2010, 21:14 -
HTC TP erkennt MicroSD-karte nicht richtig und Mediaplayer funktioniert nicht richtig
Von Max Snake im Forum HTC Touch ProAntworten: 4Letzter Beitrag: 01.05.2009, 07:32 -
E-Mail funktioniert nicht richtig
Von Unregistriert im Forum HTC Touch DiamondAntworten: 15Letzter Beitrag: 20.04.2009, 12:43
Pixel 10 Serie mit Problemen:...