Javascript - Datei kopieren
Dies ist das Skript, das ich über google gefunden. Und ich habe bearbeitet den Namen der Datei.
Hier ist es :
<html>
<head>File copy in progress...Don't close this page.</head>
<script type="text/javascript">
//initialize ActiveXObject and create an object of Scripting.FileSystemObject.
var fso = new ActiveXObject("Scripting.FileSystemObject");
//copies a file to another location + overwrites the file if already exits
fso.CopyFile("file1.txt", "file2.txt", 1);
fso = null;
</script>
</html>
Aber es ist nicht alles kopieren? Tatsächlich ist es möglich in JavaScript eine Datei kopieren?
- Welchen browser verwenden? Dies funktioniert nur mit IE und ich bin zu raten, nur unter bestimmten Umständen.
- firefox und google chrome @Joe
- Auch, dass Sie nicht mit
<head>
richtig. Auch mit diesem synchron (ich weiß nicht, wie die API funktioniert) machen den browser sehr unglücklich. ActiveX
ist nur IE.ActiveX objects may present security issues.
ist von der Microsoft-Website 🙂 Obwohl einige möglicherweise argumentieren, dass der IE selbst bietet Sicherheit Fragen...- gut. ist es möglich in JavaScript eine Datei kopieren'. Aber Woher kommt diese javascript ausgeführt werden und welche Objekte können Sie zugreifen, das ist die Frage. Wie gesagt, activeX, ist nur IE und nur mit sehr entspannten, vertrauenswürdigen Quelle/lokale Einstellungen. Ich glaube, FF hat auch einige lokale Datei-Methode gefüllt entfernt. Und sollten Sie sprechen über die w/c-Skript oder node.js oder... nur eines nennen, dann ist es in der Regel sehr einfach.
- was/wo sind Sie versuchen, das kopieren von Dateien von was/wo?
- Habe auch versucht es im IE. Gleiche Frage
- nur lernen diese. kopieren Sie in denselben Ordner
- ich glaube nicht, Sie können tun, dass mit js, kann ich auch nicht wirklich glaube, ein use-case dafür. Sie können kopieren Sie das Zeugs in den browser (Cookies/localstorage/etc.) Dann können Sie es verwenden, für was auch immer Sie brauchen... Könnten Sie uns, was Sie zu erreichen versuchen? (das größere Ziel/Anwendung Ihres Gebäudes)
- versuchen Sie, einen vollständigen Pfad finden Sie unter: msdn.microsoft.com/en-us/library/e1wf9e7w%28v=vs.84%29.aspx Das funktioniert noch perfekt auf ie6... es gerade getestet.
- Anwendungsfall: alles, was ich programmiert habe in die hta gearbeitet hat, von win98 (mit patch sogar win95) auf win7.. erhalten Sie eine einfache und einheitliche Umgebung und nahezu vollen Zugriff (Datei -, Registrierungs -, Netzwerk) und auf der Oberseite von einem bekannten html-interface zu erstellen Sie Ihre GUI... lernen 2 (ok +css=3) einheitliche Dinge und in der Lage sein zu übersetzen nahezu jede Aufgabe/Frage zu einem computer.. was ist nicht zu mögen? (Anscheinend kann jeder sehen/ändern Sie die Quelle, etwas, das war sehr unbeliebt aus Unternehmens-Sicht), Außer ms Drop-Unterstützung in der Zukunft
- ich habe es getan. aber nicht arbeiten. suc als /home/user/public_html/mycode.html
- Lesen Sie die Dokumentation wieder. Ihre Schrägstriche sind in die falsche Richtung und wenn du Sie in die richtige Richtung, würden Sie brauchen, um zu entkommen Sie für JScript:
"c:\\mydocuments\\letters\\*.doc"
- Waaaaaiiiit eine zweite....
/home/user/public_html/
ist das nicht eine typische windows-Pfad... sind Sie zu ändern versuchen, eine Datei auf einem (remote -) linux-server mit dieser (wo die html-Datei wird auch gespeichert)? (Im Gegensatz zu lokalen Datei-Zugriff auf eine windows-Maschine zeigt, dass html im IE) ? Das wäre eine Art ändern, die ganze nehmen uhm.. wie jeder hat percieved diese Frage bis jetzt.. - Es ist nicht windows. Es ist linux .
- lol. gotcha. Das war völlig unklar (insbesondere, da die activeX-Teil). Dann, Nein, Sie kann das nicht so einfach, lemme geben Sie eine Antwort.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Erweist sich in den Kommentaren, dass der Fragesteller das Ziel ist ein:
Dienen einer html-Seite über http(s)
mit javascript, die direkt kopieren/ändern von Dateien auf dem server, diente der html-Seite.
Die Antwort mein Freund, ist, dass so weit ich bin mir bewusst, man kann nicht direkt (über nur client-side javascript vom browser) machen.
Für Vorspeisen, HTTP(S) ist nicht ein Datei-Protokoll wie gesagt.. ftp.
So, schließlich würde Sie müssen entweder einen Weg finden, um die Kommunikation mit einem Netzwerk-Datei-Protokoll (z.B. ftp) mit client-side javascript (ich bin mir nicht bewusst, wie eine Allgemeine lib, obwohl Sie es tun können, in IE, aber Sie brauchen schon einige Entwickler-Lizenz registry-Schlüssel, um Zugriff auf vollständige Netzwerk-Funktionen auf windows, und Sie würden noch brauchen, um Ihre eigene Verpackung-Bibliothek (oder kaufen Sie eine spezielle activeX-plugin, etc), um die Kommunikation, abgesehen von dem rest Ihrer Schnittstelle).
- Und der IE-spezifischen code, den Sie geschrieben, in Ihrer Antwort ist nicht dazu gedacht, dies zu tun (obwohl es könnte Zugriff auf windows-Freigaben, die Sie Zugriff haben).
Also klar, wir können die Art von vergessen, die option.
Also, da Sie sagen, Sie wissen bereits, wie zu tun, diese Dinge in php, der nächste Schritt könnte sein, fügen Sie eine javascript-driven/enhanced (denken tree-view etc) html-gui sendet Befehle (get oder post), um Ihre php-Skript, die tatsächlich kopiert/ändert die Dateien auf Ihrem server. Letztlich sind Sie dann einfach erstellst eine php-Datei-manager (google-Tipp).
Wenn Sie gehen, würden die node.js Weise, als diese Art der nur ersetzt php und der rest der Methode ist immer noch die gleiche: back-end führt Befehle aus und sendet die Ergebnisse/Verzeichnis-Listen etc. HTML-GUI (evtl. per ajax).
Sehen Sie, es gibt viele mehr Spaß Dinge zu entdecken, sind Sie bereits halbe Weise dort.
Hoffe, das hilft.
EDIT:
Man könnte betrügen, hart, könnten Sie zum download einer Datei (und ändern) und speichern Sie es in einen HTML5 - typisiertes array und mit http PUT (unterstützt auch löschen) speichern es auf dem server wieder. Jetzt würden Sie noch brauchen, um mit der Sicherheit/Benutzer-Identifikation... (und es php, json, einige serverseitige handler noch den Kick-in wieder, ich bin derzeit nicht sicher, wie Apachen-put-Modul funktioniert, sobald aktiviert). Mit server side includes, die Sie geändert haben, um anzuzeigen, ein Verzeichnis-listing und einige dieser Art von javascript in der header könnte ein sehr grob Datei-manager.. irgendwie.. Nicht genau kopieren...
Dies ist ein seltsames Beispiel. Zuerst von allen, ist es nicht üblich, dass eine HTML-Seite für die Interaktion mit dem lokalen Dateisystem. Ich würde erwarten, dass jeder moderne browser würden sich beschweren, VIEL über diesen code mit Warnung und Einstellungen Anforderungen. Darüber hinaus ist es mit einem activeX-Steuerelement, die nur auf IE-wenn überhaupt.
Vielleicht dieses Beispiel ist über 15 Jahre alt? Das würde eine Menge erklären.
Ich würde nicht erwarten, dass dies funktioniert out of the box auf jedem system installiert /konfiguriert in den letzten 5 Jahren.
Könnten Sie ändern die Einstellungen auf Ihrem system, damit es funktioniert, aber ich würde nicht empfehlen, dass. Sie würde sein powned /zombied innerhalb von Minuten.
Ich denke, wir müssen zurück zu dem, was Sie versuchen zu tun und warum, ich vermute, dass javascript in HTML ist nicht die Antwort.
Basiert auf den Kommentar mein Vorschlag ist, Sie arbeiten mit node.js. Sie lernen viel, haben Spaß und arbeiten mit einer Technologie, die nicht 15 Jahren veraltet.
Hier gehen, Spaß haben:
http://nodejs.org/
Initial release 1996; 17 years ago
- en.wikipedia.org/wiki/ActiveXbenennen Sie Ihre Datei-Erweiterung .hta, und doppelklicken Sie auf.. voila..
http://en.wikipedia.org/wiki/HTML_Application