-1
我使用的AutoIt。
我有一個函數列出了計算機上安裝的所有程序。它結束與:需要幫助閱讀功能輸出
返回$軟件
ENDFUNC
我也有,我想比較一下程序的主列表。我有一個腳本可以完成我想要的功能,但是我無法將$軟件合併到新功能中。
#include <Array.au3>
Local $software
Local $a[50] = ["CCleaner", "Java [6]", "Adobe", "MBAM"]
Local $b[50] = ????????
_ArrayDisplay(_Separate($a, $b))
Func _Separate(ByRef $in0, ByRef $in1)
$in0 = _ArrayUnique($in0, 0, Default, Default, 0)
$in1 = _ArrayUnique($in1, 0, Default, Default, 0)
Local $z[2] = [UBound($in0), UBound($in1)], $low = 1 * ($z[0] > $z[1]), $aTemp[$z[Not $low]][3], $aOut = $aTemp, $aNdx[3]
For $i = 0 To $z[Not $low] - 1
If $i < $z[0] Then $aTemp[$i][0] = $in0[$i]
If $i < $z[1] Then $aTemp[$i][1] = $in1[$i]
Next
For $i = 0 To $z[$low] - 1
$x = _ArrayFindAll($aTemp, $aTemp[$i][$low], 0, 0, 1, 0, Not $low)
If Not @error Then ; both
For $j = 0 To UBound($x) - 1
$aTemp[$x[$j]][2] = 1
Next
$aOut[$aNdx[2]][2] = $aTemp[$i][$low]
$aNdx[2] += 1
Else ; only in $low
$aOut[$aNdx[$low]][$low] = $aTemp[$i][$low]
$aNdx[$low] += 1
EndIf
Next
For $i = 0 To $z[Not $low] - 1
If $aTemp[$i][2] <> 1 Then
$aOut[$aNdx[Not $low]][Not $low] = $aTemp[$i][Not $low]
$aNdx[Not $low] += 1
EndIf
Next
ReDim $aOut[_ArrayMax($aNdx)][3]
Return $aOut
EndFunc ;==>_Separate
如何獲取$軟件的內容到$ b數組中?
感謝您的幫助。我嘗試了你的第一個建議,它只輸出字符串中的第一個文件。當地$ A [50] = [ 「CCleaner的」, 「Java的[6]」,爲 「Adobe」, 「MBAM」] 本地$ softwareb [50] = [_軟件()]我不知道該怎麼做你的其他2條建議。 _ArrayDisplay(_Separate($ A,$ softwareb)) –
對不起我以前的評論的混亂。我無法糾正它。 –