Page 1 of 1

CompileAutoItScripts

PostPosted: 22.05.2018, 23:40
by aker
Moin,

auf einem Rechner verwende ich zur Erstellung von trunk-Builds als Speicher für wsusou einen Pfad mit einem Leerzeichen (ich weiß, dass ohne besser ist, geht auf dieser Maschine aus diversen Gründen aber nicht anders). Dabei stürzt "CompileAutoItscripts.cmd" jedoch ab. Mit folgender Änderung ließe sich dieser Absturz beheben:
Code: Select all
echo Compiling AutoIt-Scripts...
-for %%i in (UpdateGenerator.au3 client\UpdateInstaller.au3) do %~dps0bin\Aut2Exe.exe /in "%%i" /icon %~dps0ico\okshield.ico /comp 0 /nopack
+for %%i in (UpdateGenerator.au3 client\UpdateInstaller.au3) do "%~dps0bin\Aut2Exe.exe" /in "%%i" /icon "%~dps0ico\okshield.ico" /comp 0 /nopack
goto EoF


Ähnliches gilt vermutlich für die anderen Compiler-Skripts. Diese habe ich aber nicht genauer geprüft.

PrepareReleaseTree.cmd
Code: Select all
call %~dps0CompileAutoItScripts.cmd


MakeRelease.cmd
Code: Select all
%~dps0client\bin\%HASHDEEP_EXE% -c md5,sha1,sha256 -b wsusoffline%1.zip >wsusoffline%1.mds


Viele Grüße

Re: CompileAutoItScripts

PostPosted: 23.05.2018, 15:48
by Dalai
Mmh, %~s0 stellt eigentlich schon kurze Dateinamen zur Verfügung. Kann es sein, dass an dem Speicherort bei dir keine kurzen Dateinamen verfügbar sind (z.B. weil deaktiviert)? Testen kann man das im Skript z.B. mit
Code: Select all
for %%i in (UpdateGenerator.au3 client\UpdateInstaller.au3) do echo %~dps0
Oder hast du (normale) Klammern im Pfadnamen drin? Dann sind die der Grund und die Quotes um das Kommando Pflicht trotz kurzer Dateinamen.

Grüße
Dalai

Re: CompileAutoItScripts

PostPosted: 23.05.2018, 18:24
by WSUSUpdateAdmin
Stimmt.
Schaden tun die Anführungszeichen/Quotes/Tüddelchen aber wahrscheinlich nicht, daher hab' ich sie mal ergänzt.
GT

Re: CompileAutoItScripts

PostPosted: 23.05.2018, 19:04
by boco
Äh, Gänsefüßchen? :D

Re: CompileAutoItScripts

PostPosted: 23.05.2018, 19:10
by Dalai
Vor einiger Zeit hab ich einen noch einen anderen Begriff - wenn auch im Zusammenhang mit den einfachen Anführungszeichen - in einem Kommentar im Heise-Forum gelesen: Hochfussel :mrgreen:. Den find ich richtig gut.

Grüße
Dalai

Re: CompileAutoItScripts

PostPosted: 23.05.2018, 20:43
by aker
Interessanterweise liefern zwei Rechner, die vom selben Abbild aufgesetzt wurden, zwei unterschiedliche Ergebnisse.
Der eine mit kurzem Pfad, der andere langem.
Ich wüsste aber nicht, dass ich da was dran gedreht hätte.

Also hier sind "Gänsefüßchen" beliebt... :mrgreen:

Viele Grüße

Re: CompileAutoItScripts

PostPosted: 24.05.2018, 08:00
by boco
Die Erzeugung kurzer Dateinamen ist eine NTFS-Richtlinie und kann pro Laufwerk festgelegt werden. Status abfragen oder ändern mit FSUTIL.

Re: CompileAutoItScripts

PostPosted: 24.05.2018, 16:07
by Dalai
Microsoft hat mal etwas richtig gemacht :shock:. Ich wusste nur von dem Registry-Eintrag, der die 8.3 Erzeugung global umschaltet, also für alle in diesem Windows genutzten Volumes. Aber es ist wohl in neueren Windosen tatsächlich so, dass es auch per Volume festgelegt werden kann: How to disable 8.3 file name creation on NTFS partitions. Wenn ich das richtig lese, muss trotzdem global definiert sein, dass es per Volume ausgewertet wird.

Grüße
Dalai