2011-01-13 1 views
1

Wir haben zwei verschiedene "Suiten" Software: die Windows-seitige Software und die Firmware. Und leider funktionieren nur bestimmte Versionen der Windows-Software mit bestimmten Versionen der Firmware.Erzwingen, dass zwei Versionen der Software zusammen verwendet werden?

Zum Beispiel, wenn ein Kunde mit Firmware-Version 10 anruft, brauchen wir einen einfachen Weg für alle (Techniker, Entwickler, Sekretäre, usw.) zu wissen, was diese bestimmte Firmware nur mit den Versionen 12, 13, 14 und 15 funktioniert der Windows-Software.

Wir haben eine Wiki-Seite, die nur die Versionen auflistet und es hat gut funktioniert, aber es gibt genug "Schluckauf" von Leuten, die dem Prozess nicht folgen, dass wir etwas eindringlicher brauchen.

Wir haben mercurial als Versionierung System, aber ich kann nicht sehen, wie dies für dieses Problem hilfreich wäre (wir sind in Ordnung mit allen zwingen, hg zu installieren).

Irgendwelche Ideen von Programmen/Setups/irgendetwas, das uns helfen wird, das Problem zu lindern?

EDIT: Bis jetzt ist der größte Teil der Diskussion, was ich mit dem Code von jetzt an tun kann. Ich arbeite daran, das auch zu beheben, aber was können wir mit all den vorherigen Releases tun, wo ich nicht zurückgehen und irgendeinen Code ändern kann? Vielen Dank für Ihre Hilfe! Sehr geschätzt!

+0

Am einfachsten wäre es, die Windows-Anwendung überprüfen zu lassen, ob eine kompatible Firmware-Version läuft? Das oder vielleicht (möglicherweise nicht für die Situation) erzwingen Versionierung mithilfe von Auto-Update. – ChristopheD

+0

Ja, das ist in Ordnung, aber ich kann nicht zurückgehen, eine Änderung zusammenführen und all diese Software erneut veröffentlichen, was (glaube ich) beide dieser Vorschläge dazu zwingt, dies zu tun. – DanTheMan

Antwort

0

Ich hasse es, meine eigene Frage zu beantworten, aber ich wollte etwas als die Antwort markieren (es ruiniert mein perfektes Ergebnis!) :

Alles, was wir getan haben (und es endete größtenteils dieses Problem zu beheben) ist das Wiki neu zu ordnen, so dass, wenn Sie eine Windows-Version wollten, mussten Sie auswählen, welches Unternehmen Ware, die du benutzt hast (und umgekehrt).Ich denke, die Leute ignorieren den Text genug, aber sie zu zwingen, auf etwas zu klicken, war genug, um sie zum Nachdenken zu bringen.

1

-ChristopheD ‚s Kommentar hinzuzufügen wäre eine Möglichkeit, die Software die Kompatibilität zu machen sein:

  • entweder über das Internet (die neueste aktualisierte Liste kompatibler Firmware herunterzuladen und wenn einer dieser Version sehen auf dem lokalen Computer vorhanden ist)
  • oder durch eine einfache Datei lokalen Textes, wenn keine WAN-Verbindung verfügbar ist (die als eine vollständige Anwendung Mitteilung zu kommunizieren und zu aktualisieren einfacher ist)
+0

Ja, langfristig erkenne ich das definitiv. Ich habe gerade dieses Durcheinander geerbt und versuche es aufzuräumen! Ich denke, ich bekomme zuerst den "tief hängenden Fuit". – DanTheMan

1

Sie einen Blick darauf werfen könnte bei ClickOnce-Bereitstellung. Es ermöglicht erweiterte Konfigurationen wie minimale Versionen. Der Bereitstellungsserver befindet sich möglicherweise im Internet oder im Intranet.

Ich denke, dass Sie die Implementierung ändern müssen, um dieses Problem sowieso zu lösen. Sie können ein Update nicht erzwingen (wenn Sie könnten das wäre sehr virenartig)

1

Ich dachte plötzlich darüber nach.

Denken Sie bei Ihrer Software, die in .NET entwickelt wurde, und auch beim .NET Framework (verschiedene Versionen). Vielleicht willst du dem folgen.

Der Host des Clients kann mit Firmware-Version 10 und 11 installiert werden; aber Ihre Anwendung erfordert Firmware-Version 12. Ihr Installer wird Version 12 herunterladen und installieren.

Wenn Ihre Anwendung jedoch Firmware-Version 10 erfordert und die installierte Version 12 ist, enthält Version 12 möglicherweise auch Dateien aus früheren Versionen (nicht widersprüchlich) und damit die Anwendung (die Version 10 erfordert) von Version 12 zu laufen.