2013-03-25 14 views
5

Es gibt bereits eine Verknüpfung auf dem Desktop mit dem gleichen Namen, aber es wurde von einem Setup von Setupfactory installiert (ich möchte es mit Inno ersetzen). Wenn ich jetzt mit einem Setup installiere, das von innosetup erstellt wurde, erstellt es ein neues Symbol, anstatt das aktuelle zu ersetzen. Ich habe den Abschnitt [installDelete] hinzugefügt, funktioniert aber nicht. Ich habe gerade die Shortcut-Eigenschaften überprüft. das Diff, das ich gefunden habe, ist eine Abkürzung, hat Eigentümer als Verwaltergruppe und der andere ist mein Benutzer. aber beide wurden vom selben Benutzer installiert. Wäre das der Grund? Gibt es einen Workaround dafür? oder kann ich prüfen, ob eine Verknüpfung mit demselben Namen existiert? Dankeersetzen Sie die gleiche Verknüpfung von Desktop innosetup

Beide zeigen auf die gleiche exe im selben Pfad. Ich installiere in Windows 7

+1

Mehr als Besitz wird der Weg sein, der sich unterscheidet. Überprüfen Sie die Pfade dieser Verknüpfungen und fügen Sie sie bitte in Ihre Frage ein. – TLama

+0

danke .. Ich bearbeitet die Frage – sjd

+0

Wahrscheinlich haben Sie eine Verknüpfung in 'Users \ IHRE_PROFILE \ Desktop', die wäre' {userdesktop} 'und zweitens in' Users \ Public \ Desktop ', die wäre' {commondesktop} ' – RobeN

Antwort

5

In diesem Fall sollten Sie den Speicherort der beiden Verknüpfungen überprüfen.

Wahrscheinlich einer von ihnen in der Öffentlichkeit Desktop-Ordner (für alle Benutzer) erstellt wird - {commondesktop} und die zweite ist für den aktuellen Benutzer Desktop-Ordner presonalized - {userdesktop}.

A.

[Icons] 
Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; 
WorkingDir: "{app}"; Tasks: desktopicon 

B.

[Icons] 
Name: "{userdesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; 
WorkingDir: "{app}"; Tasks: desktopicon 
+0

ja das war das Problem. jetzt habe ich es geschafft, userdesktop für beide zu verwenden. Danke noch einmal. – sjd

+0

@ user1616785, können Sie auch ["upvote die Antworten"] (http://meta.stackexchange.com/a/173400/179541), genau wie ich schon einige Minuten zuvor auf diesem Beitrag ;-) – TLama

+0

@ user1616785 Beachten Sie, dass Das '{userdesktop}', auf dem Sie installieren, stimmt möglicherweise nicht mit dem Desktop des Benutzers überein, der das Setup ausführt. Wenn es von einem LUA auf "admin" gesetzt werden muss, ist der Benutzer anders. – Deanna

0

Wenn Sie zwischen Installateur wechseln Frameworks ist es im Allgemeinen am besten die alte Version zu deinstallieren (über seine Uninstaller) vor der Installation der neuen. (Sie können dies automatisieren.)

Wenn Sie dies nicht tun, ist es wahrscheinlich, dass der Benutzer mit unordentlichen Uninstaller-Dateien auf dem Laufwerk und mehr als einem Software-Eintrag endet; Beide sind hässlich.

(Dies ist eine einmalige Sache -. Es gibt keine Notwendigkeit, die ältere Version zu deinstallieren, wenn von einer Inno oder App-Version zum anderen zu ändern, nur, wenn sie von Nicht-Inno Inno oder umgekehrt zu ändern)

+0

Ja, normalerweise machen wir das. Aber wir verwenden ein Upgrade-Setup auch dort, wo das Deinstallationsprogramm nicht enthalten ist. Das erste Deinstallationsprogramm funktioniert also gut, da das Upgrade-Setup dieselben Dateien nur mit den neuesten Versionen installiert hat. Danke für den Tipp – sjd

+0

Bis zu einer späteren Version, wo Sie eine zusätzliche Datei hinzugefügt.(In der Regel, wenn Sie mit Inno ein Update installieren, * wollen * Sie, dass es aus diesem Grund Deinstallationseinträge erstellt - Inno ist intelligent genug, um standardmäßig zu einem vorhandenen Deinstallationsprotokoll und Eintrag hinzuzufügen, aber das funktioniert natürlich nur richtig, wenn die ursprüngliche Installation mit Inno durchgeführt wurde.) Ich persönlich empfehle immer noch, diesen Fall zu erkennen und den Benutzer aufzufordern, stattdessen das vollständige Installationsprogramm zu verwenden. Ich bin mir nicht sicher über SetupFactory, aber ich weiß, dass MSI-basierte Installer mürrisch werden, wenn ein anderes Installer ihre Dateien ersetzt. – Miral

Verwandte Themen