2010-02-01 4 views

Antwort

19
function AXOrNull(progId) { 
    try { 
    return new ActiveXObject(progId); 
    } 
    catch (ex) { 
    return null; 
    } 
} 
+0

Nun, ich dachte, das funktionierte, aber die ActiveX-Dateien sind jetzt an Meine lokale Maschine, und diese Methode gibt immer null zurück. ich diesen Code angegeben wurde: aber Ich bin nicht sicher, welcher Teil dieses Codes für progId gehen sollte. Ich habe es mit der Classid aus diesem Code und der Codebasis versucht, beide geben immer null zurück. –

+1

Durchsuchen Sie im Zweifelsfall den Zweig 'HKCR \ CLSID' der Registrierung nach der betreffenden CLSID. Wenn Sie es gefunden haben * und * die Klasse ist COM aktiviert, finden Sie einen Unterschlüssel mit dem Namen 'ProgID'. Der Standardwert dieses Schlüssels ist die ProgID, die Sie benötigen. – Tomalak

+0

AXOrNull ('ASPPrinter.CAB') – DoctorLouie

9

Lösung, versuchen, eine neue ActiveXObject aufzurufen:


function testForActiveX(){ 
    tester = null; 
    try { 
     tester = new ActiveXObject('htmlfile'); 
    } 
    catch (e) { 
     // catch the exception 
    } 
    if (tester) { 
     // ActiveX is installed 
     return true; 
    } 
    return false; 
} 
0
try{ 
     if(new ActiveXObject("Nameofplugin")){ 
     // write your code if plugin available 
     } 
     else{ 
     // write your code if plugin is not available 
     } 
    } 
    catch(erro){ 
    //write your code if plugin is not available 
    } 

` Nameofplugin Sie von IE bekommen -> Werkzeug -> ManageAddons -> prüfen die Liste und wählen Sie den Namen Ihrer unterstützenden Plugin

Verwandte Themen