Das Notes Forum

Domino 9 und frühere Versionen => ND8: Entwicklung => Thema gestartet von: Tode am 04.05.11 - 13:33:27

Titel: Declare Function xxx Lib "user32" crasht Linux- Client
Beitrag von: Tode am 04.05.11 - 13:33:27
Ich habe eine Script- Library, die einige Funktionen wie oben deklariert.

Diese Deklarationen bringen (logischerweise) den Linux- Client zum Absturz.

Wie mache ich das, dass der diese Declarationen (und die entsprechenden Funktionen) nur ausführt, wenn ClientType = Windows?

Es handelt sich sowieso nur im Komfort- Funktionen, auf die die wenigen Linux- User dann halt verzichten müssten, bis ich einen Ersatz dafür gefunden habe...

Thanx
Tode
Titel: Re: Declare Function xxx Lib "user32" crasht Linux- Client
Beitrag von: eknori am 04.05.11 - 13:43:53
Das Declare sollte keine Probleme bereiten. Allerdings wird der Aufruf der Funktion den Client crashen.

Du kannst die WIN relevanten Teile z.B. mit einem

If isDefined("WINDOWS") Then
 ... Code
else
 ... mach nix

end if

entsprechend ausklammern
Titel: Re: Declare Function xxx Lib "user32" crasht Linux- Client
Beitrag von: Jeremias am 04.05.11 - 13:56:18
Und wenn Du dann OS-spezifische Funktionsaufrufe machen willst :
Code
Select Case s.Platform
Case "Windows/32":
'Aufruf der Windows-Funkton
Case "Macintosh":
'Aufruf der Mac-Funktion
Case "Linux":
'Aufruf der Linux-Funktion	
Case Else : Messagebox "CTI-Funktion auf dieser Plattform nicht unterstützt."
End Select		

Gruß
Titel: Re: Declare Function xxx Lib "user32" crasht Linux- Client
Beitrag von: Axel am 04.05.11 - 14:01:53
Eventuell hilft dir auch %If weiter.

Code
Dim winTitle As String * 80
%If WIN16                      ' 16-bit Windows
   Dim activeWin As Integer    ' Window handles are Integer.
   Declare Function GetActiveWindow% Lib "User" ()
   Declare Function GetWindowText% Lib "User" _
         (ByVal hWnd%, ByVal lpstr$, ByVal i%)
%ElseIf WIN32                  ' 32-bit Windows
   Dim activeWin As Long       ' Window handles are Long.
   Declare Function GetActiveWindow& Lib "User32" ()
   Declare Function GetWindowText% Lib "User32" _
          Alias "GetWindowTextA" _
      (ByVal hWnd&, ByVal lpstr$, ByVal i&)
%End If

Axel
Titel: Re: Declare Function xxx Lib "user32" crasht Linux- Client
Beitrag von: Tode am 04.05.11 - 17:05:50
Danke für die Zahlreichen Tipps, bin gerade dran das mal auszuprobieren... Ich dachte, ich müsste die Declares schon verhindern, die anderen Sachen waren mir (zumindest Teilweise) bekannt...

Thanx
Tode