FAQ 3
=====

---> Question

Die "F6" Taste öffnet ein neues Dialogfenster. Anschliessend ist
dann der {/APP.TOFRONT Bewege*} notwendig, damit weitere Tastenanschläge
simuliert werden können.
Frage: ist es möglich auf das neue aktive Dialogfenster zu wechseln ohne
den Titel des neuen Dialogfensters im Makro angeben zu müssen.

H.A. 9/01

---> Answer

Probieren Sie mal die Commands:
{/BTCH.RETRIEVEFOCUS}
{/BTCH.WAIT.TOP title[,t]}

--------------------------------------------------------------------

---> Question

I would like to be able to click on a RemoteKey button to
expand and contract the rows.  I have one profile that has
three rows, but I only need the top row continuously.  It
would be nice to be able to switch from 1 to 3 rows and
back, and have the program adjust itself so that the last
row would be positioned to begin where the single row was
located.


                               row1.....
                               row2.....
row1.....  (and after click)   row3.....

J.B. 9/01

---> Answer

You are right there is no command which makes this job.
The only one you can do is, to use 2 profiles for this function.
It could be helpful to use the commands
{/ME.PROF2.INC}
{/ME.PROF2.DEC}
These cammands switches to another profile without changing
the window position of RK. Maybe it is helpful or not but the
2nd feature of these cammds is an auto-switch back to the main
profile after a click.

--------------------------------------------------------------------

---> Question

Das Profilfenster lässt sich zwar auf
den zweiten Bildschirm schieben, wird aber bei Neuaufrufen (automatisch
durch Profil-Schaltung) immer auf den ersten zurückgestellt.

W.K. 9/01

---> Answer

Ich habe in RK eine Sicherung eingebaut, die beim Programm-Start garantiert,
daß das RK-Fenster immer im sichtbaren Bildschirmbereich geöffnet wird.
Und das hat folgenden Grund.
Wenn die RK-Fensterposition mit einer hohen Bildschirmauflösung gespeichert
wird und RK später mit einer niedrigeren Auflösung gestartet wird, wäre das
RK-Fenster andernfalls nicht mehr sichtbar und der User weiß warscheinlich
nicht einmal wieso, was ist passiert?
Dieser Umstand ist übrigens gar nicht mal so selten, denn viele User
übertragen ihre Profiles.dat auf ihren Laptop und schon ist´s passiert.

--------------------------------------------------------------------

---> Question

Ich kann leider nicht herausfinden, wie sich der Befehl für das Umschalten der
Fenster (Alt/Tab) eingeben lässt. 
C.L. 9/01

---> Answer

Sie können das Tab-Fenster (so nenne ich es mal) mit folgender Sequenz öffnen: 
{/CODE.KEYDWN 18}{/CODE.KEYDWN 9} 

Zum Schließen legen Sie folgende Sequenz auf die "Rechter Mausknopf"-Ebene oder eine andere Taste: 
{/CODE.KEYUP 9}{/CODE.KEYUP 18} 

Aber das Ganze scheint etwas nutzlos, denn das Durchsteppen mittels RK scheint nicht 
zu funktionieren. Denn in dem Augenblick, in dem Sie bei offenem Tab-Fenster auf einen 
RK-Knopf klicken wird das RK-Fenster aktiviert und das Tab-Fenster folglich deaktiviert. 
Und ein anderes aktives Fenster als sich selbst läßt dieses Tab-Fenster anscheinend nicht 
zu und schließt sich deshalb.

--------------------------------------------------------------------

---> Question

I start a macro iterated for 10-20 thousand times making
mouse clicks and keystrokes. It takes up to 12 hours for 20000 iterations.
The macro involvs 2 programmes. It is just copying of text from one to the
other.

But often I need to interrupt the process and make some actions.

Now I am forced (by my ignorance) to press Ctrl-Alt-Del and log off :(

DOES THERE EXIST A SAFE (NORMAL, AUTHORIZED, PROVIDED in RK) METHOD
TO STOP A RUNNING MACRO ? (For example, a key combination etc)

P.K. 10/01

---> Answer

If something was send to another application, RK lost the influence to the
material.
But if you work with a loop running in a script you can use the stop command:
{/BTCH.STOP}
It should be in the beginning of the script.

The stop command works only as a "stand alone" command {/BTCH.STOP}
without any parameters.
It shows a stop requester. You can click onto the stop button or
(if the requester has the focus) you can press the enter key.
I think it will work.

--------------------------------------------------------------------

---> Question

Ich möchte einen mehrzeiligen Text hinterlegen.
Remote Keys unterscheidet hier leider nicht zwischen einem 
Zeilenumbruch mit der Enter-Taste und einem Zeilenumbruch mit 
Shift+Enter. Beim einfügen in formatierte Absätze wäre das aber 
sehr wichtig.

---> Answer

Derzeit kann ich nur vorschlagen, entsprechende Commands per Hand an
den gewünschten Stellen einzufügen ( {/CODE.ASC 10} etc), was sich
natürlich nur bei oft benötigten und sich nicht ändernden Texten lohnt.
Als kleines Helferlein liegt dem Programm CheckASC im App-Ordner bei.

--------------------------------------------------------------------

---> Question

I use hide at mouse position.

When it is hidden and I recall it, it is not shown at its stored position
but for example:

I´ve chosen the left upper corner, the window is shown at the most left
upper position.

---> Answer

The RK window should allways open at the saved position except:
1. The window was manually pushed to another place before.
2. The screen resolution was changed so the window would open in an invisible area.
3. The function "open at mouse pointer pos." (in hide at mouse pos. dialog) is switched on.

--------------------------------------------------------------------

---> Question

Eine Option vermisse ich allerdings (oder bin ich zu blind?):

Im Kontextmenü des Systrays gibt es die Option "Verbergen -> nach
Knopf-Klick", die ich standardmäßig einstelle. So habe ich zusammen mit "bei
Mausposition verbergen" das Programm immer schön im Hintergrund. Allerdings
finde ich nirgends eine Möglichkeit, diese Einstellung ("Verbergen -> nach
Knopf-Klick") fest zu speichern. Nach jedem Starten muss ich das manuell
machen (oder mit RemoteKeys über die Maus). Es wäre schön, wenn sich diese
Option in den Einstellungen fest speichern ließe.

Ansonsten habe ich manchmal Probleme unter W2k, Fenster "onTop" zu bekommen,
z.T. auch mit einigen Programmen (z.B. mIRC, das sich überhaupt nicht
"onTop" bringen läßt).

J.F.

---> Answer

Das autom. Anschalten der Verbergen...-Funktion
ist ein sehr konstruktiver Vorschlag, der mich veranlaßte, ihn sogleich in die
Tat umzusetzen.
Es gibt nun in der aktuellen Version 6.3.7 (Stand 10/01) die Commands
ME.CLICKHIDE.ON bzw. /-OFF, mit denen man die Funktionen ein- und
ausschalten kann. Somit ist es in Verbindung der Start-Funktion (im
Einstellfenster) "Autom. Knopf-Klick" möglich, einen mit dem ON-Command belegten
Knopf beim Programmstart zu starten. Damit tritt der von Ihnen gewünschte
Effekt ein. Event. kommt später mal eine Einstell-Funktion in den Einstellungen hinzu.

Zu den Fenstern, die sich z.T. nicht nach vornschalten lassen, läßt sich
folgendes sagen. Das habe ich auch gelegentlich festgestellt. Vermutlich lassen sich
einige Programme nicht ins Handwerk fuschen. Z.Zt. auch nicht möglich zu schalten sind
Unterfenster (Child) von sogenannten MDI-Fenstern (Parent), quasi Fenster in
Fenster. Hierbei wird immer das Parent-Fenster angesprochen.

--------------------------------------------------------------------

---> Question

I have one question though, which is that I have set a button up to open Outlook 97 (on a Win2000 machine), then open up a
.pst file on my D: drive.  After running I've set it to shut RemoteKeys down.  The button works fine if I click on it, but I want it to run automatically when RemoteKeys is started.  I've set preferences to trigger this
button.  Now when I launch Remotekeys it plays through the macro and shuts down, BUT then it launches itself again and re-runs the macro again and again and again!  I keep looking but can't figure out why.  Could
you please let me know why this is?  I've included the macro commands below.

{/APP.ACTIVATION.ON}
{/APP.OPEN "C:\Program Files\BBC Desktop\EMail.exe"}
{/APP.TOFRONT *Outlook*}
{/BTCH.DELAY 2}
{HOLD.ALT}fop
{HOLD.ALT}n
D:\Exchange\Archive.pst{KEY.ENTER}
{/ME.QUIT}

---> Answer

You are right, it don´t works. The reason is the Quit command only. 
That meens if you create a button with only the Quit command and you 
define this button for the Auto-Click option RK will restart again. 
But not realy from disk. It starts itsself without exit before - I hope you understand. 
I am not absolutly sure why this happens but the reason seems to be that the Quit 
command comes in a moment that it should not be possible to exit RK because there 
are a series of other commands to execute which has more priority. 
In your case this fact is a drawback. But in other cases, for other user, this could be a benefit. 
Please note! If somebody makes experiments with RK and he wants to exit it automaticly after 
start, he will never get the chance to change his profile again!! I can set the parameter off manually 
in the profiles.dat with an editor, but another user can put his profiles.dat into the trash. 
Therefore - I hope you understand - I think it is better that this option is not available. 

But another small point when I saw your script. 
1. ACTIVATION.ON is required only if it was switched off with ACTIVATION.OFF in the 
same script before. This is because ACTIVATION.ON is the default setting. Without this default 
setting RK would not work in 95% of all cases. 
2. If you are listing the commands line by line, you must use the command {/BTCH.EXPLICIT} 
at the beginning of the script. Otherwise you will produce a lot of Carriage Returns at the end 
of each line. 

--------------------------------------------------------------------

---> Question

Ich habe eine TEXT Datei die etwa so aussieht :

- START
data11,data12,data13,....
data21,data22,data23...
data31,data32,data33....
....
usw
- END

Ich habe auch ein Formular mit einige Felder.

Ich will mein Formular mit Daten aus meinem TEXT Datei ausfühlen und zwar
automatisch (oder semi-automatisch).  Die erste Linie in meinem TEXT Datei
soll den ersten Formular mit daten beschtücken. Danach kommt ein "Enter".
Die zweite Linie kommt in dem zweiten Formular (die Formulare sind immer
gleich). Dann wieder "Enter", usw...

Ih habe jetzt verstanden wie ich mit Remote Key an jeden Feld in meinem
Formular herankomme aber was ich nicht gefunden habe ist wie ich den TEXT
Datei lesen kann. Gibt es eine möglichkeit das zu machen ?

Noch eine andere frage. Kann man neue Funktion basteln und in Remote Key
Implementieren (Zb *.bat oder *.exe) ?

---> Answer

Ich selbst versende manchmal Texte per EMail, die ich auf Disk gespeichert
habe.
Das sieht dann etwa so aus:

---
Hallo,
vielen Dank....
Alles Weitere finden Sie im nachfolgenden Text.
{/ME.BUTTON standard,mfg}
{/CLIP.TXT.LOAD c:\ownfiles\web-fwh\pub.txt}{/CLIP.TXT.REMOVE.ASC 10}{HOLD.CONTROL}v{/CLIP.CLEAR}
---

Der Button-Command senden den Text eines Knopfes mit Inhalt "Mit
freundlichen...."
Dann wird ein Text von HD ins Clip kopiert, alls Zeilenumbrüche entfernt und
an Cursor-Position kopiert.
Schließlich wird der Clip-Inhalt gelöscht.

Durch die im Text verbleibenden Wagenrücklauf-Codes (ASCII 13) müßte auch ein
Senden in ein Formular funktionieren,
ggf. einige einfügen oder löschen.
Was aber nicht geht ist, daß der Text, der von HD eingelesen wird, Commands
enthält wie z.B. {KEY.TAB}.
Alternativ zu "{HOLD.CONTROL}v" kann man auch {/CLIP.TXT.SEND} benutzen. Das
geht etwas langsamer, aber
vielleicht funktionieren dann auch Steuerzeichen im Text (müßte ich selbst mal
probieren).

Frage 2 verstehe ich nicht ganz oder müßte ich verneinen.
Die in geschweiften Klammern stehenden Commands sind fest implementierte
RK-Befehle.
Man kann aber natürlich beliebige Batch-Dateien oder Programme mit RemoteKeys
starten, der Command hierfür ist
{/APP.OPEN file[,par]}.
Komfortabel geht es, indem man eine Datei aus dem Explorer zieht und auf einem
RK-Knopf fallen läßt (drag&drop).

--------------------------------------------------------------------

---> Question

Ich möchte gerne auf die (wirklich hervorragenden) Funktionen von RemoteKeys über DDE
von anderen Applikationen (VBA oder VisualBasic) aus zugreifen.
In dem Manual v1.2.07 steht nur 'Description coming soon...'
Ist das, was ich vorhabe, grundsätzlich möglich - oder funktioniert die DDE-'Fernsteuerung'
nur zwischen zwei RemoteKeys-Programmen?
Gibt es inzwischen eine Doku der DDE-Syntax?

---> Answer

Generell sollte es auch mit anderen Anwendungen funktionieren, denn das 
Satelliten-Programm RKNet aus dem Connection-Ordner arbeitet auch über die 
DDE-Schnittstelle mit RK zusammen und ist eine eigenständige Anwendung 
(eine einigermaßen aktuelle RK-Version, z.Zt. 6.3.7, sollte aber vorliegen). 
Vielleicht ist es daher eine Hilfe, einmal die Netzwerkgeschichte (ggf. auch auf nur 
einem Rechner) einzurichten (Beschreibung in engl. im selben Ordner). Danach müßte 
man schon sehen, was zumindest RK-seitig eingestellt werden muß.
