vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Schützen Sie Ihre Software vor Software-Piraterie - mit sevLock 1.0 DLL!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
VB.NET - Dienst auf API zugreifen 
Autor: Dorni
Datum: 06.06.08 12:14

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(Mail Item oMailItem, String& strFileName)
bei TobitArchiving.Archivierung.MailArchivierung() in O:\VisualStudio\Projekte\TobitArchiving\TobitArchi ving\Archivierung.vb:Zeile 64.
bei TobitArchiving.Archivierung..ctor(IApplication oApp, Account oAccount, String QuellArchiv, String Zielpfad, Int32 _Timer) in O:\VisualStudio\Projekte\TobitArchiving\TobitArchi ving\Archivierung.vb:Zeile 29.
bei TobitArchiving.TobitEmailArchivierung.OnStart(Stri ng[] args) in O:\VisualStudio\Projekte\TobitArchiving\TobitArchi ving\TobitEmailArchivierung.vb:Zeile 19.
bei System.ServiceProcess.ServiceBase.ServiceQueuedMai nCallback(Object state)
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
VB.NET - Dienst auf API zugreifen2.489Dorni06.06.08 12:14

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel