dennis_dorni Geschrieben 6. Juni 2008 Teilen Geschrieben 6. Juni 2008 (bearbeitet) Hallo, ich will einen Dienst erstellen der mit der Tobit API zusammen arbeiten soll. Dafür habe ich als grundlage das Beispiel aus der API hilfe genommen. Diese Funktion läuft auch bei mir, nun wollte ich das Programm als Windows Dienst laufen lassen und da bekomme ich immer die Fehlermeldung ganz unten in meinem Beitrag in der geht es um die Funktion DVEmlFromMailItem. Hat jemand eine Idee warum die Funktion in meinem Programm super läuft aber in meinem Dienst nicht? Public Declare Function DVEmlFromMailItem Lib "DvApi32" (ByVal oMailItem As Object, ByVal strFileName As String) As Long Public Sub MailArchivierung() Dim oApp As Object Dim oAccount As Object Dim oArchive As Object Dim oMailItem As Object Dim oMessageItems As Object Dim Filename, Zielpfad As String Dim i As Integer oApp = CreateObject("DVOBJAPILib.DvISEAPI") oAccount = oApp.Logon("####", "####", "####", "", "", "AUTH") oArchive = oAccount.GetArchive("System/Archivieren/in") oMessageItems = oArchive.AllItems For i = 0 To oMessageItems.Count - 1 If oMessageItems.Item(i).Type = 2 Then oMailItem = oMessageItems.Item(i) Filename = Space(255) If DVEmlFromMailItem(oMailItem, Filename) <> 0 Then Filename = Filename.Remove(Filename.IndexOf(".tmp") + 4, 1).Trim.ToCharArray Zielpfad = "C:\Test\" & CreateFileName() & ".eml" If System.IO.File.Exists(Filename.Trim) Then My.Computer.FileSystem.CopyFile(Filename.Trim, Zielpfad.Trim, True) End If End If End If Next oArchive = Nothing oMailItem = Nothing oMessageItems = Nothing Filename = Nothing Zielpfad = Nothing End Sub Der Dienst kann nicht gestartet werden. System.AccessViolationException: Es wurde versucht, im geschützten Speicher zu lesen oder zu schreiben. Dies ist häufig ein Hinweis darauf, dass anderer Speicher beschädigt ist. bei TobitArchiving.Archivierung.DVEmlFromMailItem(MailItem oMailItem, String& strFileName) bei TobitArchiving.Archivierung.MailArchivierung() in O:\VisualStudio\Projekte\TobitArchiving\TobitArchiving\Archivierung.vb:Zeile 64. bei TobitArchiving.Archivierung..ctor(IApplication oApp, Account oAccount, String QuellArchiv, String Zielpfad, Int32 _Timer) in O:\VisualStudio\Projekte\TobitArchiving\TobitArchiving\Archivierung.vb:Zeile 29. bei TobitArchiving.TobitEmailArchivierung.OnStart(String[] args) in O:\VisualStudio\Projekte\TobitArchiving\TobitArchiving\TobitEmailArchivierung.vb:Zeile 19. bei System.ServiceProcess.ServiceBase.ServiceQueuedMainCallback(Object state) Bearbeitet 6. Juni 2008 von dennis_dorni Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.