ek-soft FAQ

Wenn ich aus Notes über Automation (Comserver) wähle und DIALit ist noch nicht gestartet, wird DIALit kurz gestartet und sofort wieder beendet?

Notes kann Comobjekte nicht „einfach“ global verwalten (und wenn, würde bei jedem Notes-Start dialit32.exe staten, ob man will oder nicht…), darum wird in jeder Click Routine das Object odialer erzeugt und nach der Routine wieder automatisch durch Notes aufgelöst, deshalb beendet sich DIALit wenn es vorher nicht schon lief:

Sub Click(Source As Button)
Dim doc As NotesDocument
Dim col As notesdocumentcollection
Dim session As New NotesSession
Dim db As NotesDatabase
 Dim odialer As Variant
Set odialer = createobject(„dialit.cdialer“)
 Set db=session.currentdatabase
Set col=db.unprocesseddocuments
Set doc=col.getfirstdocument
odialer.dialnumber = doc.GetItemValue(„OfficePhoneNumber“)(0)
odialer.dialname = doc.GetItemValue(„LastName“)(0)
odialer.makecall
End Sub

Eine Möglicheit wäre zu prüfen, ob DIALit bereits läuft, wenn nicht dann dialit32.exe zu starten und dann erst das Comobjekt zu instantiieren:

Sub Click(Source As Button)

Dim doc As NotesDocument
Dim col As notesdocumentcollection
Dim session As New NotesSession
Dim db As NotesDatabase
Dim odialer As Variant

 Dim result As Integer
hwnd = FindWindowByTitle(0,“DIALit“)
If hwnd = 0 Then result = Shell(„c:\\program files\\cti\\dialit-client\\dialit32.exe“) Else result = 0
Set odialer = createobject(„dialit.cdialer“)

Set db=session.currentdatabase
Set col=db.unprocesseddocuments
Set doc=col.getfirstdocument
odialer.dialnumber = doc.GetItemValue(„OfficePhoneNumber“)(0)
odialer.dialname = doc.GetItemValue(„LastName“)(0)
odialer.makecall

End Sub

Dies müsste in allen Routinen, in denen odialer verwendet wird, wiederholt werden!

Damit Sie auf die Winapi Funktion FindWindowByTitle zugreifen können, muss je Sicht, Maske etc. diese Funktion in Globals in der Declaration deklariert sein:

Declare Function FindWindowByTitle Lib „user32“ Alias „FindWindowA“ (Byval lpClassName As Long, Byval lpWindowName As String ) As Long

Letzte Änderung am: 11.10.2014, 10:34 Uhr

Bitte klicken Sie hier, wenn Ihnen weitergeholfen wurde.
0 Personen finden diesen Beitrag hilfreich.


← zurück zum Suchergebnis"
Wir benutzen Cookies um die Nutzerfreundlichkeit der Webseite zu verbessen. Durch Ihren Besuch stimmen Sie dem zu.