![]() |
Tastenanschläge an Trillian senden
Hallo Community!
Ich bin gerade dran ein kleines Plugin zum Chatprogramm Trillian zu programmieren und wollte daher fragen, wie man Tastenanschläge (also beliebeige Strings) vom Delphiprog aus an Trillian senden kann. Kann mir jemand weiterhelfen? Gruss Luzi |
Re: Tastenanschläge an Trillian senden
Du musst das Handle des Trillian-Eingabefensters herausfinden und dann eine Nachricht (WM_KEYPRESS oder sowas) an das Handle senden. Zur Nachricht müsste die Suche eigentlich was bringen..
|
Re: Tastenanschläge an Trillian senden
wenn du trillian pro benutzt, das hat eh ein plug-in interface für ausgehende messages. musst mal die hilfe von trillian durchstöbern, da is ne doku über die schnittstelle drin...
|
Re: Tastenanschläge an Trillian senden
Zitat:
|
Re: Tastenanschläge an Trillian senden
Ok ... hab etwas herumgeforscht und bin jetzt auf folgenden Syntax gestoßen, der Luckies Vorschlag entspricht ;) :
Delphi-Quellcode:
hWndControl ist klar (mit "FindWindow") ...
SendMessage(hWndControl, WM_SETTEXT, wParam, lParam);
WM_SETTEXT ist auch klar ... Nur mit wParam und lParam komm ich nich so recht klar, wie verbau ich die? :/ Danke aber schonmal für bisherige schnelle Hilfe! :) |
Re: Tastenanschläge an Trillian senden
:hi:
Die PSDK sagt Parameters wParam This parameter is not used. lParam Pointer to a null-terminated string that is the window text. mfg Tobais |
Re: Tastenanschläge an Trillian senden
ok ... setz ich also wParam 0 ...
Und lParam ist die Eingabe, wie? Der Text soll per Edit eingegeben werden, wie schreib ich das dann? |
Re: Tastenanschläge an Trillian senden
SendMessage(hWndControl, WM_SETTEXT, 0, Edit1.Text);
|
Re: Tastenanschläge an Trillian senden
isses wohl doch nich
muss integer sein :/ ich brauch einen sogenannten "0-termininierten string" ... |
Re: Tastenanschläge an Trillian senden
integer? nen null-terminierter string is auch kein integer ^^
|
Re: Tastenanschläge an Trillian senden
Zitat:
SendMessage(hWndControl, WM_SETTEXT, 0, @Edit1.Text); |
Re: Tastenanschläge an Trillian senden
Soderle jetz hab ichs mal mit nem @ versucht, dann stand da: Variable erforderlich, also hab ich eine Variable eingesetzt jetz steh da: Inkompatible Typen: 'Integer' und 'Pointer'.
|
Re: Tastenanschläge an Trillian senden
einfach mal hilfe angucken und bissl die suche bemühen würde helfen...
Delphi-Quellcode:
oder so wie du es machen willst
SetWindowText(handle, PChar(Edit1.Text));
Delphi-Quellcode:
ganz correkt soltle es dann so aussehen
SendMessage(handle, WM_SETTEXT, 0, Integer(Edit1.Text));
Delphi-Quellcode:
wobei alles funktioniert
SendMessage(handle, WM_SETTEXT, 0, Integer(PChar(Edit1.Text)));
|
Re: Tastenanschläge an Trillian senden
Hi,
versuchs mal mit
Delphi-Quellcode:
mfG
SendMessage(hWndControl, WM_SETTEXT, 0, Integer(PChar(Edit1.Text)));
mirage228 |
Re: Tastenanschläge an Trillian senden
@Mirage228: Das Casten nach PChar kann eignetlich weg gelassen werden da ja dann eh wieder nach integer gecastet wird - aber so isses die verständnismäßig beste form. Und ich war schneller :mrgreen:
|
Re: Tastenanschläge an Trillian senden
Zitat:
Ich dachte ein direkter Cast von einem String --> Integer ergibt die ASCII Codes (Integer('A') = 65 z.B.) und bei Integer(PChar(Edit1.Text)) wird doch die Adresse (also der Pointer) in einen Integerwert umgewandelt... mfG mirage228 |
Re: Tastenanschläge an Trillian senden
nee, mit dem cast "Integer()" bewirkst du ja auch nur das die variable als Integer angesehen wird. Wenn du zum beispiel versuchst
Delphi-Quellcode:
wird das nicht gehen weil es incompatible typen sind.
var ab: array[0..2] of Char;
begin Integer(ab); Ein String ist ja eigentlich auch nur ein Pointer deswegen kann man den casten. oberes beispiel geht aber nicht zu casten weil "array[0..2] of Char" eine andere Structur im speicher hat als ein Integer Du kannst ja mal
Delphi-Quellcode:
probieren. da wird immer 4 ausgegeben weil ein string ein Pointer ist
showmessage(inttostr(sizeof(string)));
|
Re: Tastenanschläge an Trillian senden
tschuldigung :oops:
der Parameter hat mich nur so frustriert dass ich hingeschmissen hatte :/ naja das wollte ich wissen, vielen dank! noch eine frage: wie spreche ich das "edit1" des Chatprogramms an? |
Re: Tastenanschläge an Trillian senden
@Luzifer: Neue Frage neuer Thread. Allgemein kann man deine Frage allerdings mit "über das Handle des Edit's" beantworten
|
Re: Tastenanschläge an Trillian senden
Gut, dann eben neuer Thread...
Danke an alle für die Hilfe! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:30 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz