sla8a писал(а):
Странно, но вначале у меня не работали первая (memo пустой) и вторая (окно свойств не открывалось) схема. Или третья схема как-то повлияла или что-то еще, но при последующих запусках первой и второй схемы они начали работать.Это очень странно. Схемы друг с другом никак не связаны. В трёх схемах использованы три разных языка программирования:
1. В первой – powershell
2. Во второй – VBS
3. В третьей – jscript
--- Добавлено в 2023-11-12 12:55:20
Тут столкнулся с другой проблемой. При получении мета-данных у файлов *.doc и *.docx (документы MS Word) в диалоге свойств присутствуют:
Знаки, количество –
Количество строк –
Абзацы, количество –
Этих свойств нет даже в самом документе Word, как они попадают в диалог свойств? И как их вытащить не открывая самого документа?
![](/img/icon_plus.gif)
Add(MainForm,14681279,63,84)
{
link(onCreate,188991:doString,[])
}
Add(WinExec,9513980,161,84)
{
FileName="powershell.exe"
Mode=0
Point(doConsoleExec)
Point(onConsoleResult)
Point(onConsoleError)
link(onConsoleResult,3924364:doString,[])
}
Add(FormatStr,188991,112,98)
{
Mask="Add-Type -AssemblyName System.Windows.Forms\r\n$FileBrowser = New-Object System.Windows.Forms.OpenFileDialog -Property @{ \r\n InitialDirectory = [Environment]::GetFolderPath('Desktop')\r\n Title = 'Выберите документ Word '\r\n Multiselect = $true \r\n Filter = 'Documents (*.doc*)|*.doc*|All|*.*'\r\n}\r\n[void] $FileBrowser.ShowDialog()\r\n$FileBrowser.FileNames\r\n "
link(onFString,9513980:doConsoleExec,[])
}
Add(WinExec,13614633,259,84)
{
FileName="powershell.exe"
Mode=0
Point(doConsoleExec)
Point(onConsoleResult)
Point(onConsoleError)
link(onConsoleResult,13388704:doWork2,[])
link(onConsoleError,13388704:doWork3,[(312,111)])
}
Add(Memo,7717528,392,98)
{
Left=550
Top=160
Align=5
ScrollBars=3
}
Add(Charset,12271718,336,98)
{
link(onCharset,7717528:doAdd,[])
}
Add(HubEx,13388704,308,98)
{
link(onEvent,12271718:doCharset,[])
}
Add(FormatStr,3924364,210,98)
{
DataCount=1
Mask="$tmp = Get-ChildItem %1 \r\n$pathname = $tmp.DirectoryName \r\n$filename = $tmp.Name \r\n\r\n$shellobj = New-Object -ComObject Shell.Application \r\n$folderobj = $shellobj.namespace($pathname) \r\n$fileobj = $folderobj.parsename($filename) \r\n$results = $($folderobj.getDetailsOf($fileobj, $index))\r\n$($folderobj.getDetailsOf($fileobj, 2)) + ' - ' + $($folderobj.getDetailsOf($fileobj, 165))\r\n'Расположение - ' + $($folderobj.getDetailsOf($fileobj, 194))\r\n'Количество страниц - ' + $($folderobj.getDetailsOf($fileobj, 157))\r\n'Количество слов - ' + $($folderobj.getDetailsOf($fileobj, 160))\r\n\r\n\r\n"
link(onFString,13614633:doConsoleExec,[])
}