Что нового

Получение версии Flash Player`а зарегистрированного в операционной системе.

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
Узнать версию Flash Player`а (зарегистрированного в операционной системе), можно обратившись к глобальному свойству $version.

Пример.
Код:
Global $_Object = ObjCreate("ShockwaveFlash.ShockwaveFlash")
$_Object.AllowScriptAccess = "always"
Global $sVersion = $_Object.GetVariable("$version")
#cs
	Теперь переменная $sVersion содержит:
		- OS
		- основной номер
		- дополнительный номер
		- номер сборки
		- внутренний номер сборки
#ce
ConsoleWrite($sVersion & @CR)
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8,673
Репутация
2,484
Это не совсем полный метод, я использую вот это:

Код:
Global $oErr = ObjEvent("AutoIt.Error", "_ComError")

ConsoleWrite(_FlashGetVersion() & @CRLF)

;Return: OS, Flash version and build
Func _FlashGetVersion()
	Local $oSwf, $sVersion
	
	$oSwf = ObjCreate("ShockwaveFlash.ShockwaveFlash")
	If @error Then Return 0 ; No flash at all
	
	$oSwf.AllowScriptAccess = "always" ;;Need for 6.0r47
	
	$sVersion = $oSwf.GetVariable("$version")
	
	If @error Then
		$oSwf = ObjCreate("ShockwaveFlash.ShockwaveFlash.3")
		
		If @error Then
			$oSwf = ObjCreate("ShockwaveFlash.ShockwaveFlash.2")
			If @error Then Return 0
			$sVersion = 2
		EndIf
		
		$sVersion = 3
	EndIf
	
	Return $sVersion
EndFunc

Func _ComError()
	; Just set @error, the script will handle it...
	Local $iErr = $oErr.number
	If $iErr = 0 Then $iErr = -1
	SetError($iErr)
EndFunc
 
Автор
Garrett

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
CreatoR
Согласен, только по-моему Flash.3 и Flash.2 вряд ли кто использует :smile:
На счет метода AllowScriptAccess согласен. Поправил.
 

querubin_new

Новичок
Сообщения
10
Репутация
0
Re: Получение версии Flash Player`а зарегистрированного в операционной системе

первый вариант НЕ работает ...

Variable must be of type "Object".:
$_Object.AllowScriptAccess = "always"
$_Object^ ERROR

Второй вариант выдаёт результат = 0

Что не так?
Win_XP SP3 (у меня)
 

InnI

AutoIT Гуру
Сообщения
4,950
Репутация
1,444
Re: Получение версии Flash Player`а зарегистрированного в операционной системе

querubin_new
Вероятно - не установлен. У меня оба варианта работают и на XP и на 7 и на 10.
 
Верх