Hallo zusammen
ich habe nun einige Skripts erstellt, jedoch bekomme ich bei Firefox und Google Chrome eine Desktop-Verknüpfung erstellt, welche ich nicht möchte.
Kann mir jemand sagen, wie ich dies unterbinden kann?
Grüsse "Keller"
Skript:
[Initial]
;Standard Text, der während der Installation angezeigt wird
Message = Bitte warten, das Produkt wird installiert
;Loglevel einstellen
setLogLevel = 6
;Bei Fehlern abbrechen
ExitOnError=false
;Syntax Fehler werden in einem separaten Fenster angezeigt
ScriptErrorMessages=on
;Single-Step Mode nicht verwenden
TraceMode=off
;Im Batchmode das Winst-Fenster nicht im Vordergrund anzeigen
StayOnTop=false
[Actions]
;Variable für die Ermittlung des Betriebssystems
DefVar $OS$
set $OS$ = GetOS
;Variable für die Ermittlung der Betriebssystem Unterversion
DefVar $NTVersion$
set $NTVersion$ = GetNTVersion
;Name des Produkts (max. 12 Zeichen)
DefVar $ProductName$
Set $ProductName$ = "Chrome"
;Dateiname des Produktbildes mit Erweiterung
DefVar $ProductPicture$
Set $ProductPicture$ = "Chrome.png"
;Die Variable zur Auswertung des ExitCodes
DefVar $ExitCode$
;Vollständiger Produktname incl. Versionsnummer
DefVar $ProductNameFull1$
set $ProductNameFull1$ = "Google Chrome"
;Dateinamen der zu installierenden MSI-Pakete
DefVar $Executable1$
Set $Executable1$ = "Chrome_Setup.msi"
;Anzeigen der Installationsbenachrichtigung incl. des vollen Produktnamens
Message "Installiere "+$ProductNameFull1$
;Prüfen der Winst Version
requiredWinstVersion >= "4.11"
;$ProductPicture$ und $ProductName$ anzeigen
ShowBitmap /3 "%scriptpath%\" + $ProductPicture$ $ProductName$
;Freien Speicherplatz ermitteln
if not (HasMinimumSpace ("%SYSTEMDRIVE%", "500 MB"))
LogError "Nicht genügend Platz auf %SYSTEMDRIVE%"
isFatalError
endif
;OS-Version ermitteln
if ( $NTVersion$ = "Win2K" OR $NTVersion$ = "WinXP" OR $NTVersion$ = "Win NT 5.2" OR $NTVersion$ = "Windows Vista" )
Message "Deinstallation alter Produktversionen"
sub "%ScriptPath%\delsub32.ins"
Message "Installiere "+$ProductNameFull1$
Winbatch_Install
sub "%ScriptPath%\check_msi-exitcode.ins"
Registry_Global /32Bit
else
LogError "Kein kompatibles Betriebssystem installiert"
isFatalError
endif
[Winbatch_Install]
msiexec.exe /i "%SCRIPTPATH%\$Executable1$" /qn
[LinkFolder_Custom]
;Startmenü anpassen
set_basefolder common_programs
set_subfolder ""
delete_subfolder "Google Chrome"
set_subfolder ""
set_link
name: chrome
target: "%ProgramFiles32Dir%\Application\Chrome_Setup.msi"
parameters:
working_dir: "%ProgramFiles32Dir%\Application"
icon_file:
icon_index:
end_link
[Registry_Global]
OpenKey [HKLM\Software\Policies\Google\Chrome]
;ProxyServerMode auf Manuell einstellen
Set "ProxyServerMode" = REG_DWORD:0x00000002
;Adresse für Proxy Konfigurationsdatei eintragen
Set "ProxyPacUrl" = REG_SZ:"http://proxy.your.domain/proxy.pac"
;Keine Statistiken an Google senden
Set "MetricsReportingEnabled" = REG_DWORD:0x00000000
;Keine Daten-Synchronisation mit Google Diensten
Set "SyncDisabled" = REG_DWORD:0x00000001
OpenKey [HKLM\SOFTWARE\Policies\Google\Update]
;Auto Update deaktivieren
Set "AutoUpdateCheckPeriodMinutes" = REG_DWORD:0x0000a8c0
Set "DisableAutoUpdateChecksCheckboxValue" = REG_DWORD:0x00000001
winbatch keine Desktop-Verknüpfung
Re: winbatch keine Desktop-Verknüpfung
Unterbinden geht nicht.
Du kannst sie aber hinterher löschen.
Du kannst sie aber hinterher löschen.
Code: Alles auswählen
[Files_Del_Lnk]
del "%CommonDesktopDir%\Firefox.lnk"
Re: winbatch keine Desktop-Verknüpfung
Danke dkoch für deinen Hinweis.
Leider bin ich mit dem scripten noch nicht so vertraut und habe nun Mühe damit.
Könntest du mir helfen, wie ich dies platzieren muss?
Leider bin ich mit dem scripten noch nicht so vertraut und habe nun Mühe damit.
Könntest du mir helfen, wie ich dies platzieren muss?
Code: Alles auswählen
[Initial]
;Standard Text, der während der Installation angezeigt wird
Message = Bitte warten, das Produkt wird installiert
;Loglevel einstellen
setLogLevel = 6
;Bei Fehlern abbrechen
ExitOnError=false
;Syntax Fehler werden in einem separaten Fenster angezeigt
ScriptErrorMessages=on
;Single-Step Mode nicht verwenden
TraceMode=off
;Im Batchmode das Winst-Fenster nicht im Vordergrund anzeigen
StayOnTop=false
[Actions]
;Variable für die Ermittlung des Betriebssystems
DefVar $OS$
set $OS$ = GetOS
;Variable für die Ermittlung der Betriebssystem Unterversion
DefVar $NTVersion$
set $NTVersion$ = GetNTVersion
;Name des Produkts (max. 12 Zeichen)
DefVar $ProductName$
Set $ProductName$ = "Chrome"
;Dateiname des Produktbildes mit Erweiterung
DefVar $ProductPicture$
Set $ProductPicture$ = "Chrome.png"
;Die Variable zur Auswertung des ExitCodes
DefVar $ExitCode$
;Vollständiger Produktname incl. Versionsnummer
DefVar $ProductNameFull1$
set $ProductNameFull1$ = "Google Chrome"
;Dateinamen der zu installierenden MSI-Pakete
DefVar $Executable1$
Set $Executable1$ = "Chrome_Setup.msi"
;Anzeigen der Installationsbenachrichtigung incl. des vollen Produktnamens
Message "Installiere "+$ProductNameFull1$
;Prüfen der Winst Version
requiredWinstVersion >= "4.11"
;$ProductPicture$ und $ProductName$ anzeigen
ShowBitmap /3 "%scriptpath%\" + $ProductPicture$ $ProductName$
;Freien Speicherplatz ermitteln
if not (HasMinimumSpace ("%SYSTEMDRIVE%", "500 MB"))
LogError "Nicht genügend Platz auf %SYSTEMDRIVE%"
isFatalError
endif
;OS-Version ermitteln
if ( $NTVersion$ = "Win2K" OR $NTVersion$ = "WinXP" OR $NTVersion$ = "Win NT 5.2" OR $NTVersion$ = "Windows Vista" )
Message "Deinstallation alter Produktversionen"
sub "%ScriptPath%\delsub32.ins"
Message "Installiere "+$ProductNameFull1$
Winbatch_Install
sub "%ScriptPath%\check_msi-exitcode.ins"
LinkFolder_Custom
[Files_Del_Lnk]
Files_Copy
Registry_Global /32Bit
else
LogError "Kein kompatibles Betriebssystem installiert"
isFatalError
endif
[Winbatch_Install]
msiexec.exe /i "%SCRIPTPATH%\$Executable1$" /qn
[LinkFolder_Custom]
;Startmenü anpassen
set_basefolder common_programs
set_subfolder ""
delete_subfolder "Google Chrome"
set_subfolder ""
set_link
name: Google Chrome
target: "%ProgramFiles32Dir%\Google\Chrome\Application\chrome.exe"
parameters:
working_dir: "%ProgramFiles32Dir%\Google\Chrome\Application"
icon_file:
icon_index:
end_link
[Files_Del_Lnk]
del "%CommonDesktopDir%\Google Chrome.Ink"
[Registry_Global]
OpenKey [HKLM\Software\Policies\Google\Chrome]
;ProxyServerMode auf Manuell einstellen
Set "ProxyServerMode" = REG_DWORD:0x00000002
;Adresse für Proxy Konfigurationsdatei eintragen
Set "ProxyPacUrl" = REG_SZ:"http://proxy.your.domain/proxy.pac"
;Keine Statistiken an Google senden
Set "MetricsReportingEnabled" = REG_DWORD:0x00000000
;Keine Daten-Synchronisation mit Google Diensten
Set "SyncDisabled" = REG_DWORD:0x00000001
OpenKey [HKLM\SOFTWARE\Policies\Google\Update]
;Auto Update deaktivieren
Set "AutoUpdateCheckPeriodMinutes" = REG_DWORD:0x0000a8c0
Set "DisableAutoUpdateChecksCheckboxValue" = REG_DWORD:0x00000001
[Files_Copy]
copy "%SCRIPTPATH%\master_preferences" "%ProgramFiles32Dir%\Google\Chrome\Application"
Re: winbatch keine Desktop-Verknüpfung
Klar.
Soweit absolut richtig.
Bein Sektions-Aufruf musst du aber die [] Klammern weg lassen
Sobald du die erste Sektion definierst mit "[Files_Irgendwas_Bla_Bla]" können nur noch definitionen folgen ( also weitre [Registry_Bla], [Winbatch_Bla], etc. ).
Den eigentlichen aufruf dieser Definition macht man weiter oben ohne die klammern damit der Interpreter weiß, dass es der Aufruf und nicht die Definition ist.
Es ist auch vollkommen legitim Sektionen mehrfach aufzurufen:
Warum auch immer man das tun müsste/wollte.
Also kurz gesagt ganz unten definierst du Sektionen und oben rufst du sie auf / startest sie.
Dadurch das du oben [Files_Del_Lnk] geschrieben hast war der Interpreter der annahme es folgen nur noch definitionen von Sektionen was hier ja nicht der fall war
Um die Verwirrung jetzt komplett zu machen:
Du verwendest noch [Initial] und [Actions]
Diese beiden sind obsolet und können einfach weg gelassen werden.
Alles was vor der ersten Sektionsdefinition kommt ist automatisch [Initial] und/oder [Actions]
Soweit absolut richtig.
Bein Sektions-Aufruf musst du aber die [] Klammern weg lassen
Code: Alles auswählen
LinkFolder_Custom
[Files_Del_Lnk]
Files_Copy
Sobald du die erste Sektion definierst mit "[Files_Irgendwas_Bla_Bla]" können nur noch definitionen folgen ( also weitre [Registry_Bla], [Winbatch_Bla], etc. ).
Den eigentlichen aufruf dieser Definition macht man weiter oben ohne die klammern damit der Interpreter weiß, dass es der Aufruf und nicht die Definition ist.
Es ist auch vollkommen legitim Sektionen mehrfach aufzurufen:
Code: Alles auswählen
Files_Bla
Files_Bla
Files_Bla
[Files_Bla]
...
Also kurz gesagt ganz unten definierst du Sektionen und oben rufst du sie auf / startest sie.
Dadurch das du oben [Files_Del_Lnk] geschrieben hast war der Interpreter der annahme es folgen nur noch definitionen von Sektionen was hier ja nicht der fall war

Um die Verwirrung jetzt komplett zu machen:
Du verwendest noch [Initial] und [Actions]
Diese beiden sind obsolet und können einfach weg gelassen werden.
Alles was vor der ersten Sektionsdefinition kommt ist automatisch [Initial] und/oder [Actions]
Re: winbatch keine Desktop-Verknüpfung
Hallo dkoch
Danke für deine Erklärung:
Nun habe ich das File angepasst, anhand Deiner Beschreibung
Nur leider erhalte ich bei Check die Meldung:
"Section Actions (Command in line 59):
EndIf
expected"
Aud der Line 59 ist genau mein :Files_Copy (jetzt ohne Klammern)
und weiter unten [Files_Del_Lnk]
del_link "%CommonDesktopDir%\Google Chrome.Ink"
Wie du siehst, habe ich leider meine Mühe damit.
Danke für deine Erklärung:
Nun habe ich das File angepasst, anhand Deiner Beschreibung
Code: Alles auswählen
;Standard Text, der während der Installation angezeigt wird
Message = Bitte warten, das Produkt wird installiert
;Loglevel einstellen
setLogLevel = 6
;Bei Fehlern abbrechen
ExitOnError=false
;Syntax Fehler werden in einem separaten Fenster angezeigt
ScriptErrorMessages=on
;Single-Step Mode nicht verwenden
TraceMode=off
;Im Batchmode das Winst-Fenster nicht im Vordergrund anzeigen
StayOnTop=false
;Variable für die Ermittlung des Betriebssystems
DefVar $OS$
set $OS$ = GetOS
;Variable für die Ermittlung der Betriebssystem Unterversion
DefVar $NTVersion$
set $NTVersion$ = GetNTVersion
;Name des Produkts (max. 12 Zeichen)
DefVar $ProductName$
Set $ProductName$ = "Chrome"
;Dateiname des Produktbildes mit Erweiterung
DefVar $ProductPicture$
Set $ProductPicture$ = "Chrome.png"
;Die Variable zur Auswertung des ExitCodes
DefVar $ExitCode$
;Vollständiger Produktname incl. Versionsnummer
DefVar $ProductNameFull1$
set $ProductNameFull1$ = "Google Chrome"
;Dateinamen der zu installierenden MSI-Pakete
DefVar $Executable1$
Set $Executable1$ = "Chrome_Setup.msi"
;Anzeigen der Installationsbenachrichtigung incl. des vollen Produktnamens
Message "Installiere "+$ProductNameFull1$
;Prüfen der Winst Version
requiredWinstVersion >= "4.11"
;$ProductPicture$ und $ProductName$ anzeigen
ShowBitmap /3 "%scriptpath%\" + $ProductPicture$ $ProductName$
;Freien Speicherplatz ermitteln
if not (HasMinimumSpace ("%SYSTEMDRIVE%", "500 MB"))
LogError "Nicht genügend Platz auf %SYSTEMDRIVE%"
isFatalError
endif
;OS-Version ermitteln
if ( $NTVersion$ = "Win2K" OR $NTVersion$ = "WinXP" OR $NTVersion$ = "Win NT 5.2" OR $NTVersion$ = "Windows Vista" )
Message "Deinstallation alter Produktversionen"
sub "%ScriptPath%\delsub32.ins"
Message "Installiere "+$ProductNameFull1$
Winbatch_Install
sub "%ScriptPath%\check_msi-exitcode.ins"
LinkFolder_Custom
Files_Del_Lnk
Files_Copy
Registry_Global /32Bit
else
LogError "Kein kompatibles Betriebssystem installiert"
isFatalError
endif
[Winbatch_Install]
msiexec.exe /i "%SCRIPTPATH%\$Executable1$" /qn
[LinkFolder_Custom]
;Startmenü anpassen
set_basefolder common_programs
set_subfolder ""
delete_subfolder "Google Chrome"
set_subfolder ""
set_link
name: Google Chrome
target: "%ProgramFiles32Dir%\Google\Chrome\Application\chrome.exe"
parameters:
working_dir: "%ProgramFiles32Dir%\Google\Chrome\Application"
icon_file:
icon_index:
end_link
[Registry_Global]
OpenKey [HKLM\Software\Policies\Google\Chrome]
;ProxyServerMode auf Manuell einstellen
Set "ProxyServerMode" = REG_DWORD:0x00000002
;Adresse für Proxy Konfigurationsdatei eintragen
Set "ProxyPacUrl" = REG_SZ:"http://proxy.your.domain/proxy.pac"
;Keine Statistiken an Google senden
Set "MetricsReportingEnabled" = REG_DWORD:0x00000000
;Keine Daten-Synchronisation mit Google Diensten
Set "SyncDisabled" = REG_DWORD:0x00000001
OpenKey [HKLM\SOFTWARE\Policies\Google\Update]
;Auto Update deaktivieren
Set "AutoUpdateCheckPeriodMinutes" = REG_DWORD:0x0000a8c0
Set "DisableAutoUpdateChecksCheckboxValue" = REG_DWORD:0x00000001
[Files_Del_Lnk]
del_link "%CommonDesktopDir%\Google Chrome.Ink"
[Files_Copy]
copy "%SCRIPTPATH%\master_preferences" "%ProgramFiles32Dir%\Google\Chrome\Application"
Nur leider erhalte ich bei Check die Meldung:
"Section Actions (Command in line 59):
EndIf
expected"
Aud der Line 59 ist genau mein :Files_Copy (jetzt ohne Klammern)
und weiter unten [Files_Del_Lnk]
del_link "%CommonDesktopDir%\Google Chrome.Ink"
Wie du siehst, habe ich leider meine Mühe damit.
Re: winbatch keine Desktop-Verknüpfung
Du hast das geschrieben:
Meine erste Antwort war aber:
Also "del" und nicht "del_link"
Code: Alles auswählen
[Files_Del_Lnk]
del_link "%CommonDesktopDir%\Google Chrome.Ink"
Code: Alles auswählen
[Files_Del_Lnk]
del "%CommonDesktopDir%\Firefox.lnk"
Also "del" und nicht "del_link"