[решено] Показать имена всех EXE файлов в папке
-
Centrinar
[решено] Показать имена всех EXE файлов в папке
Как показать имена всех EXE файлов в папке?
СПАСИБО!
СПАСИБО!
-
Centrinar
Re: [решено] Показать имена всех EXE файлов в папке
Проблема если скрипт запускать с Флешки, он после @ScriptDir ставит еще одну "\" т.е. я указываю $aReturn = _FileCMDSearch(@ScriptDir & "\exefiles\, "*.exe") в итоге он пишет: D:\\exefiles\...
Как решить данную проблему?
Как решить данную проблему?
-
Centrinar
Re: [решено] Показать имена всех EXE файлов в папке
Я запутался, а как сделать чтобы он не массив отображал а записал названия EXE в INI
-
Creat0R
Re: [решено] Показать имена всех EXE файлов в папке
Цитата:
Как показать имена всех EXE файлов в папке?
Включая подпапки?
Как показать имена всех EXE файлов в папке?
Включая подпапки?
Код: Выделить всё
#include <Array.au3>
$aReturn = _FileCMDSearch(@ScriptDir, "*.exe")
_ArrayDisplay($aReturn)
;$iFlag = 0 - Files and folders (default)
;$iFlag = 1 - Only files
;$iFlag = 2 - Only folders
Func _FileCMDSearch($sPath, $sFileMask, $iFlag = 0)
Local $sOutBin, $sOut, $aOut, $sRead, $hDir, $sAttrib
Switch $iFlag
Case 1
$sAttrib = ' /A-D'
Case 2
$sAttrib = ' /AD'
Case Else
$sAttrib = ' /A'
EndSwitch
$sOut = StringToBinary('0' & @CRLF, 2)
$aMasks = StringSplit($sFileMask, ';')
For $i = 1 To $aMasks[0]
$hDir = Run(@ComSpec & ' /U /C DIR "' & $sPath & '\' & $aMasks[$i] & '" /S /B' & $sAttrib, @SystemDir, @SW_HIDE, 6)
While 1
$sRead = StdoutRead($hDir, False, True)
If @error Then
ExitLoop
EndIf
If $sRead <> "" Then
$sOut &= $sRead
EndIf
Wend
Next
$aOut = StringRegExp(BinaryToString($sOut, 2), '[^\r\n]+', 3)
If @error Or UBound($aOut) < 2 Then
Return SetError(1)
EndIf
$aOut[0] = UBound($aOut)-1
Return $aOut
EndFunc-
Centrinar
Re: [решено] Показать имена всех EXE файлов в папке
Цитата Centrinar:
как сделать чтобы он не массив отображал а записал названия EXE в INI
См. в справке функций IniRead*.
как сделать чтобы он не массив отображал а записал названия EXE в INI
[решено] Показать имена всех EXE файлов в папке
См. в справке функций IniRead*.
-
Creat0R
Re: [решено] Показать имена всех EXE файлов в папке
IniWrite ты имел ввиду? А как инфу с массива считать?
-
Centrinar
Re: [решено] Показать имена всех EXE файлов в папке
IniWrite ты имел ввиду? А как инфу с массива считать?
-
Creat0R
Re: [решено] Показать имена всех EXE файлов в папке
Цитата:
IniWrite ты имел ввиду?
Я кажется написал IniRead.
А имел я в виду конкретно IniReadSection, которая прочитает секцию Ini в массив, таким образом можно отобразить содержимое Ini в _ArrayDisplay. Это ведь надо? Так по крайней мере я понял с предложения:
Цитата:
как сделать чтобы он не массив отображал а записал названия EXE в INI
хотя есть подозрение что нужно как раз наоборот (записать в Ini содержимое полученного массива с результатом поиска Exe файлов).
IniWrite ты имел ввиду?
Я кажется написал IniRead.
А имел я в виду конкретно IniReadSection, которая прочитает секцию Ini в массив, таким образом можно отобразить содержимое Ini в _ArrayDisplay. Это ведь надо? Так по крайней мере я понял с предложения:
Цитата:
как сделать чтобы он не массив отображал а записал названия EXE в INI
хотя есть подозрение что нужно как раз наоборот (записать в Ini содержимое полученного массива с результатом поиска Exe файлов).
-
Centrinar
Re: [решено] Показать имена всех EXE файлов в папке
Creat0R - извини за мои глупые вопросы. Сам знаешь что в AutoIt я новенький, спасибо за твою помощь! Я имел ввиду
Цитата:
записать в Ini содержимое полученного массива с результатом поиска Exe файлов
Цитата:
записать в Ini содержимое полученного массива с результатом поиска Exe файлов
-
kaster
Re: [решено] Показать имена всех EXE файлов в папке
Цитата Centrinar:
записать в Ini содержимое полученного массива с результатом поиска Exe файлов
Как то так:
Код:
записать в Ini содержимое полученного массива с результатом поиска Exe файлов
[решено] Показать имена всех EXE файлов в папке
Как то так:
Код:
Код: Выделить всё
$aReturn = _FileCMDSearch(@ScriptDir, "*.exe")
For $i = 1 To UBound($aReturn)-1
IniWrite("file.ini", "Exe Section", $i, $aReturn[$i])
Next