Frage

Ich habe mit einer architektonischen Herausforderung vorgestellt und bin auf der Suche nach Ideen.

Der Kunde hat eine bestehende win32 native Anwendung, die sie ziemlich resistent sind in irgendwelchen, aber trivial Wege zu ändern. Es ist in nicht verwalteten c ++ geschrieben und verwendet mindestens einen 3rd-Party-DLL, damit es nicht eine Stand-alone-exe ist. Was es ist nicht so wichtig, denken Sie an mich als Kunden-Support-Kommunikations-Tool. Im Idealfall möchte der Kunde diese von einer Website zu starten, anstatt es als installierbares Programm zu veröffentlichen. Zusätzlich muss der Kunde einen Token an die ausführbare Datei zu übergeben, wenn er ausgeführt wird, so kann es zu Hause anrufen und um weitere Anweisungen fragen.

werde ich voran gehen und zugeben, daß, wie die Anwendung sollte unter den ersten Design-Überlegungen gewesen gestartet werden würde, nicht die letzt - aber es ist, was es ist.

Sicherheitsbedenken über Malware, Spyware, Trojaner und dergleichen macht dies zu einem sehr unwahrscheinlich Verteilungsmodell. Ich mehr Erfahrung in nicht tut dies als eine legitime Art und Weise zu finden, um es zu erreichen.

Alle Ideen (positiv oder negativ) sind willkommen.

War es hilfreich?

Lösung

überzeugen die Kunden lassen Sie Ihr Unternehmen der ursprünglichen Design-Fehler beheben, höchstwahrscheinlich auf eigen Kosten. Entschuldigen. A LOT .

Andere Tipps

Ich kann keine Beratung bieten auf Starten einer Anwendung, die auf den Benutzer-PC installiert ist. Vielleicht wird jemand Rat geben, dass auf.

Allerdings gibt es die alternative Lösung, um die Anwendung auf dem Server zu installieren. Sie können dann einige Code schreiben, der die Daten und Anzeige über HTML zugreifen können. Dies würde im Idealfall mit der favorisierten API, Web Service und anderen dohickeys leicht achieveable sein. Aber ich denke, dass nicht eine mögliche Lösung?

Die andere Option ist ein Produkt ähnlich wie einige der Integrationsprodukte von NDL MetaScype .

Ihr Produkt ist effektiv eine Screen-Scraping-Software, die im Grunde die App öffnet und läuft, was für-alle-Absichten-and-Zwecke, ein Makro. Der Vorteil davon ist, dass alle Geschäftslogik beibehalten wird (das heißt Sie effektiv in ein Feld eingeben und wenn das Feld mit einem Fehler auf dem System kommt zurück -. Ihr Web-App sollte auch herausfinden,

Viel Glück - ich denke, dass Sie es, ohne sich Benutzer bemerkenswert heikel finden ihre Sicherheitseinstellungen für Ihre speziellen Website ändern

.

Sie können versuchen, ein ActiveX-Steuerelement erstellen, die ausführbare Datei herunterladen und ausführen, aber dies leider begrenzt Sie IE. Es schafft auch einen zusätzlichen Installation / lief Schritt für die Steuerung auf der Webseite. Dies könnte nicht auf einige Ihrer Kunden akzeptabel sein, wenn sie Richtlinien um Benutzern das Herunterladen und ActiveX-Steuerelemente ausgeführt wird.

Sie können auch versuchen, die exe-Verpackung und es ist Abhängigkeiten als Ressource in einem anderen exe. Der Benutzer kann diese von der Webseite herunterladen und ausführen, die die ausführbare Datei extrahiert und Abhängigkeiten und führt sie. Dies könnte etwas direkter als die ActiveX-Route sein, kann aber immer noch einige der gleichen Einschränkungen um Sicherheitsrichtlinien hat.

Du wirst nicht eine einfache Lösung für diesen leider finden -. Lief beliebigen nativen Code von einer Website ist schwer Design

Ich bin nicht ganz sicher, ob ich die Situation zu verstehen, aber es klingt wie eine Option, um die Anwendung auf einem Server ausgeführt werden kann und dann Citrix verwendet die Client-PC zu ermöglichen, die Anwendung wie Thin Clients zuzugreifen. Meine Universität tut dies mit einer Reihe von Programmen (wie Photoshop, zum Beispiel). Ich bin nicht in der Lage auf die Anwendung zugreifen, es zu installieren, aber ich kann eine kleine Datei herunterladen, die Citrix startet und läuft die Anwendung. Die Anwendung hat immer Fenster artige Kontrollen, auch wenn ich einen Mac renne. Natürlich musste ich noch Citrix installieren, vielleicht gibt es nicht viel Nutzen dieser Route gehen, aber es könnte ein einfacher Kompromiss als einige Ihrer anderen Optionen sein.

Eine zweite, verrückte Idee wäre, das Installationsprogramm in die App zu integrieren, so dass, wenn es zum ersten Mal gestartet wird, es mich selbst installiert, dann selbst beginnt. Dann sagen Sie dem Kunden dauert es eine lange Zeit zum ersten Mal zu starten.

Bitte klären, ob meine Antworten vorschlagen, verstehe ich das Problem nicht. Ich bin ganz gespannt, mehr über die Situation zu informieren.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top