Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: Till_21 am 15.05.02 - 13:58:53

Titel: Private User Information cleared per Script?
Beitrag von: Till_21 am 15.05.02 - 13:58:53
Hi zusammen,
Weiss jmd zufällig wie ich per Script dasselbe erzwingen kann wie das Drücken auf F5 ?
Danke im vorraus, Till
Titel: Re: Private User Information cleared per Script?
Beitrag von: eknori am 15.05.02 - 14:19:26
schau mal in der designer hilfe nach SendKeys statement
Titel: Re: Private User Information cleared per Script?
Beitrag von: grosses.manitu am 15.05.02 - 17:38:09
Waere noch hilfreich, wenn man wuesste, wo Du dieses Refresh willst. In einer Ansicht, in einem Dokument, etc.
Titel: Re: Private User Information cleared per Script?
Beitrag von: eknori am 15.05.02 - 18:46:17
Kannst du auch mit Formel machen

@Command([ToolsUserLogoff]);

oder du setzt in den Vorganeb bei "ID sperren, wenn..." einen Wert ein.

Hinweis: Das @Command läuft weder mit Evaluate noch, wenn du dir einen Agent strickst und den dann per Script aufrufst.
Ich tauche gleich mal in die Notes API ab; da gibt es bestimmt was  ;D ;D

eknori
Titel: Re: Private User Information cleared per Script?
Beitrag von: eknori am 16.05.02 - 07:47:21
So, hab ich's doch noch geschafft, das Script Äquivalent zu @Command([ToolsUserLogoff]) zu programmieren

'*// Dies kommt in die Declaration Sektion
Const VK_F5 = &H74
Const KEYEVENTF_KEYDOWN = &H0000
Const KEYEVENTF_KEYUP = &H0002

Declare Sub WIN32_KeyBoardEvent Lib "User32" Alias "keybd_event" ( Byval bVirtualKey As Integer , Byval bScanCode As Integer , dwFlags As Long , dwExtraInfo As Long )

'*// hier die eigentliche Routine
Sub Logoff ( )
     Dim ModuleName As String
     ModuleName = {Logoff}
     On Error Goto ErrorHandler
     WIN32_KeyBoardEvent VK_F5 , 0 , KEYEVENTF_KEYDOWN , 0
     WIN32_KeyBoardEvent VK_F5 , 0 , KEYEVENTF_KEYUP , 0
     Exit Sub
ErrorHandler:
     Select Case fnErrorHandler ( Error$ , Err , Erl , ModuleName )
     Case 0
           Exit Sub
     Case 1
           Resume Next
     Case Else
           Resume Next
     End Select
End Sub

'*// und noch ein bisschen Fehlerbehandlung  
Function fnErrorHandler ( strErrorText As String , lngErrorNumber As Long , lngErrorLine As Long , strModuleName As String ) As Integer
     Print ( {ERROR: } + strErrorText + { (Nr.: } + Cstr ( lngErrorNumber ) + {, Line: } + Cstr ( lngErrorLine ) + {, Module: } + strModuleName + {)} )
     fnErrorHandler = 1
End Function

Und so wird das ganze dann aufgerufen :

Sub Click(Source As Button)
     Call Logoff
End Sub