Delphi - объектно-ориентированный язык программирования, разработанный компанией Borland в 1995 году. Он основан на языке программирования Pascal, но имеет более расширенные возможности и добавлены новые функции.
Delphi является интегрированной средой разработки (IDE), которая позволяет разрабатывать программное обеспечение для различных платформ, включая Windows, macOS, Android и iOS. Delphi достигает многоплатформенности с помощью...
programSeekFlash; 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 + 'PluginsNPSWF32.dll'; end
else
//found IEExplorer begin
BrowserStr := 'Internet Explorer'; DPChar := StrAlloc(255); GetSystemDirectory(DPChar, 255); PluginName := DPChar + 'MacromedFlashswflash.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
.