Hilfe-Installer (Deutsche Hilfe)

Veröffentliche deine funktionierenden Skripte und Funktionen

Moderator: jNizM

User avatar
SAPlayer
Posts: 48
Joined: 30 Sep 2013, 13:38
Location: Germany
Contact:

Hilfe-Installer (Deutsche Hilfe)

30 Sep 2013, 13:53

Habe ein kleines Script gebastelt, um die deutsche Hilfe (von Ragnar) zu "installieren", z.B. nach einem Update auf eine neue AHK-Version (da wird ja immer wieder die englische Hilfe installiert).
Danke hierfür an shajul für die Funktion Unz und natürlich an Ragnar für die deutsche Hilfe (sehr hilfreich).
Hier das Script:

Code: Select all

#SingleInstance ignore
#NoEnv

if(!A_IsAdmin){
	Run *RunAs "%A_ScriptFullPath%",, UseErrorLevel
	if(ErrorLevel){
		MsgBox, 53, Administatorrechte benötigt, Du musst den Updater mit Administratorrechten starten, damit er richtig funktioniert!
		IfMsgBox, Retry
			Reload
		else
			ExitApp
	}
	return
}

Unz(sZip, sUnz){ ;http://www.autohotkey.com/board/topic/60706-native-zip-and-unzip-xpvista7-ahk-l/
    fso := ComObjCreate("Scripting.FileSystemObject")
    If Not fso.FolderExists(sUnz)  ;http://www.autohotkey.com/forum/viewtopic.php?p=402574
       fso.CreateFolder(sUnz)
    psh  := ComObjCreate("Shell.Application")
    zippedItems := psh.Namespace( sZip ).items().count
    psh.Namespace( sUnz ).CopyHere( psh.Namespace( sZip ).items, 4|16 )
    Loop {
        sleep 50
        unzippedItems := psh.Namespace( sUnz ).items().count
        IfEqual,zippedItems,%unzippedItems%
            break
    }
}

SplitPath, A_AhkPath,, AhkDir
ToolTip, Hilfe wird heruntergeladen...
URLDownloadToFile, http://ragnar-f.github.com/download/AutoHotkey_L_Help_DE.zip, %A_Temp%\AHKHelpDE.zip
if(ErrorLevel OR !FileExist(A_Temp "\AHKHelpDE.zip")){
    MsgBox, 21, Fehler beim Download, Ein Fehler beim Download ist aufgetreten!
    IfMsgBox, Retry
        Reload
    else
        ExitApp
}
ToolTip, Hilfe wird entpackt...
Unz(A_Temp "\AHKHelpDE.zip", A_Temp "\AHKHelpDE")
if(!FileExist(A_Temp "\AHKHelpDE\Autohotkey.chm")){
    MsgBox, 21, Fehler beim Entpacken, Ein Fehler beim Entpacken ist aufgetreten!
    IfMsgBox, Retry
        Reload
    else
        ExitApp
}
ToolTip, Hilfe wird verschoben...
FileMove, %A_Temp%\AHKHelpDE\Autohotkey.chm, % AhkDir "\Autohotkey.chm", 1
ToolTip, Temporäre Dateien werden gelöscht...
FileDelete, %A_Temp%\AHKHelpDE.zip
FileRemoveDir, %A_Temp%\AHKHelpDE, 1
ToolTip
MsgBox, Neue deutsche Hilfe kopiert!
ExitApp
 
 
Download:
(Vorübergehend) nicht verfügbar - einfach den Code in eine Datei kopieren und starten
 
Ihr braucht diesen Installer normalerweise nur einmal herunterzuladen, er lädt dann bei jedem Start die neueste Version herunter.
 
Hinweis:
Ihr benötigt für dieses Programm mindestens Windows XP, außerdem muss die Windows-interne ZIP-Funktion aktiviert sein.
User avatar
Ragnar
Posts: 379
Joined: 30 Sep 2013, 15:25

Re: Hilfe-Installer (Deutsche Hilfe)

07 Nov 2014, 09:24

Da der Download-Link der Hilfe-Datei geändert wurde, funktioniert das Script nicht mehr. Hier die angepasste Version:

Code: Select all

#SingleInstance ignore
#NoEnv

if(!A_IsAdmin){
   Run *RunAs "%A_ScriptFullPath%",, UseErrorLevel
   if(ErrorLevel){
      MsgBox, 53, Administatorrechte benötigt, Du musst den Updater mit Administratorrechten starten, damit er richtig funktioniert!
      IfMsgBox, Retry
         Reload
      else
         ExitApp
   }
   return
}

Unz(sZip, sUnz){ ;http://www.autohotkey.com/board/topic/60706-native-zip-and-unzip-xpvista7-ahk-l/
    fso := ComObjCreate("Scripting.FileSystemObject")
    If Not fso.FolderExists(sUnz)  ;http://www.autohotkey.com/forum/viewtopic.php?p=402574
       fso.CreateFolder(sUnz)
    psh  := ComObjCreate("Shell.Application")
    zippedItems := psh.Namespace( sZip ).items().count
    psh.Namespace( sUnz ).CopyHere( psh.Namespace( sZip ).items, 4|16 )
    Loop {
        sleep 50
        unzippedItems := psh.Namespace( sUnz ).items().count
        IfEqual,zippedItems,%unzippedItems%
            break
    }
}

SplitPath, A_AhkPath,, AhkDir
ToolTip, Hilfe wird heruntergeladen...
UrlDownloadToFile, https://github.com/ahkde/docs/releases/latest, %A_Temp%\latest.htm
FileRead, latest, %A_Temp%\latest.htm
if RegExMatch(latest, "/releases/download/(.*?)/", s)
    ReleaseVersion := s1
URLDownloadToFile, https://github.com/ahkde/docs/releases/download/%ReleaseVersion%/AutoHotkeyHelp_DE.zip, %A_Temp%\AHKHelpDE.zip
if(ErrorLevel OR !FileExist(A_Temp "\AHKHelpDE.zip")){
    MsgBox, 21, Fehler beim Download, Ein Fehler beim Download ist aufgetreten!
    IfMsgBox, Retry
        Reload
    else
        ExitApp
}
ToolTip, Hilfe wird entpackt...
Unz(A_Temp "\AHKHelpDE.zip", A_Temp "\AHKHelpDE")
if(!FileExist(A_Temp "\AHKHelpDE\Autohotkey.chm")){
    MsgBox, 21, Fehler beim Entpacken, Ein Fehler beim Entpacken ist aufgetreten!
    IfMsgBox, Retry
        Reload
    else
        ExitApp
}
ToolTip, Hilfe wird verschoben...
FileMove, %A_Temp%\AHKHelpDE\Autohotkey.chm, % AhkDir "\Autohotkey.chm", 1
ToolTip, Temporäre Dateien werden gelöscht...
FileDelete, %A_Temp%\AHKHelpDE.zip
FileDelete, %A_Temp%\latest.htm
FileRemoveDir, %A_Temp%\AHKHelpDE, 1
ToolTip
MsgBox, Neue deutsche Hilfe kopiert!
ExitApp
Last edited by Ragnar on 08 Jul 2016, 18:03, edited 1 time in total.
diddi8
Posts: 1
Joined: 20 May 2015, 01:12

Re: Hilfe-Installer (Deutsche Hilfe)

20 May 2015, 01:22

Danke für dieses Script - macht jedes Update "wertvoller".

Folgendes "Problem" habe ich damit.
Den Installer kann ich nur als Admin ausführen, was zunächst kein Problem ist. Wenn ich aber die Hilfe-Datei als "normaler" Nutzer starten möchte, bekomme ich eine Fehlermeldung. Dieser Fehler kann nur dadurch behoben werden, indem ich in den Dateieigenschaften den betroffenen User den Vollzugriff auf diese Datei einräume.

Gibt es hier noch eine elegantere Lösung?


Gruß diddi

Return to “Skripte und Funktionen”

Who is online

Users browsing this forum: No registered users and 3 guests