Kann eine .NET-Anwendung eine Ablaufverfolgung hinterlassen, damit sie gefunden wird, wenn die Anwendung erneut installiert wird? Natürlich ist eine Spur, die schwer zu entfernen ist.Wie finde ich heraus, ob die App schon einmal installiert wurde?
Antwort
- Erstellen Sie eine Datei
- Erstellen Sie einen Registrierungsschlüssel
- Erstellen Sie eine globale Variable
- Eine Kombination aus allen oben
... und dann auf die Existenz überprüfen das nächste Mal installieren versucht.
Während es besser ist, Anwendungen in ihrer Gesamtheit zu entfernen, nehme ich an, dass dies für 'Test' Software (einmalige Installation) Zwecke oder einen ähnlichen Grund ist.
Nun, im Allgemeinen, wenn Sie etwas entfernen, würden Sie hoffen, dass es sich vollständig entfernt, und hinterlässt keine Spur von der Tatsache, dass es da war. Andernfalls, wenn nicht, wurde es nicht wirklich deinstalliert.
Dies ist sowieso sprachunabhängig.
Also die Antwort ist: Ja, aber tu das nicht.
Welches Problem versuchen Sie wirklich zu lösen?
Zu viel zweites Raten;) – Alex
Ich versuche zu verhindern, dass die Anwendung neu installiert wird, was die Testphase verlängern würde. – Amr
Sie können dafür eine Testlizenz verwenden und sie über das Internet aktivieren, dann überprüfen, wenn sie online sind, und sie einfach entsprechend ablaufen lassen. –
Viele Anwendungen hinterlassen Spuren (z. B. in der Registrierung), um vorherige Installation zu erkennen. Tools wie RevoUninstaller können jedoch verwendet werden, um diese Spuren vollständig zu entfernen. Eine einfache Möglichkeit besteht darin, die Geräte-ID an Ihren Server zu senden.
Ich habe etwas Googeln gemacht, um bessere Informationen zu finden (ohne Erfolg), aber ich erinnere mich an Erwähnung von etwas, das als "Manufacturers Section" einer Festplatte bezeichnet wird, ein Bereich, der außerhalb des normalen Speichers liegt Es ist möglich, Informationen zu schreiben, die nicht verloren gehen, wenn das Laufwerk neu formatiert wird. Das spezifische Produkt, an das ich mich erinnere, war AutoCAD.
Die Tatsache, dass Sie nach etwas fragen, das "schwierig zu entfernen" ist, führt mich zu der Annahme, dass Sie auf der Suche nach so etwas sind?
Es ist unwahrscheinlich, dass der Einsatz dieser Art von Technologie Sie bei Ihren Kunden sehr beliebt machen würde, insbesondere mit dem schlechten Gefühl, das auf DRM, Rootkits und dergleichen gerichtet ist.
- 1. Wie finde ich heraus, ob eine Klasse instanziiert wurde?
- 2. Wie finde ich heraus, ob 'svn up' erfolgreich beendet wurde?
- 3. Wie finde ich heraus, ob Cookie in Flask App
- 4. Wie finde ich heraus, ob die Zeit vergangen ist? Swift
- 5. Wie finde ich heraus, ob App im Hintergrund läuft oder Android getötet wurde?
- 6. Wie finde ich heraus, ob ich gd library oder imagemagick installiert habe?
- 7. Wie finde ich heraus, ob die Kamera verwendet wird?
- 8. Wie finde ich heraus, wann Apache zuletzt neu gestartet wurde?
- 9. Wie finde ich heraus, welche Version von mod_perl installiert ist?
- 10. Wie finde ich heraus, ob ein Timer läuft?
- 11. Finde heraus, ob eine Funktion hat
- 12. ActiveDirectory: Wie finde ich heraus, ob eine Domain verfügbar ist?
- 13. Wie finde ich das nächste Datum heraus, wenn ich den Tag dieses Datums schon weiß?
- 14. Wie finde ich heraus, wann eine Webseite zuletzt geändert wurde?
- 15. PHP - Wie finde ich heraus, ob X-Sendfile verfügbar und installiert ist?
- 16. Wie finde ich heraus, welche Zeichentaste gedrückt wurde?
- 17. Wie finde ich heraus, dass meine Abhängigkeitseigenschaft geändert wurde?
- 18. Wie finde ich heraus, ob eine bestimmte Taste wie Boxen in Schach geklickt wurde
- 19. Wie finde ich heraus, ob ein Steuerelement gerade ungültig ist?
- 20. Wie finde ich heraus, ob das Blatt leer ist?
- 21. Wie finde ich heraus, ob ein Prozess in C läuft?
- 22. Wie finde ich heraus, ob DStream leer ist?
- 23. Wie finde ich heraus, ob ein Objekt gesperrt ist? C#
- 24. Wie finde ich heraus, ob ein Element in jquery existiert?
- 25. Wie finde ich heraus, ob Element von jQuery umschlossen ist?
- 26. Wie finde ich heraus, ob ein Termin privat ist
- 27. Wurde window.onload schon ausgelöst?
- 28. Wie finde ich heraus, ob eine Goroutine durchgeführt wurde, ohne zu blockieren?
- 29. Linux: Wie finde ich heraus, ob eine Datei von einem anderen Prozess aktualisiert wurde?
- 30. Wie finde ich heraus, ob Argparse-Argument tatsächlich in der Befehlszeile angegeben wurde?
Dies ist normalerweise die Art und Weise, wie es getan wird Windows ... –
Ja, das ist für Testzwecke, weshalb ich möchte, dass es etwas ist, das schwerer zu entfernen ist. – Amr