Das Notes Forum

Lotus Notes / Domino Sonstiges => Tools & Downloads => Thema gestartet von: Christopher am 21.03.05 - 07:21:52

Titel: VB Script zu LS Script convertieren!
Beitrag von: Christopher am 21.03.05 - 07:21:52
Hallo Entwickler, ich habe ein VB Script und möchte es in LS konvertieren nun gibt es ja in VB Werte wie Byte Boolean usw. wie mache ich da am besten Ls daus. Ich habe z.B. API aufruf aus VB um einen Screenshot zum machen und diesen würde ich gerne in LS einsetzen.

Hier die Funktion in VB

Public Declare Sub keybd_event Lib "user32" Alias "keybd_event" _
(ByVal bVk As Byte, ByVal bScan As Byte, _
ByVal dwFlags As Long, ByVal dwExtraInfo As Long)

'Die nachfolgende Prozedur erstellt das Screenshot
Public Sub MakeScreenshot(ByVal ActiveWindow As Boolean)

'Der Parameter ActiveWindow legt fest, ob ein Screenshot
'für das aktuelle Fenster (True) oder für gesamten
'Windows-Desktop (False)erstellt werden soll

Const KEYEVENTF_KEYUP = &H2
Const VK_MENU = &H12
Const VK_SNAPSHOT = &H2C

If ActiveWindow Then keybd_event VK_MENU, 0, 0, 0 ''ALT-Taste
keybd_event VK_SNAPSHOT, 0, 0, 0 ''Druck-Taste
keybd_event VK_SNAPSHOT, 0, KEYEVENTF_KEYUP, 0
If ActiveWindow Then keybd_event VK_MENU, 0, KEYEVENTF_KEYUP, 0
DoEvents
End Sub
Titel: Re: VB Script zu LS Script convertieren!
Beitrag von: diali am 21.03.05 - 07:57:44
aus "Public Declare" musst Du im LS "Declare Public" machen, dann sollte es funktionieren

Boolean stellt an deiser Stelle kein Problem dar. Alternativ könntest Du ein Variant übergeben.
Titel: Re: VB Script zu LS Script convertieren!
Beitrag von: Christopher am 21.03.05 - 08:30:32
Hm wenn müßte es als "Declare Function" deklariet werden und ich weiß nicht genau wie ich Byte konvertieren soll? Als Variant funktioniert es nicht.
Titel: Re: VB Script zu LS Script convertieren!
Beitrag von: diali am 21.03.05 - 08:38:36
Wieso Function? Du hast doch eine SUB!
Dass Byte funktioniert auch. Ich habe das Script so ähnlich am laufen und die Quelle ist auch VB.
Titel: Re: VB Script zu LS Script convertieren!
Beitrag von: Christopher am 21.03.05 - 09:08:50
Also ich bekomme die Fehlermeldung Class or TypeName not Found: Byte
Titel: Re: VB Script zu LS Script convertieren!
Beitrag von: animate am 21.03.05 - 09:19:37
liegt vermutlich daran, dass Christipher Notes 5 verwendet und diali Notes 6

Ich glaube, du kannst Byte und Boolean einfach durch Integer ersetzen
Titel: Re: VB Script zu LS Script convertieren!
Beitrag von: Semeaphoros am 21.03.05 - 09:35:46
Das ist richtig, R5 kennt weder Byte noch Boolean. Integer ist definitiv der korrekte Ersatz für Boolean, bei Byte müsste Integer ebenfalls funktionieren.
Titel: Re: VB Script zu LS Script convertieren!
Beitrag von: Christopher am 21.03.05 - 09:52:47
Danke an Diali und die anderen also mit integer hat es funktioniert.