Форум: "Media";
Текущий архив: 2004.06.27;
Скачать: [xml.tar.bz2];
ВнизПроверка на наличие кодека Найти похожие ветки
← →
Dimbas (2004-04-12 16:02) [0]Мастера подскажите плиз как сделать чтобы программа проверяла установлен ли Divx, если нет то сама устанавливала его...
← →
CAHEK © (2004-04-14 00:23) [1]На сколько я помню,DivX кудато в папку Вннды качается,следовательно узнайте этот путь и опред. его через Fileexists();
← →
ЮЮ © (2004-04-14 06:33) [2]const
NOT_INSTALL: string = "Необходимое программное обеспечение не установлено";
NOT_FOUND: string = "Необходимое программное обеспечение не найдено";
function GetInfo(GUID: string): string;
//возвращает версию продукта или NOT_INSTALL или NOT_FOUND
const
pv: string =
"P"#0"r"#0"o"#0"d"#0"u"#0"c"#0"t"#0"V"#0"e"#0"r"#0"s"#0"i"#0"o"#0"n"#0;
var
buff: string;
c: cardinal;
fn: string;
i: integer;
l: integer;
reg: TRegistry;
begin
reg := TRegistry.Create(KEY_READ);
try
reg.RootKey := HKEY_CLASSES_ROOT;
if
Reg.OpenKey(
"\CLSID\" + GUID + "\InprocServer32", false
)
then begin
fn := reg.ReadString("");
if fn <> "" then begin
l := GetFileVersionInfoSize(PChar(fn), c);
SetLength(buff, l);
GetFileVersionInfo(PChar(fn), c, l, @buff[1]);
Result := "";
i := Pos(PV, buff) + length(PV);
l := 1;
while buff[i + l*2] > #0 do begin
Result := Result + buff[i + l*2];
inc(l);
end;
Result := AnsiReplaceText(Result, ",", ".");
Result := AnsiReplaceText(Result, " ", "");
end
else
Result := NOT_FOUND;
end
else
Result := NOT_INSTALL;
finally
reg.Free;
end;
end;
для DivX:
GetInfo("{78766964-0000-0010-8000-00AA00389B71}");
для MPEG Layer-3:
GetInfo("{38BE3000-DBF4-11D0-860E-00A024CFEF6D}");
Страницы: 1 вся ветка
Форум: "Media";
Текущий архив: 2004.06.27;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.034 c