Наверное нет. Вот откопался скриптик читающий то что я понимаю под метадатой файла скрипта:WSWR сказал(а):saraconor
EXIF что ли?
#include <Array.au3>
$prop = _GetExtProperty(@ScriptFullPath,-1)
_ArrayDisplay($prop,"Property Array")
Func _GetExtProperty($sPath, $iProp)
Local $iExist, $sFile, $sDir, $oShellApp, $oDir, $oFile, $aProperty, $sProperty
$iExist = FileExists($sPath)
If $iExist = 0 Then
SetError(1)
Return 0
Else
$sFile = StringTrimLeft($sPath, StringInStr($sPath, "\", 0, -1))
$sDir = StringTrimRight($sPath, (StringLen($sPath) - StringInStr($sPath, "\", 0, -1)))
$oShellApp = ObjCreate("shell.application")
$oDir = $oShellApp.NameSpace ($sDir)
$oFile = $oDir.Parsename ($sFile)
If $iProp = -1 Then
Local $aProperty[21]
For $i = 0 To 20
$aProperty[$i] = $oDir.GetDetailsOf ($oFile, $i)
Next
Return $aProperty
Else
$sProperty = $oDir.GetDetailsOf ($oFile, $iProp)
If $sProperty = "" Then
Return 0
Else
Return $sProperty
EndIf
EndIf
EndIf
EndFunc ;==>_GetExtProperty
Ну на то и раздел для новичков. Даже если я найду эту информацию, врятли я ей найду применение в autoit.Yashied сказал(а):Далеко не все редакторы заполняют теги при сохранении .jpg файла. Я думаю, что вам лучше более конкретно описать то, что вы хотите в результате получить, т.к. вряд ли целью является только .jpg файлы. Универсальных тегов для любых типов файлов попросту нет. Возможно, решением будет создание альтернативных потоков (свойство NTFS), см. пример к функции _WinAPI_EnumFileStreams().
Если же вы настаиваете на .jpg, то в сети полно документации на этот формат, после ознакомления которой, вы сможете использовать .jpg по полной.
Ну тогда поднимайте тему раз в 24 часа, кто-нибудь да поможет с кодом. У меня, к сожалению, нет времени, да и сама тема не цепляет как-то.saraconor сказал(а):Ну на то и раздел для новичков. Даже если я найду эту информацию, врятли я ей найду применение в autoit.
#include <GDIP.au3>
Local $hImage, $aAllProperty, $tData
_GDIPlus_Startup()
$hImage = _GDIPlus_ImageLoadFromFile(@ScriptDir & '\test.jpg')
$aAllProperty = _GDIPlus_ImageGetAllPropertyItems($hImage)
For $i = 1 To $aAllProperty[0][0]
If $aAllProperty[$i][2] <> 2 Then ContinueLoop
$tData = DllStructCreate('char[' & $aAllProperty[$i][1] + 1 & ']', $aAllProperty[$i][3])
;~ $GDIP_PROPERTYTAG* constants and value
ConsoleWrite('0x' & Hex($aAllProperty[$i][0], 4) & @TAB & DllStructGetData($tData, 1) & @LF)
Next
_GDIPlus_ImageDispose($hImage)
_GDIPlus_Shutdown()
#include <GDIP.au3>
$sFileJPG = FileOpenDialog('Выберите файл', @ScriptDir & '\', 'Изображения (*)', 1)
_GDIPlus_Startup()
$hImage = _GDIPlus_ImageLoadFromFile($sFileJPG)
$aAll = _GDIPlus_ImageGetAllPropertyItems($hImage)
$tPropertyData = DllStructCreate('char[' & $aAll[6][1] & ']', $aAll[6][3])
ConsoleWrite(DllStructGetData($tPropertyData, 1) & @LF)
_GDIPlus_ImageDispose($hImage)
_GDIPlus_Shutdown()
Смотрите в GDIP.au3 функции _GDIPlus_ImageSetPropertyItem, _GDIPlus_ImageRemovePropertyItem.Как можно изменить эту строку