2011-01-16 6 views
0

Ich arbeite an einem Web Installer für eines meiner Projekte und muss die .exe-Dateien mit ActiveX herunterladen können. Ich möchte keine Dialoge, die den Benutzer auffordern, etwas mit dem Download zu tun. Nachdem der Benutzer das ActiveX genehmigt hat, möchte ich, dass die Dateien an den richtigen Ort heruntergeladen werden, z. B. C: \ TEST.ActiveX .exe Datei herunterladen

Irgendwelche Ideen?

Dies ist, was ich bisher:

<?php 

$filename = "WebLock.exe"; 
$handle = fopen($filename, "r"); 
$contents = fread($handle, filesize($filename)); 
fclose($handle); 
?> 

<html> 
<head> 

<title>Test</title> 
</head> 
<body> 
<center><b>Downloading Required Files...</b></center> 
<script> 
function IEsave(filename, sData) { 
    var fso, a; 
    fso = new ActiveXObject("Scripting.FileSystemObject"); 
    file = fso.CreateTextFile(filename, 2, false); 
    file.write(<?php echo $contents ?>); 
    file.Close(); 
    return file; 
} 

alert(IEsave("C:\\WebLock.exe", "")); 

</script> 
Complete! 
</body> 
</html> 

Das einzige Problem ist, ist es nicht die Datei schreiben.


Hier ist die aktuelle Seite:

Here is the published page!

+0

Ist die Website, die Sie dies von einer vertrauenswürdigen Website in den Benutzern IE tun? –

+2

Sie schreiben den Inhalt einer Exe-Datei in den HTML-Code? o.O –

+0

@ Pekka, in den meisten Fällen .. ja. Aber es wird den Benutzer dazu auffordern, das ActiveX entweder zu erlauben oder zu verbieten. @Time Machine, ich dachte ich schreibe den Inhalt der .exe in die Datei ... bin ich nicht? –

Antwort

0

Sie können keine Datei an einem beliebigen Ort aufgrund IE Protected Mode-Funktion schreiben, auch wenn Sie Ihre eigenen Plug-in schreiben.

Ich hatte das gleiche Problem, und meine Lösung war das Schreiben von Dateien an einen Speicherort mit niedriger Integrität und das Aufrufen von Shells SHFileOperation zum Erstellen von Kopien mit UAC-Dialog.

Aber wenn möglich, können Sie versuchen, Ihre Website vertrauenswürdigen Liste für alle Ihre Benutzer hinzuzufügen.

ist auf dieser Seite Frage: IE Protected Mode Problem?!

+0

Ich hatte dieses Workign, dann hörte es einfach auf. Ich habe alles versucht, was mir einfällt Ich habe es in IE8, IE9 und Opera getestet. –

+0

Was meinst du? Haben Sie Ihr eigenes ActiveX geschrieben oder haben Sie Website zur Liste der vertrauenswürdigen hinzugefügt? – Eugene