1.2.165 RunInstallShieldFunctions – InstallEngine Direktaufruf
RunInstallShieldFunctions( strFunctions );
Argumente
strFunctions
String in dem die von der InstallEngine auszuführenden Dienste enthält.                                   
Rückgabewert
Fehlerhandling übernimmt die  InstallEngine
Beschreibung
Diese Funktion veranlasst die InstallEngine die in den infra Setup Ini-Datei und in den Skripten SType.cpp, CompDiag.cpp und Folders.cpp vorgenommen Konfiguration auszuführen.
Die meisten Dienste werden in Skriptteil RunFunc.cpp ausgeführt. Doch können Dienste, z.B. SetupFolders oder RebootSystem auch im AtEnd -Skriptteil aufgerufen werden, z.B. mit RunInstallShieldFunctions
( "SetupFolders" ).
Dabei ist jedoch der SetupType zu berücksichtigen,
(siehe SetFolderList ).
Denn, wird versucht Folder zu setzten, aber in Folders.cpp wurden zu einen speziellen SetupType keine konfiguriert, wird die InstallEngine dies als Warnung ausgeben.
Direkt aufrufbare Dienste der InstallEngine
FindinfraInstallation      
In der infra Setup Ini-Datei in der Sektion INFRASetupSpecials im Schlüssel INFRAFindFiles definieren Sie was gefunden werden muss, dass es eine gültige infra:NET Installtion ist. Rufen Sie diesen Dienst auf, sucht die InstallEngine mit dem Benutzer zusammen eine gültige infra:NET Installation.
RenameinfraFiles        
In der infra Setup Ini-Datei in der Sektion INFRASetupSpecials im Schlüssel INFRARenameFiles definieren sie was umbenannt werden muss.
CompareinfraLevel      
Diese Funktion führt den Versionsvergleich, wie in Sektion INFRASetup  Schlüssel INFRANeedVersion beschrieben, durch.
Zusätzlich können Sie mit der Funktion VerCompare den Versionsvergleich verfeinern
MaininfraInstallation    
Wird die InstallEngine veranlasst diesem Befehl auszuführen, geschieht folgendes:
  • Trägt Installation- und Deinstallationsinfo in die Registry ein
  • Kopiert die Komponenten auf die Festplatte (analog MoveDataToDisk )
  • Bestimmt den Fall wo nicht Deinstalliert werden darf.
  • Trägt infra-spezifische Informationen in die Registry ein.
WICHTIG: Der Versionsvergleich wird nur bei diesem Dienst ausgeführt. Vgl. Sektion INFRASpecials Schlüssel INFRANeedVersion.
MoveDataToDisk        
Die InstallEngine führt hier den Kopiervorgang durch. Es werden die Komponenten kopiert die mit TRUE gekennzeichnet wurden und der InstallEngine mit Hilfe der Funktion SetInstallComponents übergeben wurde. Enthält der SubSetupType CLIENT, so wird dieser Dienst nicht von der InstallEngine ausgeführt, auch wenn er explizit aufgerufen wird.
CopyinfraFiles             
Die In der infra Setup Ini-Datei, in der Sektion INFRASetupSpecials im Schlüssel INFRACopyFiles definierten Konfiguration wird beim Aufruf von CopyinfraFiles von der InstallEngine ausgeführt.
SetupFolders               
Die InstallEngine veranlasst das Setzten der Startmenüs wie sie im Skriptteil Folders.cpp definiert und mit Hilfe der Funktion SetFolderList der InstallEngine mitgeteilt worden sind.
InstallinfraLicense       
Wird RunInstallShieldFunctions("InstallinfraLicense") aufgerufen, installiert der Benutzer zusammen mit der InstallEngine die sib-Lizenz.
RebootSystem            
Dieser Dienst veranlasst die InstallEngine das RebootFlag zu setzten, damit am Ende der Installation der Benutzer aufgefordert wird, die Workstation neu zu starten.
 
Die Dienste können der InstallEngine in einem String übergeben werden.
Beispiel
AssignString( strFunctions, "RebootSystem" );
       AppendString( strFunctions, "  "); //Trenner
       AppendString(  strFunctions, "MaininfraInstallation");
       AppendString( strFunctions, "  " ); //Trenner  
       AppendString(  strFunctions, "SetupFolders" );
RunInstallShieldFunctions( strFunctions );
Sie werden in der Reihenfolge der Beschreibung abgearbeitet, z.B.
  • MaininfraInstallation
  • SetupFolders
  • RebootSystem 
Sie können eine Dienst sofort ausführen, indem
RunInstallShieldFunctions( strFunctions )
direkt mit dem Dienst aufgerufen wird, z.B.
RunInstallShieldFunctions( "SetupFolders "),
d.h. das Startmenü wird direkt von der InstallEngine gesetzt.
siehe auch
SetTypeOptions SetFolderList SetInstallComponents
Funktionsart
infraSetupFunktion
Beispiel
if( str$Tmp_10 == "CLIENT_SETFOLDER_ONLY" )
  {
  AssignString(Functions,"SetupFolders");
  RunInstallShieldFunctions( Functions )
  Exit();
  }
//Bei SetupType CLIENT_SETFOLDER_ONLY solle nur das
//Startmenü gesetzt
//werden, das im
//Skriptteil Folders.cpp konfiguriert worden ist.
//Bemerkung: Das der SubSetupType CLIENT ist,
//wird der Kopiervorgang
//nicht ausgeführt.