2009-12-11 7 views
6

Utworzono plik cab zawierający mój activex przy użyciu CABARC.exe. Stworzyłem również plik .inf. Mój plik inf wygląda następująco:Utwórz plik CAB dla instalacji ActiveX dla IE

[version] 
    signature="$CHICAGO$" 
    AdvancedINF=2.0 
[Add.Code] 
    MySetup.exe=MySetup.exe 
[MySetup.exe] 
    file-win32-x86=thiscab 
    clsid={49892510-B520-4b35-8ADF-57084DD2F717} 

mój html wygląda następująco:

<object name="secondobj" style='display:none' id='TestActivex' 
classid='CLSID:49892510-B520-4b35-8ADF-57084DD2F717' 
codebase='http://myurl/MySetup.cab#version=1,0,0,0'></object> 

stworzyłem cabarc stosując następujący commmand:

C:\tools\Cab\BIN>CABARC.EXE N MySetup.cab MySetup.msi setup.inf 

Dodałem też http://myurl do zaufanym witryny. Teraz po raz pierwszy otworzyłem stronę html w IE, zobaczyłem żółty pasek, który zaakceptowałem. Jednak nigdy nie zainstalował formantu activex. Nie widzę instalacji w moich plikach programu ani nie widzę niczego w dziennikach zdarzeń ani w tymczasowym folderze pobierania lub w "zarządzaniu dodatkami". Za każdym razem, gdy otwieram stronę w IE, nie widzę już żółtego paska.

Czy ktoś może mi pomóc?

+0

ktoś może pomóc proszę? – vikasde

+0

Witam Vikasde, czy znalazłeś rozwiązanie tego problemu? –

+0

Zobacz moją odpowiedź na dole, proszę. – vikasde

Odpowiedz

1

Wygląda na to, że mój plik .inf był wyłączony. Oto co pracował dla mnie:

[version] 
Signature="$CHICAGO$" 
AdvancedINF=2.0 

[Setup Hooks] 
hook1=hook1 

[hook1] 
run=msiexec.exe /i "%EXTRACT_DIR%\MySetup.msi" /qn 

Aby dokonać kabiny:

CABARC.EXE N MyActiveX.cab MySetup.msi setup.inf 
2
  1. Wydaje mi się, że pakujesz instalator msi zamiast formantu ActiveX.
  2. Po wyodrębnieniu formantu z instalatora MSI i zapakowaniu go do CAB, nie zapomnij dodać jego wersji do pliku INF.

Nadzieja to pomaga ...

Packaging ActiveX Controls

1

VS 2008 stanowi doskonałą CAB Project. Można go znaleźć w sekcji Inne typy projektów/Konfiguracja i wdrażanie/Projekt CAB.

W przypadku prostych projektów CAB wystarczy dodać dane wyjściowe projektu komponentu.

Jeśli potrzebujesz również podpisać swoją CAB, musisz edytować właściwości projektu dodając polecenie budowania signtool.exe, ale gdy będziesz już w stanie podpisać komponent za pomocą wiersza cmd, wystarczy skopiować wiersz poleceń, aby opublikować zdarzenie budowania . Używanie makra $ (ProjectDir) może pomóc w uogólnieniu procesu automatycznej kompilacji.