ChanVS
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору procedure RecodePCF; var ResultCode: integer; CurFile: String; begin ExtractTemporaryFile('precomp.exe'); ExtractTemporaryFile('packjpg_dll.dll') ExtractTemporaryFile('ProgressImg2.png'); FindFiles(ExpandConstant('{app}'), '*.pcf') Files:= StringToArray(S, '|') WizardForm.ProgressGauge.Max:= GetArrayLength(Files); StatusLabel.Caption:='Рекомпрессия извлеченного файла...'; for n:=(GetArrayLength(Files)-1) downto 0 do begin FileCopy(ExpandConstant('{tmp}\precomp.exe'),AddBackslash(ExtractFilePath(Files[n]))+'precomp.exe', False) FileCopy(ExpandConstant('{tmp}\packjpg_dll.dll'),AddBackslash(ExtractFilePath(Files[n]))+'packjpg_dll.dll', False) WizardForm.FilenameLabel.Caption:= Files[n]; Exec(AddBackslash(ExtractFilePath(Files[n]))+'precomp.exe', '-d '+AddQuotes(Files[n]), '', SW_Hide, EwWaitUntilTerminated, ResultCode) //ProgressBar.Position:= ProgressBar.Position +1; DeleteFile(Files[n]) DeleteFile(AddBackslash(ExtractFilePath(Files[n]))+'packjpg_dll.dll') DeleteFile(AddBackslash(ExtractFilePath(Files[n]))+'precomp.exe') end; end; procedure RecodeOgg; var ResultCode: integer; CurFile: String; begin FindFiles(ExpandConstant('{app}'), '*.ogg') //Находим все файлы по маске, в выбранной папке Files:= StringToArray(S, '|') //Переводим в массив StatusLabel.Caption:='Рекомпрессия звуковых файлов...'; //показует надпись for m:=(GetArrayLength(Files)-1) downto 0 do begin CurFile:= Files[m] StringChange(CurFile, AddBackslash(ExpandConstant('{app}')), '') Exec(ExpandConstant('{app}\oggdec.exe'), '-Q '+AddQuotes(CurFile), '', SW_Hide, EwWaitUntilTerminated, ResultCode) //Для каждого файла запускаем декодер DeleteFile(Files[m]) //Удаляем ненужный файл FilenameLabel.Caption:= Files[m]; //ProgressBar2.Position:= ProgressBar2.Position +1; end; DeleteFile(ExpandConstant('{app}\oggdec.exe')) ImgPBDelete(NewPB); ImgPBDelete(NewPB2); ImgPBDelete(NewPB3); end; |