Вверх ↑
Этот топик читают: Гость
Ответов: 279
Рейтинг: 21
#16: 2023-11-12 11:50:05 ЛС | профиль | цитата
sla8a писал(а):
Странно, но вначале у меня не работали первая (memo пустой) и вторая (окно свойств не открывалось) схема.

У меня так же.
Первая схема показала пустое окно.
Вторая схема запустилась и завершилась, не показав ничего.
Третью не запускал.
Все последующие запуски схем 1 и 2 уже давали результат.
карма: 2
1
Голосовали:sla8a
Ответов: 607
Рейтинг: 130
#17: 2023-11-12 12:42:18 ЛС | профиль | цитата
sla8a писал(а):
Странно, но вначале у меня не работали первая (memo пустой) и вторая (окно свойств не открывалось) схема. Или третья схема как-то повлияла или что-то еще, но при последующих запусках первой и второй схемы они начали работать.

Это очень странно. Схемы друг с другом никак не связаны. В трёх схемах использованы три разных языка программирования:
1. В первой – powershell
2. Во второй – VBS
3. В третьей – jscript

--- Добавлено в 2023-11-12 12:55:20

Тут столкнулся с другой проблемой. При получении мета-данных у файлов *.doc и *.docx (документы MS Word) в диалоге свойств присутствуют:
Знаки, количество –
Количество строк –
Абзацы, количество –
Этих свойств нет даже в самом документе Word, как они попадают в диалог свойств? И как их вытащить не открывая самого документа?
Данные файла Word.PNG

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,[])
}


Редактировалось 2 раз(а), последний 2023-11-12 12:56:55
карма: 14

0
Ответов: 279
Рейтинг: 21
#18: 2023-11-12 16:08:28 ЛС | профиль | цитата
Gunta писал(а):
Знаки, количество –
Количество строк –
Абзацы, количество –


Это динамические данные и скорей всего подсчитываются и выдаются при обращении к документу каким то другим способом.

Редактировалось 1 раз(а), последний 2023-11-12 16:10:02
карма: 2
0
Ответов: 607
Рейтинг: 130
#19: 2023-11-15 17:38:25 ЛС | профиль | цитата
Gunta писал(а):
При получении мета-данных у файлов *.doc и *.docx (документы MS Word) в диалоге свойств присутствуют:
Знаки, количество –
Количество строк –
Абзацы, количество –

Эти параметры из документов *.docx можно вытащить таким способом.

Add(MainForm,14681279,105,84)
{
Width=665
Height=432
Caption="Получение всех не пустых свойст файла"
link(onCreate,188991:doString,[])
}
Add(Memo,7717528,322,98)
{
Width=649
Height=393
Align=5
Font=[Consolas,12,0,0,204]
ScrollBars=3
}
Add(Charset,12271718,273,98)
{
link(onCharset,7717528:doAdd,[])
}
Add(HubEx,13388704,252,98)
{
link(onEvent,12271718:doCharset,[])
}
Add(WinExec,9513980,210,84)
{
FileName="powershell.exe"
Mode=0
Point(doConsoleExec)
Point(onConsoleResult)
Point(onConsoleError)
link(onConsoleResult,13388704:doWork2,[])
link(onConsoleError,13388704:doWork3,[(256,111)])
}
Add(FormatStr,188991,161,98)
{
Mask="Add-Type -AssemblyName System.Windows.Forms\r\nAdd-Type -AssemblyName System.IO.Compression.FileSystem\r\n\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 (*.docx)|*.docx|All|*.*'\r\n}\r\n[void] $FileBrowser.ShowDialog()\r\n\r\n$filename = $FileBrowser.FileNames\r\n\r\n$zip = [System.IO.Compression.ZipFile]::Open($filename, 'Read')\r\n$propsentry = $zip.GetEntry('docProps/app.xml')\r\nIf ($propsentry -ne $null) {\r\n $stream = $propsentry.Open()\r\n $reader = New-Object System.IO.StreamReader $stream\r\n $content = $reader.ReadToEnd()\r\n $xmldoc = [xml]$content\r\n $xmldoc.Properties \r\n}\r\n$zip.Dispose() "
link(onFString,9513980:doConsoleExec,[])
}

карма: 14

0
Ответов: 279
Рейтинг: 21
#20: 2023-11-15 19:10:39 ЛС | профиль | цитата
А это что?
xmlns : http://schemas.openxmlformats.org/officeDocument/2006/extended-properties
vt : http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes

Извиняюсь, нашёл в инете уже.

Редактировалось 4 раз(а), последний 2023-11-15 20:28:03
карма: 2
0
Ответов: 279
Рейтинг: 21
#21: 2023-11-16 11:08:54 ЛС | профиль | цитата
Раз уж пошёл такой разговор про мета данные.
Возможно ли расширить компонент Version?

Вот Version.rc
1 VERSIONINFO
FILEVERSION 1,0,0,1
PRODUCTVERSION 1,0,0,1
FILEFLAGSMASK 0x17L
FILEOS 0x4L
FILETYPE 0x1L
FILESUBTYPE 0x0L
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "041904b0"
BEGIN
VALUE "FileDescription", "%fdesname"
VALUE "FileVersion", "%ver"
VALUE "InternalName", "%pname"
VALUE "LegalCopyright", "Copyright (C) 2022"
VALUE "OriginalFilename", "%fname"
VALUE "ProductName", "%pname"
VALUE "ProductVersion", "%ver"
VALUE "E-mail", "%mail"
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0x419, 1200
END
END

Редактировалось 2 раз(а), последний 2023-11-16 16:13:21
карма: 2
0
21
Сообщение
...
Прикрепленные файлы
(файлы не залиты)