Я работаю над формой, которая будет искать все подключенные диски для файлов PST.Заполнение datagridview
я могу заставить его работать с помощью следующей команды: -
Get-PSDrive -PSProvider "filesystem"|%{get-childitem $_.root -include *.pst -r}|select name, directoryname, @{name="Size (GB)";expression ={"{0:N2}" -f ($_.length/1GB)}}
Единственная проблема, это занимает около 45 минут, чтобы пройти через все приводы и закончить поиск. Я думал о том, чтобы ускорить его, используя индекс поиска Windows.
Я получил это ....
function Searchindex{
$query="SELECT System.ItemName, system.ItemPathDisplay, System.ItemTypeText, System.Size FROM SystemIndex where system.itemtypetext = 'outlook data file'"
$objConnection = New-Object -ComObject adodb.connection
$objrecordset = New-Object -ComObject adodb.recordset
$objconnection.open("Provider=Search.CollatorDSO;Extended Properties='Application=Windows';")
$objrecordset.open($query, $objConnection)
[email protected]()
Try { $objrecordset.MoveFirst() }
Catch [system.exception] { "no records returned" }
do
{
Write-host ($objrecordset.Fields.Item("System.ItemName")).value `
($objrecordset.Fields.Item("System.ItemPathDisplay")).value `
($objrecordset.Fields.Item("System.ITemTypeText")).value `
($objrecordset.Fields.Item("System.Size")).value
if(-not($objrecordset.EOF)) {$objrecordset.MoveNext()}
} Until ($objrecordset.EOF)
$objrecordset.Close()
$objConnection.Close()
$objrecordset = $null
$objConnection = $null
[gc]::collect()
}
это выводит детали на экране в течение нескольких секунд, что является совершенным, но я не могу работать, как отобразить в представлении DataGrid.
Я использую первичную форму для создания форм.
После того как данные заполняется в DataGridView, я хочу, чтобы иметь возможность выбирать записи и копировать их на новое место
Может кто-нибудь помочь?
ТИА
Энди
Это работает очень хорошо. Спасибо. Как я могу получить вывод, который будет отображаться в столбцах? –
Вы говорите о 'DataGridView' или' Out-GridView'? Причина 'Out-GridView' отображает столбцы по умолчанию? – Matt
Datagridview идеально –