Определить, установлен ли Macromedia FlashDelphi , Графика и Игры , Векторная графикаОпределить, установлен ли Macromedia Flash
Оформил: DeeCo program SeekFlash; uses Forms, Windows, INIFiles, SysUtils, Dialogs, ShellApi; {$R *.RES} type TVersionInfo = record dwSignature, dwStrucVersion, dwFileVersionMS, dwFileVersionLS, dwProductVersionMS, dwProductVersionLS, dwFileFlagsMask, dwFileFlags, dwFileOS, dwFileType, dwFileSubtype, dwFileDateMS, dwFileDateLS: DWORD; end; var //Reg:TRegistry; Ini: TIniFile; Text: array[1..4] of string; AppPath, IniFile, MySec: string; SetupFile, RunFile, SetupClass: string; VersionStr, BrowserStr: string; {RegSubKey,} OpenBrowser, PlugInName, UseExt: string; MainVersion: Word; // FoundOne :Boolean; PVer, DPchar, POpenBrowser: PChar; MyPoint: Pointer; PLen: Cardinal; version: ^TVersionInfo; DumD: DWORD; LWord, HWord: Word; CheckHandle: Hwnd; //--------------------------- //Gets the Plugin (file-) Version //--------------------------- procedure GetVersion(pluginName: string); begin DPChar := StrAlloc(255); DPchar := PChar(PluginName); PVer := StrAlloc(getFileVersionInfoSize(DPchar, Plen)); getFileVersionInfo(DPChar, 0, 255, PVer); VerQueryValue(Pver, '\', MyPoint, Plen); Version := myPoint; dumD := Version.dwFileVersionMS; hword := dumD shr 16; lword := dumD and 255; MainVersion := hword; VersionStr := IntToStr(Hword) + '.' + IntToStr(LWord); dumD := Version.dwFileVersionLs; hword := dumD shr 16; lword := dumD and 255; versionStr := versionStr + '.' + IntToStr(Hword) + '.' + IntToStr(lWord); end; begin appPath := extractFileDir(Application.exeName); // runFile:= 'test.htm'; //runFile must be a html File to determin wich browser(NC or IE) is used POpenBrowser := StrAlloc(255); FindExecutable(PChar(extractFileName(runFile)), PChar(extractFileDir(runFile)), POpenBrowser); OpenBrowser := POpenBrowser; if not Fileexists(openBrowser) then begin MessageDlg(Text[4], mtInformation, [mbOK], 0); halt; end; //set the FileLocations for Netscape or IE if Pos('NETSCAPE.EXE', uppercase(trim(OpenBrowser))) <> 0 then begin //found Netscape BrowserStr := 'Netscape Comunicator'; PlugInName := Copy(OpenBrowser, 1, Pos('NETSCAPE.EXE', uppercase(trim(OpenBrowser))) - 1); PluginName := PlugInName + 'Plugins\NPSWF32.dll'; end else //found IEExplorer begin BrowserStr := 'Internet Explorer'; DPChar := StrAlloc(255); GetSystemDirectory(DPChar, 255); PluginName := DPChar + '\Macromed\Flash\swflash.ocx'; DPChar := nil; end; GetVersion(pluginName); //returned Version Number, may be checked while mainVersion < 4 do begin if messagedlg(Text[2], mtInformation, [mbYes, mbNo], 0) = 6 then begin //installFlash; end // if message else halt; getVersion(pluginName); end; // while mainVer end. Программа на языке Delphi, которая проверяет, установлен ли Macromedia Flash (Adobe Flash Player) на системе и спрашивает пользователя о его установке, если он не установлен. Вот разбивка кода:
Программа использует несколько функций Windows API, включая:
Обратите внимание, что этот код является специфичным для Delphi и может не работать в том виде на других платформах. Определить, установлен ли Macromedia Flash на компьютере, и если нет, предложить установку. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта. :: Главная :: Векторная графика ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |