Ich bin mit dem neuen Konzept von "Out-of-Browser" -Webanwendungen vertraut geworden, die in den letzten Versionen von Silverlight, JavaFX, Adobe AIR usw. unterstützt werden.
Hören Sie sich kürzlich einen Podcast zum Thema von Scott Hanselman , mir ist bewusst geworden, dass eines der Ziele dieser neuen Architekturen darin besteht," Desktop-Application-feel "zu ermöglichen. Ich verstehe auch, dass einige (oder alle) davon einen Offline-Zugriff auf eine Sandbox von Ressourcen ermöglichen. Das klingt wirklich so, als ob diese Frameworks eine Alternative zu "echten" Desktop-Anwendungen darstellen könnten, solange die Anwendung nicht mit dem Computer des Benutzers zu tun hat (d. H. Zugriff auf Peripheriegeräte, bestimmte Datei-IOs usw.).
Ich habe eine sehr spezifische Frage. Meine Anwendung muss beim Start ausgeführt werden. Ist es möglich, ein solches Framework zu verwenden, ohne dass der Benutzer eine bestimmte ausführbare Datei herunterladen und ausführen muss?
Zum Beispiel könnte ich den Benutzer immer anweisen, eine kleine EXE herunterzuladen, die eine .lnk-Datei in das Startverzeichnis legt, aber ich möchte einen solchen Patch vermeiden.
Zusammenfassend: Ist es möglich, dass eine Webanwendung außerhalb des Browsers selbst beim Start ausgeführt wird, ohne dass ein Dateidownload erforderlich ist?
Um es noch deutlicher zu machen, diese Frage kommt nicht von einem "bösen" Ort, sondern von dem Versuch, zu entscheiden, ob "Out-of-Browser" -Frameworks tatsächlich eine geeignete Alternative zu einer Desktop-Anwendung für meine spezifischen Anforderungen sind / p>
Das BkMark-Beispiel hier zeigt, wie Sie eine Anwendung beim Start mit Adobe Air starten. Also, ja, es ist möglich.
Also, hier ist der Deal: Web-Apps im Allgemeinen haben einen Sicherheitskontext um sie herum und haben standardmäßig keinen Zugriff auf das Dateisystem (außerhalb von temporären Dateien), Zugriff auf die Registrierung, usw.
Eine Möglichkeit ist, wie Sie gesagt haben, dass der Benutzer etwas ausführt oder es so konfiguriert, dass das lnk beim Start ausgeführt wird.
Ein weiterer Weg, und ich denke, mehr in Übereinstimmung mit dem, was Sie wollen, ist, dass der Benutzer das Programm selbst ausführen kann, klicken Sie auf eine Schaltfläche in der Anwendung, und es ist konfiguriert.
Ich weiß mit Java, dass Sie dies tun können, aber der Benutzer muss vollen Zugriff auf sein System gewähren, da Ihre App die Systemkonfiguration ändern müsste. Dann könnten Sie es einfach konfigurieren (indem Sie ein INK in Ihren WebStart JNLP im Autostart-Ordner schreiben)
Für Internet Exploder haben Javascript-Apps tun Schreibzugriff auf die Festplatte . Für andere (besser gesicherte) Browser benötigen Sie entweder einen Download oder Adobe AIR.
Angenommen, Sie erstellen für Windows, kann das Starten einer ausführbaren Datei beim Start auf verschiedene Arten erfolgen.
Beim Start der Benutzersitzung können Sie dies erreichen, indem Sie entweder eine INK-Datei in den entsprechenden Ordner oder einen Registrierungseintrag einfügen. Zum Starten des Betriebssystems können Sie dies mit einem Registrierungseintrag erreichen. Es gibt mehrere Permutationen:
Da eine Out-of-Browser-Anwendung UI hat, gehe ich davon aus, dass Sie eine Anwendung in jeder Benutzersitzung ausführen und in diesem Fall können Sie auch eine LNK-Datei in den Startordner des Benutzers legen.
Ich habe gerade eine Verknüpfung für eine SL4 OOB-Anwendung erstellt, und dies war das Ziel der Verknüpfung:
%Vor%Eine Suche auf meiner Festplatte ergab, dass der Speicherort 2635882436.localhost ein Ordner ist.
%Vor%Ich bezweifle, dass eine OOB-App irgendeines Typs eine Verknüpfung in den Autostart-Ordner stellen kann, wenn Sie nicht die volle Vertrauenswürdigkeit erhalten haben.
Tags und Links silverlight web-applications