Цитата Tosyk:
у меня нормально компилируется »
|
Ваш код в принципе не может компилироваться, поскольку в нём есть синтаксические ошибки: отсутствует «#Include <File.au3>», не хватает конкатенации «&» в выражениях и т.п.
Попробовал. Не сконвертировался.
Я пропустил точку в шаблоне расширений. Попробуйте так:
Код:
#Include <File.au3>
AutoItSetOption("MustDeclareVars", 1)
Local $i
Local $sSourceFile, $sDestFile
Local $sDrive, $sFolder, $sFileName, $sExt
Local $sPattern = "\.(?i:tga|jpg|bmp)"
If $CmdLine[0] <> 0 Then
If FileInstall("convert.exe", @TempDir & "\", 1) = 1 Then
For $i = 1 To $CmdLine[0]
$sSourceFile = $CmdLine[$i]
If FileExists($sSourceFile) Then
_PathSplit($sSourceFile, $sDrive, $sFolder, $sFileName, $sExt)
If StringRegExp($sExt, "\A" & $sPattern & "\z", 0) = 1 Then
$sDestFile = _PathMake($sDrive, $sFolder, $sFileName, ".png")
RunWait("""" & @TempDir & "\convert.exe"" """ & $sSourceFile & """ -set colorspace RGB """ & $sDestFile & """", @TempDir, @SW_HIDE)
Else
ConsoleWriteError("Extension of file [" & $sSourceFile & "] is [" & $sExt & "] and not in [" & $sPattern & "]" & @CRLF)
EndIf
Else
ConsoleWriteError("File [" & $sSourceFile & "] not found" & @CRLF)
EndIf
Next
If FileExists(@TempDir & "\convert.exe") = 1 Then
FileDelete(@TempDir & "\convert.exe")
EndIf
Else
ConsoleWriteError("Can't extract [convert.exe] into [" & @TempDir & "]" & @CRLF)
EndIf
Else
MsgBox(0, "Usage", @ScriptName & " <file>")
ConsoleWrite("Usage: " & @ScriptName & " <file>" & @CRLF)
EndIf
Exit(0)