Contents 

Allgemeine Hinweise
Einleitung
Befehlsübersicht nach Aufgabe und Zweck
Der Windows-Roboter und seine Steuerung
Der Remote-Editor
Der Windows-Analyzer
Der WinRobots-Script Compiler
Die Option "Protokollieren" zur Support-Unterstützung
Spezialordner
Spezialordner und Systemvariablen
Ablaufsteuerung allgemein
BRK Break
DBC DialogButtonClick
EFE ExitForEach
EID EndIfDestroyed
EIE EndIfError
END EndRemote
FCH FileChange
GSB GoSuB
JIE JumpIfError
JIF JumpIfFilled
JIN JumpIfNonzero
JIS JumpIfSystemvariable
JIT JumpIfTimeout
JIV JumpIfValue
JIZ JumpIfZero
JNF JumptoNewFile
JWM JumpifWrongMode
MAC MissingAnyChild
MCW MissingChildWindow
MSC MissingSpecialChild
MTW MissingTopWindow
PBC PluginButtonCaption
PBD PluginButtonDisable
PBE PluginButtonEnable
PBN PluginButtonNumber
PBR PluginButtonRemfile
PBT PluginButtonTooltip
PCC PluginColorChange
PCI PluginCheckInstruction
PCR PluginColorRestore
PDP PluginDockingParameter
PIC PlugInClose
PID PlugInDock
PIH PlugInHide
PIL PlugInLaunch
PIM PlugInMinimize
PIS PlugInShow
PIT PlugInTopmost
PWC PluginWindowCaption
RET RETurn
RPT RePeaT
SAB ShowActionButton
SBF StandByFlag
SCW SetCurrentWindow
SEB ShowExitButton
SEC ShowExitCommandbutton
SID ShutdownIfDestroyed
SUS SuspendPC
WBC WindowButtonClick
WCT WaitforClipboardText
WDC WinDowsClose
WDL WatchDogLaunch
WDM WatchDogMessage
WFC WaitForChange
WFD WindowsForceDown
WFF WaitForFile
WFI WaitForInstruction
WFM WaitForMedia
WFS WaitForShutdown
WFT WaitForTopwindow
WFW WaitForWindow
WII WaitforInputIdle
WLO WindowsLogOff
WMA WaitMapAltered
WPR WaitProcessRunning
WPT WaitProcessTermination
WRS WindowsReStart
WSD WindowsShutDown
WSP WaitforSusPend
WWA WaitforWindowActivation
WWC WaitforWindowsCursor
WWF WaitforWindowFocus
WWP WaitforWindowPoint
WWU WaitforWakeUp
Ablaufsteuerung mit Abfragen
IAC IfActiveChild
IAI IfAppInstalled
IAR IfAppRegistered
IAW IfActiveWindow
IBC IfButtonChecked
IBI IfButtonIndex
IBS IfBackSignalled
ICD IfCD-ROM
ICE IfChildEnabled
ICI IfCheckedIs
ICM IfCollectionMember
ICN IfComputerName
ICS IfCheckboxSelected
ICT IfCurrentText
ICV IfChildVisible
ICW IfChildWindow
IDB IfDefaultButton
IDT IfDriveType
IEA IfExistsAnychild
IEB IfExitButton
IEC IfExistsChildwindow
IED IfExistsDrive
IEE IfExistsEnvironmentvariable
IEF IfExistsFile
IEI IfExistsItem
IEK IfExistsKey
IEM IfExistsMenu
IEP IfExistsProcess
IER IfExistsRemote
IES IfEndSignalled
IET IfExistsToolbar
IEV IfExistsVariable
IEW IfExistsWindow
IEX IfEXemode
IFA IfFontAvailable
IFF IfFileFound
IFL IfFileLanguage
IFM IfFEXMode
IFO IfFileOlder
IFU IfFileUsed
IFV IfFileVersion
IHD IfHardDrive
IIC IfItemChecked
Hinweise zu Abfragen
IIF IfInstructionFailed
IIH IfInputHas
IIP IfInput
IIW IfIsWindow
IJM IfJumpMode
IKA IfKeyAscii
IKC IfKeyChar
ILC IfLineColor
ILI IfLanguageID
IMA IfMapAltered
IMB IfMessageBox
IMC IfMenuChecked
IOF IfOperateFailed
IOL IfOnLine
IOP IfOSProperty
IOS IfOperatingSystem
IPA IfPortAvailable
IPC IfPixelColor
IPF IfPatternFound
IPR IfPPointinRect
IRC IfRectColor
IRD IfRemovableDrive
IRE IfRegistryEntry
IRF IfRunFailed
IRL IfRemeditLaunched
ISA IfServerAvailable
ISB IfStandBy
ISC IfScreenColordepth
ISD IfShutDown
ISF IfScreenFont
ISI IfSystemItem
ISM IfSubMenuentry
ISP IfServiceProperty
ISR IfScreenResolution
ISV IfSystemVariable
ITC IfTextContains
ITM IfTopMenuentry
ITO IfTimeOut
ITS IfTabSelected
ITV IfTempVar
IUA IfUserIsAdmin
IUN IfUserName
IVB IfVariableBetween
IVC IfVariableContains
IVL IfVariableLike
IVM IfVMWare
IVN IfVariableNumeric
IVO IfVersionOlder
IVV IfVariableValue
IWC IfWindowClass
IWE IfWindowEnabled
IWF IfWindowFound
IWI IfWindowIconic
IWM IfWindowMissing
IWN IfWindowsNumber
IWT IfWindowTitle
IWV IfWindowVisible
IWZ IfWindowZoomed
IXP IfXPstyle
Ablaufsteuerung zeitlich
CAR ContinueAtRelativeTime
CAS ContinueAfterSeconds
CAT ContinueAtTime
CSP CursorSPeed
DAS DoAfterSeconds
DIP DelayInstructionProcessing
GST GetStartTime
GTD GetTimeDifference
PAR PlayAtRelativeTime
PAT PlayAtTime
STF STepFactor
TDL TimeDeLay
TIO TImeOut
Allgemeine Such- und Bedienfunktionen
CFH ClassFromHandle
ECH ExCludeHandle
FTW FindTopWindow
GAC GetAnyChild
GCT GetChildsTopwindow
GCW GetChildWindow
GFC GetFocusChild
GFW GetForegroundWindow
GPW GetProcessWindow
GTW GetTopWindow
GWI GetWindowInfo
GWN GetWindowNumber
LTW LocalizeThisWindow
SAC SearchAnyChild
SMC SubMenuClick
SMH SetMenuHook
SMP SubMenuPosition
SMS SubMenuSelect
SNP SetNewParent
SPC SearchParentsChild
SST SearchSpecialTopwindow
STC SearchTopwindowsChild
STW SearchTopWindow
SWC SearchWindowsChild
SWN SetWindowsNumber
TMC TopMenuClick
TMP TopMenuPosition
TMS TopMenuSelect
WMS WindowMemberShip
WPC WaitforParentsChild
Anzeigefunktionen
CDM ConfirmDecisionMessage
CFM ConFirmMessage
CHK Check
DCG DesktopColorGet
DCL DrawColorLine
DCS DesktopColorSet
DDC DisplayDialogColor
DFR DrawFrameRect
DIR DrawInvertedRect
DIV DisplayInputValue
DNE DisplayNetworkError
DPC DisplayPropertiesChange
DPF DisplayFile
DPI DisplayInfo
DPM DisPlayMessage
DPP DisplayProperties
DPT DisplayText
DST DisplayScrollingText
DTW DeskTopWallpaper
EMT ErrorMessageText
GMT GetMessageText
GOM GoOnMessage
GPS GetPictureSize
GUI GetUserInput
GUS GetUserSelection
HDB HiDeBoth
HPM HideProgMan Desktop
HRE HideRemoteEditor
HTB HideTaskBar
KDW KeepDisplayWindow
MBX MessageBoX
MRE MinimizeRemoteEditor
MTC MousepointerToClosebutton
MTE MousepointerToExitbutton
MWT MakeWindowTransparent
PST PrepareScrollingText
SBG ShowBackGround
SBT ShowBubbleText
SCC ShowColorCover
SDM ShowDecisionMessage
SFT ShowFormattedText
SHC SHowCover
SHF SHowFrame
SHG SHowGraphics
SHI SHowInformation
SHM SHowMessage
SHP SHowPicture
SHT SHowText
SHW ShowHiddenWindows
SIT ShowInfoText
SNT ShowNewText
SPM ShowProgman Desktop
SPT ShowPureText
SRC SetReference to Cursor
SRE ShowRemoteEditor
SRO SetReference to Origin
SRP SetReferencePoint
SSM StopShowMessage
SSP StopShowPicture
SSS SimulateScreenSize
STB ShowTaskBar
TFH TitleFromHandle
Datei- und Verzeichnisoperationen
CEO CopyifExistsandOlder
CHD CHangeDirectory
CIO CopyIfOlder
CIP CopyIfPossible
CNS CreateNewShortcut
CSF CollectSomeFiles
DAF DeleteAllFiles
DCP DirCoPy
DCR DeleteCurrentRemfile
DDD DisplayDialogDirectories
DDF DisplayDialogFiles
DEF DeleteExeFolder
DEL DELete
DLF DownLoadFile
DME DriveMediaEject
DMI DriveMediaInsert
DRD DuplicateRemoteDirectory
EFP ExecuteFromPrograms
EXE EXEcute
EXO EXecuteOpen
EXR EXecutefromRegistry
EXS EXecuteShell
EXU EXecuteUninstall
EXW EXecuteWait
EXX EXecute eXtended
FCE FileCopyifExists
FCP FileCoPy
FCT FileCount
FDT FileDateTime
FED ForEachDrive
FEF ForEachFile
FEI ForEachInientry
FEL ForEachLine
GCR GetCurrentRemfile
GDI GetDirInfo
GEP GetExePath
GFA GetFileAttributes
GFI GetFileInfo
GFL GetFileLanguage
GFN GetFileNumber
GFT GetFileToken
GFV GetFileVersion
GLN GetLineNumber
GLP GetLongPath
GLT GetLanguageText
GPP GetPathfromPrograms
GSI GetShortcutInfo
GSP GetShortPath
LFF LineFromFile
MKD MaKeDirectory
OUF OverwriteUsedFiles
REN REName
RFA RemoveFileAttributes
RIF ReplaceInFile
RIN Run .INf-File
RIO ReplaceIfOlder
RLF RemoveLinesFromFile
RMD ReMoveDirectory
RPL RePlaceLine
SAS SynchronizeAllSubdirectories
SCF SetCurrentFolder
SES SynchronizeExistingSubdirectories
SFA SetFileAttribute
SFP SpecialFolderPath
SYN SYNchronizeDirectory
UEF UpdateExistingFiles
UNZ UnZip
VGI VolumeGetInfo
VGL VolumeGetLetter
VGS VolumeGetSpace
VSL VolumeSetLabel
ZIP Zip
Datenübermittlung
ATF AppendToFile
CBH CallBackHandle
CBM CallBackMessage
CFC CopyFromClipboard
CFF CopyFromFile
CFI CopyFromInifile
CFW CopyFromWindow
CLR CLoseRemote
CTC CopyToClipboard
CTF CopyToFile
CTI CopyToIniFile
CTW CopyToWindow
GIS GetIniSections
KYD KeyDown
KYU KeyUp
PFC PasteFromClipboard
PWM PostWindowMessage
RFG ReadFontGet
RFS ReadFontSet
RST ReplaceSelectedText
SCH SendCHaracterset
SDF SenDFiletext
SDK SenDKeys
SDT SenDText
SKA SendKeyAscii
SKD SendKeyDOS
SKP SendKeyPress
SKS SendKeysStepwise
SMK SendMenuKey
SWM SendWindowMessage
TTC TextToClipboard
TWM TextWindowMessage
WRT WindowReadText
Debugfunktionen
CDF CD-Flag
DBM DeBugMode
DBP DebugPrint
DED DisableEditorDisplay
DWP DisplayWorkingProgress
SDW ShowDebugWindow
SRT ShowRemTarget
USM UseSilentMode
XRE ShowRegEntry
XSC ShowClassName
XSH ShowHandle
XSR ShowRect
XST ShowText
XSV ShowVariable
XTT ShowTempText
Ereignisse
ELE EventLogEmpty
ELR EventLogRead
ELW EventLogWrite
IEL IfExistsLogentry
Funktionen für Variable
CAL Calculate
DVV DisplayVariableValue
VAR Variable
VAV VariableAssignValue
VBT VariableBothTrim
VCL VariableClear
VDC VariableDeCrement
VIC VariableInCrement
VLT VariableLeftTrim
VRM VariableReMove
VRT VariableRightTrim
VSV VariableSwapValues
VTD VariableToDecimal
VTH VariableToHexadecimal
VTL VariableToLowercase
VTN VariableToNumbers
VTU VariableToUppercase
VVK VariableValueKeep
VVR VariableValuesRestore
VVS VariableValuesSave
Funktionen für Zeichenfolgen
ASC ASCII
CHR Character
ENC ENCrypt
FMT Format
GCC GetCharCount
GFS GetFromString
GIP GetInput
GMD GetMessageDigest
GSS GetSplitString
JOC JumpOnCancel
LFT LineFromText
RIT ReplaceInText
SBD StringBetweenDelimiter
SLT SeLectText
STR String
STT SetTempText
TTL TempTextLowercase
TTP TempTextPrefix
TTR TempTextReplace
TTS TempTextSuffix
TTU TempTextUppercase
Mausoperationen
MDC MouseDoubleClick
MDE MouseDownEvent
MDI MouseDoubleclickInvisible
MED MouseEventDoubleclick
MEL MouseEventLeftclick
MER MouseEventRightclick
MLC MouseLeftClick
MLD MouseLeftDown
MLI MouseLeftclickInvisible
MLU MouseLeftUp
MMV MouseMoVe
MPO MousePOsition
MRC MouseRightClick
MRD MouseRightDown
MRI MouseRightclickInvisible
MRU MouseRightUp
MUE MouseUpEvent
Netzwerk, DFÜ, Services
CDC CloseDialupConnection
CND CreateNewDialup
DDP DisplayDialupconnectionProperties
GCN GetComputerName
GMA GetMACAddress
GUN GetUserName
MND MapNetworkDrive
OAU OperateAsUser
PWD Password
RAU RunAsUser
RDM RemoveDriveMapping
SCN SetComputerName
SNF ShareNetworkFolder
SVC SerViceCommand
Registrierung
FEK ForEachKey
FER ForEachRegentry
RBR RegistryBinaryRead
RBW RegistryBinaryWrite
RCA RegistryChangesApply
RCO RegisterCOMObject
RDR RegistryDWordRead
RDW RegistryDWordWrite
RED RegistryEntryDelete
REG Register *.REG-File
REK RegistryEnumKeys
RER RegistryEntryRead
REV RegistryEnumValues
REW RegistryEntryWrite
RKC RegistryKeyCreate
RKD RegistryKeyDelete
RSR RegistryStandardRead
RSW RegistryStandardWrite
UCO UnregisterCOMObject
Sonstige Funktionen
ALB AfterLastBackslash
ANF AddNewFont
BLB BeforeLastBackslash
CAI CollectionAddItem
CDL CollectionDeLete
CFD CheckForDisk
CGC CollectionGetCount
CGI CollectionGetItem
CKS CheckKeyStroke
CLC CLipCursor
CPL ControlPanel
CRE CloseRemoteEditor
CRI CollectionRemoveItem
CSN CollectionSetNumber
DFP DoForPixel
DTC DateTimeCalculation
DTF DateTimeFormat
DTR DeskTopRestore
DTS DeskTopSave
DUI DisableUserInput
ENW EnableWindow
ESE EnvironmentStringExpand
ESG EnvironmentStringGet
ESS EnvironmentStringSet
EVG EnvironmentVariableGet
EVS EnvironmentVariableSet
FEC ForEachCollectionitem
FEM ForEachMember
FEP ForEachProcess
FEW ForEachWindow
GCL GetCommandLine
GCP GetCursorPos
GDD GetDateDay
GDM GetDateMonth
GDW GetDateWeek
GLI GetLanguageID
GOS GetOperatingSystem
GPC GetPixelColor
GPI GetProcessID
GRD GetRealDate
GSC GetScreenColordepth
GSF GetScreenFrequency
GSL GetStringLenght
GSR GetScreenResolution
GTP GetTimeParams
GWC GetWindowsCursor
GWF GetWindowsFile
GWL GetWindowsLanguage
GWR GetWindowRectangle
HTV HandleToVariable
KBN KeyBoardNormal
KBS KeepButtonState
KCP KeepCurrentPoint
KPH KeepParentHandle
KRM KillReMote
KRS KeyboardRepeatSpeed
KTH KeepTopHandle
KWH KeepWindowHandle
LID LanguageID
LNR LaunchNewRemfile
MID MIDi-File play
MIW MouseInWindow
MPS MonitorPowerState
MSB MessageBeep
MWR MapWindowRect
OPT Optional Settings
PRM ProtectReMote
PTR PreventTaskRunning
RBS RestoreButtonState
RCP RestoreCurrentPoint
REB REBoot
RND Randomize
RPH RestoreParentHandle
RSM RemoveSystemMenu
RTH RestoreTopHandle
RTP RemoteThreadPriority
RWH RestoreWindowHandle
SCD SetComputerDate
SCP SetCursorPos
SCS SCreenShot
SCT SetComputerTime
SKL SetKeyboardLayout
SND Sound
SPP SetProcessPriority
SRV SetReturnValue
SSC SetScreenColordepth
SSF SetScreenFrequency
SSR SetScreenResolution
STP SetThreadPriority
STV SetTemp_Var
SWO SetWindowsOwner
SWP SetWindowPosition
SWS SetWindowSize
SWT SetWindowText
TSR ThreadSuspendResume
WCC WaitColorChange
WFE WaitForEvent
WFP WaitForPattern
WKS WatchKeyStroke
WLC WaitLineColor
WPA Wave Play Asynchron
WPS Wave Play Sychron
WRC WaitRectColor
Steuerelementabhängige Positionierungen und Funktionen
BCS ButtonClickSpecial
BTC ButtonCheck
CCC CommonControlCommand
CDD ComboDropDown
FEB ForEachButton
FEE ForEachEntry
FES ForEachSyslistviewItem
FET ForEachTreeviewItem
GDB GetDefaultButton
LBC ListBoxCheck
LBE ListBoxEntry
LBI ListBoxItem
LES ListEntrySelect
LIN ListItemNumber
LIS ListItemSelect
LIT ListItemText
LSI ListviewSelectedItems
LVE ListViewEditlabel
LVI ListViewItem
LVL ListViewLine
LVS ListViewStyle
LVV ListViewView
SCI SelectComboItem
SLE SearchListEntry
SLI SelectListItem
SPH ScrollPositionHorizontal
SPV ScrollPositionVertical
TBB ToolBarButton
TBC TaBControl
TBD ToolbarButtonDisable
TBE ToolbarButtonEnable
TBP ToolbarButtonPress
TBT ToolbarButtonText
TCP TabControlPage
TCS TabControlpageSelect
TGN TabcontrolGetNumber
TGS TabcontrolGetSelection
TGT TabcontrolGetText
TIC TreeviewItemCollapse
TIN TreeviewItemNumber
TIT TreeviewItemText
TPG TrackbarPositionGet
TPS TrackbarPositionSet
TV1 TreeViewSymbol1
TV2 TreeViewSymbol2
TV3 TreeViewSymbol3
TVE TreeViewEditlabel
TVI TreeViewItem
TVN TreeViewNode
TVS TreeViewitemSelect
Steuerelementunabhängige Funktionen
CAF CloseAllFolders
CAW CloseAllWindows
CLA CLoseApplication
CLW CLoseWindow
HAA HideAllApplications
MAA MinimizeAllApplications
MAF MinimizeAllFolder
MAX Maximize Window
MIN Minimize Window
MRS Restore Window
MWI MakeWindowInvisible
MWV MakeWindowVisible
RAA RestoreAllApplications
RAF RestoreAllFolder
SAA ShowAllApplications
SAW SetActiveWindow
SFW SetForegroundWindow
SHL ScrollHorizontalLeft
SHR ScrollHorizontalRight
SVB ScrollVerticalBottom
SVD ScrollVerticalDown
SVT ScrollVerticalTop
SVU ScrollVerticalUp
TPC TerminateProcess
WBO WindowBOttom
WDH WinDowHide
WDS WinDowShow
WNO WindowNOrmal
WTM WindowTopMost
Steuerelementunabhängige Positionierungen
CHB ContextHelpButton
FRB FRameBottom
FRL FRameLeft
FRR FRameRight
FRT FRameTop
GOP GetOriginPoint
LCP Localize CurrentPoint
MAB MAxButton
MCP MoveCurrentPoint
MIB MInButton
OPR OriginPointRelative
PTP PointToPoint
SAP SetActuPoint
SIP SetItemPoint
SYB SYstemButton
TIB TItleBar
Anhang, technische Informationen
"ShowText.exe" zur rationellen Bearbeitung von Anzeigedateien
VB-Demo-Modul "WinRobots-Interface"
Hinweise zur Kommunikation mit dem Remote-Programm

WinRobots Windows-Script Online Hilfe

Vorherige Seite Nächste Seite
Der WinRobots-Script Compiler
Previous Top Next


Erläuterungen zu den Optionen "Exe erstellen" und "Keyfile erstellen"

1. Allgemeines
Mit der Option "Exe erstellen" können Sie eine einzelne Exe-Datei erstellen, die sämtliche zum Abspielen der aktuell geladenen Remote-Datei notwendigen Komponenten enthält. Diese Exe-Datei kann dann auf beliebigen Rechnern, auf denen ein Windows32-Betriebssystem installiert ist, ausgeführt werden. Dabei verhält sich die Exe genauso, als würde das Remote-Programm mit der entsprechenden Remote-Datei als Befehlszeilenparameter gestartet. Tatsächlich entpackt sich die Exe im temporären Verzeichnis und startet die beim Entpacken entstehende Remote.exe.
HINWEIS:
Sowohl beim Erstellen der Exe als auch beim Entpacken kann ein aktiver Virenscanner bei größeren Paketen (viele und/oder große Dateien) zu einer deutlichen Verlängerung des Prozesses führen!

2. EXE-Erstellung
2.1. Automatisches Include:
Beim Erstellen der Exe wird die aktuell geladene Remote-Datei nach weiteren notwendigen Dateien durchsucht (sowohl weitere "sekundäre" Remote-Dateien als auch Text- und sonstige Dateien, die zur Ausführung des Scripts benötigt werden).  Steht in der Datei zum Beispiel  EXX\?pfad\vob-ersetzen.exe, dann wird der Compiler versuchen, die betreffende Datei auch der EXE hinzuzufügen.
Um das zu verhindern, gibt es die '#EXC:(Datei) - Anweisung. Alternativ kann man schreiben:
VAR\$$EXE=?pfad\vob-ersetzen.exe
EXX\$$EXE
Hierbei erfolgt kein Auto-Include. Um hingegen eine Datei oder ein ganzes Verzeichnis der EXE hinzuzufügen, gibt es die '#INC:-Anweisung.

2.2. automatische Prüfung
Gleichzeitig erfolgt in gewissem Umfang eine Syntax- und Befehlsüberprüfung mit entsprechenden Meldungen, wenn eine Unstimmigkeit festgestellt wird. Sie sollten jedoch unbedingt vorher testen, ob sich die zu "verpackende" Remote- Datei auch normal abspielen läßt.

3. Compiler-Instruktionen
Um den Vorgang der EXE-Erstellung soweit wie möglich zu vereinfachen, erscheint beim Aufruf von "EXE erstellen" keinerlei Dialog. REMEDIT versucht, die erforderlichen Optionen selbst festzustellen. Dabei gilt voreingestellt:
a) Der Name der EXE-Datei ist der Name der aktuell geladenen ".rem"-Datei.
b) Die fertige EXE-Datei erscheint auf dem Desktop.
c) War bereits eine Datei dieses Namens vorhanden, wird dem Namen eine Zahl angehängt.

Und wo dies nicht ausreicht, gibt es eine Anzahl '#XXX:(Daten) - Befehle, mit denen dem EXE-Compiler vielfältige Optionen mitgeteilt werden können. Diese Optionen werden nur von REMEDIT gelesen und später bei der Scriptausführung von WinRobots ignoriert. Deshalb ist diesen Compiler- Instruktionen die Zeichenfolge " '#" vorangestellt. Im einzelnen sind dies:

"INC:"
Mit Hilfe dieser Instruktion können Sie zusätzliche Dateien mit in das Paket aufnehmen lassen, um damit auf dem Zielrechner zu arbeiten. Normalerweise sollten sich diese Dateien zum Zeitpunkt der Exe-Erstellung im Remote- Verzeichnis oder einem Unterverzeichnis dazu befinden und im Eintrag entsprechend mit "?exepfad\..." bzw. "?pfad\..." angegeben werden. Dateien mit absoluter Pfadangabe oder Pfad außerhalb des Remote-Verzeichnisses (z.B. "?ws\...") werden auf dem Zielrechner an die gleiche Stelle entpackt, sofern das möglich ist.
Sie können aber auch einen Zielpfad für die aufzunehmende Datei angeben, indem Sie nach der Quelldatei die Zeichenfolge "->" und danach den (relativen) Zielpfad unter Verwendung der Kürzel eintragen. Bei der Exe-Erstellung werden als relative Zielpfade nur die Kürzel "?pfad", "?exepfad", "?wi" und "?ws" unterstützt.
Außer Einzeldateien können mit dieser Anweisung auch komplette Verzeichnisse eingebunden werden. In diesem Fall ist das einzubindende Verzeichnis mit abschließendem Backslash ("\")anzugeben. Dann werden alle Dateien des Verzeichnisses mit eingebunden.
Wenn ein Verzeichnis mit sämtlichen Unterverzeichnissen und deren Dateien eingebunden werden soll, ist das Verzeichnis mit abschließendem "@" anzugeben. Leere Unterverzeichnisse werden dabei nicht berücksichtigt.
Auch in diesem Falle kann ein Zielverzeichnis angegeben werden; es werden dann alle Dateien der Unterverzeichnisse in das Zielverzeichnis kopiert.
Es können mehrere solcher Instruktionen angegeben werden.
Beispiel:
'#INC:?pfad\autokor.txt
'#INC:?pfad\winrobots-dateien\@
!WICHTIG!
WinRobots benötigt für seine Arbeit die Runtime-Bibliothek von VB5. Diese ist auf Windows-Betriebssystemen ab Win98 standardmäßig vorhanden. Auf Windows 95 oder Server-Systemen kann es sein, daß diese Voraussetzung nicht gegeben ist. Dann können Sie mit der Anweisung
'#INC:vbrun
veranlassen, daß diese Bibliothek mit in die Exe-Datei eingebunden wird.

"EXE:"
Standardmäßig erhält die Exe-Datei den Namen der Remote-Datei, die abgespielt werden soll, und wird auf dem Desktop erzeugt. Wenn Sie diese Einstellung ändern wollen, haben Sie drei Möglichkeiten:
1. Sie geben nach der Instruktion nur den gewünschten Namen an (mit oder ohne ".exe"). Dann wird die Exe-Datei unter diesem Namen auf dem Desktop erzeugt.
2. Sie geben nach der Instruktion nur einen Verzeichnispfad an (mit oder ohne Kürzel, aber mit abschließendem Backslash ("\")). Dann wird die Exe-Datei mit dem standardmäßigen Namen in dem angegebenen Verzeichnis erzeugt.
3. Sie geben nach der Instruktion einen vollen Dateipfad inclusive Endung ".exe" an (mit oder ohne Kürzel). Dann wird die Exe-Datei mit diesem Pfad erzeugt.
Beispiel:
'#EXE:IE-Quicksurfer.exe

"EXC:"
Mit dieser Instruktion können Sie die Überprüfung der im Eintrag angegeben Datei verhindern. Das kann notwendig sein, wenn Sie in einer Remote-Datei Bezug auf einen Pfad nehmen, der erst auf dem Zielrechner erstellt wird und auf dem Quellrechner nicht existiert. Der Eintrag kann sowohl einen absoluten Pfad als auch einen relativen (ggf. mit Kürzeln) enthalten.
Sie können die Instruktion auch verwenden, um ganze Verzeichnisse bzw. deren Inhalt auszuschließen. Geben Sie dazu das Verzeichnis (absolut oder relativ; ggf. mit Kürzeln) mit abschließendem Backslash in der Instruktion an. Wenn Sie den Backslash nicht angeben, werden alle Dateien ausgeschlossen, in deren Name die als Pfad eingetragene Zeichenfolge vorkommt.
Es können mehrere solcher Instruktionen angegeben werden.

"SPI:"
Diese Instruktion ist für Spezialfälle vorgesehen, die hauptsächlich während der Testphase auftreten können. Gegenwärtig existieren folgende gültigen Einträge:
'#SPI:NoKill
Verhindert das Löschen der temporären Dateien nach dem Kompilieren;
'#SPI:ForceWrite
Ohne diese Instruktion wird beim Erstellen einer Exe-Datei geprüft, ob bereits eine solche existiert; wenn ja, wird die neue Exe-Datei mit nachgestelltem "_" und einer laufenden Nummer vor der Endung erzeugt. Wenn "forcewrite" gesetzt ist, wird eine bereits existierende Exe-Datei ohne Rückfrage überschrieben.
'#SPI:NoExe
Erstellt nur die temporären Dateien, aber kompiliert nicht. Das ist hilfreich, wenn nur die Einträge in der "dropship.ini" kontrolliert werden sollen.
Die folgenden Optionen geben dem Anwender eine Möglichkeit, auf den Prozess der Paketierung/Extraktion einzuwirken. Grundsätzlich jedoch sollten Optionen, die von den Voreinstellungen abweichen, mit Vorsicht und nie ohne genaue Kenntnis der Folgen verwendet werden.
#SPI:Compress=0/1/2
"Compress=1" ist die Voreinstellung. Diese wird ohne einen Eintrag wirksam und ist in den meisten Fälle zu empfehlen.
"Compress=0" schaltet die Kompression für dieses Paket ab, was zu einer geringeren Prozessorauslastung beim Ver- und Entpacken führt.
"Compress=2" bewirkt eine stärkere Kompression beim Verpacken, benötigt dafür aber wesentlich mehr Zeit und sollte nur dann eingesetzt werden, wenn die Paketgröße (Exe-Datei) eine dominierende Rolle spielt.
#SPI:STR=MyStart.rem
Normalerweise ist die "*.rem"-Datei, von der aus kompiliert wird, auch die Datei, die in der EXE zuerst ausgeführt wird. Mit dem STR-Parameter kann man in Spezialfällen bestimmen, daß eine andere Datei als Startdatei verwendet wird.
#SPI:NoWait
Werden durch Ihr EXE-Paket Anwendungen gestartet, die ein Datei-Handle auf das EXE-Zielverzeichnis legen, wird dadurch u.U. verhindert, daß die EXE das temporäre Verzeichnis löschen und sich beenden kann. Die EXE wird dann erst ca. 6 Minuten nach Beendigung des WinRobots-Scripts beendet, und das Zielverzeichnis bleibt stehen. Mit der o.g. Anweisung können Sie bewirken, dass sich die EXE sofort beendet, während das WR-Script im Zielverzeichnis noch läuft. Sie müssen dann jedoch selbst dafür sorgen, daß die erzeugten temporären Dateien gelöscht werden. Dazu können Sie z.B. die "killdir.exe" verwenden, die Sie im Remote-Unterverzeichnis "\Tools\" finden.
'#SPI:TGF=<Ordnerpfad>
In seltenen Fällen funktionieren in EXE-Paketen enthaltene "Setup.exe"- Installationsprogramme nicht, weil der Pfad des Temp-Verzeichnisses zu lang ist. In solchen Fällen können Sie temporär ein eigenes Temp-Verzeichnis erstellen, welches an beliebiger Stelle liegen kann (Beispiel: '#SPI:TGF=c:\mytemp).
Um sicherzugehen, dass dieses Verzeichnis nicht bereits existiert, können Sie zusätzlich angeben:
'#SPI:UTF=1
Es wird dann innerhalb des angegebenen Zielverzeichnisses noch ein definiert einmaliges temporäres Verzeichnis angelegt.
Alternativ können Sie mit
'#SPI:UseShortTmp=1/2 festlegen, daß das Verzeichnis, in welchem die Remote.exe entpackt wird, entweder
- bei 1 das Wurzelverzeichnis desjenigen Laufwerks ist, von dem die Exe gestartet wird oder
- bei 2 das Wurzelverzeichnis desjenigen Laufwerks ist, auf dem sich das Windows-Verzeichnis befindet.

Weitere Anweisungen (Erläuterungen auf Anfrage):
'#SPI:NoMutex
'#SPI:NoVBCheck
'#SPI:ForceUpdate
'#SPI:Diskfree"  =<Zahl> (MB)

"CIL:"
Mit Hilfe dieser Instruktion können Sie gezielt unmittelbar vor dem Erstellungsprozeß einzelne Einträge in der "dropship.ini" ändern. Diese Datei wird temporär erstellt und beinhaltet die Anweisungen für den Compiler.
Der Text nach der Instruktion muß folgenden Aufbau haben:
Sektion|Eintragsname|Eintragswert.
Es können mehrere solcher Instruktionen angegeben werden.
Mit den folgenden Einträgen (Beispiel) können Sie während des Entpackens der Exe-Datei eine Anzeige erzeugen, welche den Fortschritt des Dekomprimierens darstellt (zweckmäßig, wenn die Exe-Datei größere Datenmengen enthält (~100 MB und mehr):
'#CIL:rempara|progressbox|1                     'Fortschrittsanzeige einschalten
'#CIL:rempara|progresstxt1|WinRobots Automation 'Überschrift
'#CIL:rempara|progresstxt2|Loading ...          'Hinweistext
'#CIL:rempara|progresstype|4                    'Anzeigestil (1...4)
Wenn nur die erste Zeile eingetragen ist, werden die anderen Werte so wie im Beispiel dargestellt ergänzt.

"RUN:"
Wenn Sie nach der Instruktion die Zeichenfolge "exe" eintragen, wird nach dem Kompilieren sofort die neu erstellte Exe-Datei gestartet.
Wenn der Eintrag die Zeichenfolge ".rem" enthält, wird nach dem Kompilieren die angegebene Remote-Datei ausgeführt. Wenn Sie in dieser Remote-Datei die eben erstellte Exe-Datei anziehen wollen, tragen Sie an dieser Stelle in der Remote-Datei die Zeichenfolge "?runexe" ein; diese wird dann durch den tatsächlichen Pfad zur neu erstellten Exe-Datei ersetzt.
In allen anderen Fällen wird der Eintrag nach Auflösung eventuell verwendeter Kürzel ohne weitere Bearbeitung an die "Shell()"-Funktion zur Ausführung übergeben.
Beispiele:
'#EXE:mytest
'#RUN:exe
'#EXC:?ws\shell32.dll
'#INC:d:\mytest\mytest.exe
'#INC:?exepfad\tools\anytool.exe
'#SPI:nokill

Zusätzliche Systemvariable (im EXE-Modus)
Auf die folgenden Parameter kann ausschliesslich im "EXE-Modus" zugegriffen werden:

$ev1$ = startrem     'Pfad der zu startenden Remote-Datei
$ev2$ = Commandline     'Kommandozeilenparameter für die Exe-Datei
$ev3$ = EXEName   'Name der Exe-Datei
$ev4$ = EXEPfad   'Pfad der Exe-Datei
$ev5$ = Mutex1            '1 oder 0 (wurde EXE-Dateiname bereits gestartet?)
$ev6$ = Mutex2            '1 oder 0 (wurde EXE-Dateipfad bereits gestartet?)
$ev7$ = starttime    'Startzeit der Exe-Datei
$ev8$ = startdate    'Startdatum der Exe-Datei
$ev9$ = unpacktime

Auf die entsprechenden Werte können Sie in der Remotedatei mit den Zeichenfolgen "$ev1$" bis "$ev9$" (von oben nach unten) zugreifen.

4. Option "Keyfile erstellen"
Alternativ zur Exe-Datei können Sie mit der Option "Keyfile erstellen" ein Set von drei Dateien erzeugen, welche die Informationen enthalten, die notwendig sind, um eine oder mehrere Remote-Datei(en) auf einem Rechner abzuspielen, auf dem mindestens die Starter Edition installiert ist. Diese Dateien werden im Pfad der aktuellen Remote-Datei abgelegt mit folgenden Namen:
1. keyfile_Name der Remote-Datei.dat
2. keyfile_Name der Remote-Datei.ini
3. start_Name der Remote-Datei.ini
Nummer 1 dient als Keyfile für die aktuelle Aufgabe und muß bei Gebrauch in "keyfile.dat" umbenannt und ins gleiche Verzeichnis wie die Remote-Datei(en) ("\Remfiles"; nicht ins Remote-Verzeichnis!) kopiert werden.
Nummer 2 enthält Informationen über die zum Abspielen erforderlichen Dateien, wird aber selbst zum Abspielen nicht gebraucht.
Nummer 3 enthält den Namen der aktuellen Remote-Datei und muß bei Gebrauch in "start.ini" umbenannt werden. Sie sorgt dafür, daß bei Doppelklick auf die "Remote.exe" diese mit der aktuellen Remote-Datei gestartet wird.
Wenn die in der "keyfile_....ini" aufgeführten Dateien zusammen mit der "start.ini" in einem Verzeichnis und die Remote-Datei(en) mit der "keyfile.dat" im Unterverzeichnis "\Remfiles" abgelegt werden, kann durch Doppelklick auf die "Remote.exe" die aktuelle Remote-Datei abgespielt werden im Rahmen der Rechte, welche die dateierzeugende WinRobots-Version hat. Dieses Verfahren ist vorteilhaft in der Testphase bei der Exe-Erstellung oder für die Weitergabe einfacher Remote-Dateien, die keine zusätzliche Dateien benötigen, an Rechner, die nur mit einer Starter Edition ausgestattet sind.

HINWEIS:
Wenn das zu kompilierende Projekt komprimierte Remote-Dateien enthält, werden diese automatisch dekomprimiert. Das ist deshalb zweckmäßig, weil damit vermieden wird, daß die zum Dekomprimieren erforderliche DLL mit in das Kompilat eingebunden wird, und weil die Remote-Dateien im Prozeß des Verpackens ohnehin komprimiert werden. Insgesamt wird dadurch die Exe-Datei um etwa 50 kB kleiner, und der Startvorgang erfolgt schneller.






© 2006 by Delphin Software
   
The CHM file was converted to HTML by chm2web software.