Verknüpfungen mit Set Product oder Shell Product

Antworten
Pharma
Beiträge: 17
Registriert: 04. Sep 2018, 11:08
Kontaktdaten:

Verknüpfungen mit Set Product oder Shell Product

Beitrag von Pharma » 18. Okt 2018, 09:13

Hallo,

ich habe ein Programm was in der Verknüpfung Parameter übergeben bekommen muss.
Ich habe bisschen recherchiert und es wird öfters von einem Kopievorgang aus dem Root-Verzechnis unter Packages gesprochen (SET:Product) oder aber eine Desktop-Verknüpfung aus der Installation anlegen (Shell:Product)

Was habe ich aktuell gemacht bzw. versucht?

Ich habe unter Set:Product

folgende Syntax eingetragen.
[Set:Product]
1:"%SRC%\easytec.lnk",%CommonDesktop%,ALWAYS,"0" (auch Probiert mit easytec.exe)

Wird die Installation aber aufgrund eines Fehlers abgebrochen. Ich möchte den Kopie Vorgang nutzen, weil ich in den Eigenschaften der Verknüpfung die Parameter übergebe. Würde es auch mit dem Shell:Product machen, wenn es generell einfacher ist, weiß aber nicht die Syntax die ich nutzen muss. Im Anhang befindet sich ein Bild der Eigenschaften der Verknüpfung die auf den Desktop für JEDEN gelegt werden soll.

Des weiteren läuft die Installation Silent bis zur BDE Meldung (Siehe Anhang).
Ab diesem Zeitpunkt muss ich manuell weiter klicken. Kann mir jemand sagen, was ich in mein Skript einbauen muss, damit die BDE Installation gecancelt wird, bzw. dieser Abschnitt übergangen werden kann? Brauche für die Software nicht mehr diese Komponente.

Ist wahrscheinlich für einen Fachmann einfach, für mich eine Herausforderung, weil ich in dem Thema noch nicht
solange und tief drin bin. :lol: . Ich hoffe ich konnte mit Bildern und Beschreibung genug Input liefern.

Code: Alles auswählen

[Set:Installation]
AddMeter -1
Call "%Src%\Setup.exe" /Silent
If "%ErrorLevel%" <> "0" Then "SET:InstallationError" EndIf
Dateianhänge
BDE_Silent_Install.png
(7.36 KiB) 65-mal heruntergeladen
Eigenschaften von easytec.exe.png
(19.58 KiB) 63-mal heruntergeladen
Zuletzt geändert von Pharma am 18. Okt 2018, 11:11, insgesamt 1-mal geändert.

Pharma
Beiträge: 17
Registriert: 04. Sep 2018, 11:08
Kontaktdaten:

Re: Verknüpfungen mit Set Product oder Shell Product

Beitrag von Pharma » 18. Okt 2018, 09:42

Code: Alles auswählen

%CommonDesktop%\EASYTEC, "\\mrps40300\c$\Program Files (x86)\EDS KOBLENZ\EasyTec NT\Bin\prjTecNT.exe",-a tecnt_prd -u %Username%,,,
So habe es hinbekommen, dass die Verknüpfung angelegt wird. Nur eines passiert nicht, der Username wird nicht mitgegeben, Wenn ich mich Software startet steht SYSTEM nun in den Parametern, obwohl ich mit einem Username angemeldet bin? Verstehe ich nicht.

Pharma
Beiträge: 17
Registriert: 04. Sep 2018, 11:08
Kontaktdaten:

Re: Verknüpfungen mit Set Product oder Shell Product

Beitrag von Pharma » 18. Okt 2018, 09:45

Anbei nochmal der auf dem Desktop hinterlegte Parameter?, dort sollte eigentlich der Username stehen und nicht SYSTEM
Dateianhänge
Parameter.png
(14.29 KiB) 79-mal heruntergeladen

MaMa82
Beiträge: 344
Registriert: 10. Jun 2011, 13:56
Kontaktdaten:

Re: Verknüpfungen mit Set Product oder Shell Product

Beitrag von MaMa82 » 18. Okt 2018, 11:14

Hallo!

Ein ganz natürliches Henne-Ei-Problem!
Wird eine Verknüpfung auf dem CommonDesktop (Public Desktop) erzeugt, wird diese im SYSTEM-Kontext angelegt. Der normale End-User hat normaler keine Schreibrechte auf dem PublicDesktop.
Merke: alles was in Common-Verzeichnissen erzeugt wird, wird Empirum-seitig im SYSTEM-Kontext erzeugt. :idea:
Grüße MaMa82


PS: EDV steht nicht für "Elektronische Datenverarbeitung", sondern vielmehr für "ENDE DER VERNUNFT"! :roll:

Pharma
Beiträge: 17
Registriert: 04. Sep 2018, 11:08
Kontaktdaten:

Re: Verknüpfungen mit Set Product oder Shell Product

Beitrag von Pharma » 18. Okt 2018, 11:58

MaMa82 hat geschrieben:Hallo!

Ein ganz natürliches Henne-Ei-Problem!
Wird eine Verknüpfung auf dem CommonDesktop (Public Desktop) erzeugt, wird diese im SYSTEM-Kontext angelegt. Der normale End-User hat normaler keine Schreibrechte auf dem PublicDesktop.
Merke: alles was in Common-Verzeichnissen erzeugt wird, wird Empirum-seitig im SYSTEM-Kontext erzeugt. :idea:
Hallo, das habe ich mir gedacht.... :roll:
gibt es eine Möglichkeit, das ich die Parameter als Text weitergeben, so dass in der Verknüpfung eben steht (-a tecnt_prd -u %Username%)

Da das Programm nur einmal mit dem OS Image installiert wird, muss jeder der es startet dann die Variable %username% in der Verknüpfung stehen haben. Wenn dann das Programm serverseitig gestartet wird automatisch der angemeldete Benutzernamen eingetragen.

Alternativ könnte ich die Verknüpfung natürlich nach der Installation manuell editieren und den Eintrag so einfügen wie ich ihn brauche :oops: .....

Kann mir jemand mitteilen, wie ich die BDE Installation Silent abbreche? Gibt ja den Killprocess, aber damit beende ich ja die komplette Installation von meinem Hauptprogramm, was ich ja nicht will.

MaMa82
Beiträge: 344
Registriert: 10. Jun 2011, 13:56
Kontaktdaten:

Re: Verknüpfungen mit Set Product oder Shell Product

Beitrag von MaMa82 » 18. Okt 2018, 12:13

Was spricht denn dagegen das Erstellen der Verknüpfung in den Benutzerbereich zu legen? (/AW)
Alles andere wird eine Flickschusterei und ist nicht oder nur schwierig nachvollziehbar.

Aber vielleicht hat jemand noch eine clevere Idee.
Grüße MaMa82


PS: EDV steht nicht für "Elektronische Datenverarbeitung", sondern vielmehr für "ENDE DER VERNUNFT"! :roll:

Pharma
Beiträge: 17
Registriert: 04. Sep 2018, 11:08
Kontaktdaten:

Re: Verknüpfungen mit Set Product oder Shell Product

Beitrag von Pharma » 18. Okt 2018, 12:58

MaMa82 hat geschrieben:Was spricht denn dagegen das Erstellen der Verknüpfung in den Benutzerbereich zu legen? (/AW)
Alles andere wird eine Flickschusterei und ist nicht oder nur schwierig nachvollziehbar.

Aber vielleicht hat jemand noch eine clevere Idee.
Dann bekommt die Verknüpfung ja nur einer angelegt, nämlich der User der über das SW Depot die Software installiert.
Das wäre nicht so vorteilhaft.

Was wenn ich die Verknüpfung kopiere über [Set:Product]? Dann müsste er ja die gesetzte Variable auch mit übernehmen?
Nur wie muss die Syntax aussehen, wenn im %SRC% Verzeichnis die Verknüpfung liegt?

MaMa82
Beiträge: 344
Registriert: 10. Jun 2011, 13:56
Kontaktdaten:

Re: Verknüpfungen mit Set Product oder Shell Product

Beitrag von MaMa82 » 18. Okt 2018, 14:06

Jetzt bin ich etwas verwirrt.
Die Software wird aus dem Kiosk heraus und nicht über eine Verteilung aus der EMC heraus installiert?
Grüße MaMa82


PS: EDV steht nicht für "Elektronische Datenverarbeitung", sondern vielmehr für "ENDE DER VERNUNFT"! :roll:

Pharma
Beiträge: 17
Registriert: 04. Sep 2018, 11:08
Kontaktdaten:

Re: Verknüpfungen mit Set Product oder Shell Product

Beitrag von Pharma » 19. Okt 2018, 08:44

MaMa82 hat geschrieben:Jetzt bin ich etwas verwirrt.
Die Software wird aus dem Kiosk heraus und nicht über eine Verteilung aus der EMC heraus installiert?
Sry fürs verwirren. Nein die Software wird bei der Grundinstallation des Images mitverteilt.
Aber die Grundinstallation läuft mit einem lokal Admin. Dann würde die Verknüpfung ja nur für diesen Account angelegt, nicht aber für "alle User" die sich anmelden?

Am einfachsten wäre es natürlich, wenn über SET:Product die Kopiefunktion ginge und er eine Verknüpfung (easytec.exe mit allen Parametern) einfach auf den Desktop kopiert.
Aber die Installation wird aufgrund eines Fehlers nicht durchgeführt.

Code: Alles auswählen

[Set:Product]
1:"%SRC%\easytec.exe",%CommonDesktop%,ALWAYS,0
P.S. gibt es eine Möglichkeit die Boland Database Engine Installation "Silent" abzubrechen? Denn an dieser Stelle, muss ich manuell noch 3 Klicks durchführen. Das nervt.
Gibt es eine allgemeine "Syntax" wie ich solche Zusatztools blockiere bzw. übergehe?

MaMa82
Beiträge: 344
Registriert: 10. Jun 2011, 13:56
Kontaktdaten:

Re: Verknüpfungen mit Set Product oder Shell Product

Beitrag von MaMa82 » 19. Okt 2018, 10:21

Guten Morgen!

Aaalso, holen wir mal gaaanz weit aus - Paketierungsgrundlagen.

Alle Pakete, die nur mit einem Kommandozeilen-Parameter /Sx (/S0 oder /S1 oder /S2) erstellt werden, werden durch den EmpirumAgent bei normaler Verteilung im SYSTEM-Kontext installiert, da der zuständige ERIS-Dienst am Client im genannten Kontext läuft.
Wird hier zusätzlich der Schalter /AW hinterlegt, werden automatisch Nutzeranteile ausgerollt. Das beudet - alles was irgendwo im Speicherbereich des Benutzer(profils) liegt (Filesystem und Reg) werden für jeden Benutzer, der sich anmeldet nachträglich separat ausgerollt. (User 1 meldet sich an -> Verknüpfung wird auf dem Desktop des Users 1 erzeugt; User 2 meldet sich an -> Verknüpfung auf Desktop von User 2) Hierzu muss man dann allerdings die spezifischen Variablen (also NICHT %CommonDesktop%) verwenden. Auch der Benutzername kann dann im Benutzeranteil des Pakets sauber ausgewertet werden.

Ich hoffe das war verständlich?!? :wink:

PS: Wenn es sich bei der Borland Installation um einen InstallShield Installer handelt, könnte man einmal versuchen die Installation mittels /r aufzuzeichnen. Hierbei wird eine Antwortdatei erzeugt. Andernfalls könnte man einmal schauen, ob sich der Installer in ein temporäres Verzeichnis entpackt und z.B. eine darin befindliche MSI verwenden.
Grüße MaMa82


PS: EDV steht nicht für "Elektronische Datenverarbeitung", sondern vielmehr für "ENDE DER VERNUNFT"! :roll:

Pharma
Beiträge: 17
Registriert: 04. Sep 2018, 11:08
Kontaktdaten:

Re: Verknüpfungen mit Set Product oder Shell Product

Beitrag von Pharma » 19. Okt 2018, 13:05

MaMa82 hat geschrieben:Guten Morgen!

Aaalso, holen wir mal gaaanz weit aus - Paketierungsgrundlagen.

Alle Pakete, die nur mit einem Kommandozeilen-Parameter /Sx (/S0 oder /S1 oder /S2) erstellt werden, werden durch den EmpirumAgent bei normaler Verteilung im SYSTEM-Kontext installiert, da der zuständige ERIS-Dienst am Client im genannten Kontext läuft.
Wird hier zusätzlich der Schalter /AW hinterlegt, werden automatisch Nutzeranteile ausgerollt. Das beudet - alles was irgendwo im Speicherbereich des Benutzer(profils) liegt (Filesystem und Reg) werden für jeden Benutzer, der sich anmeldet nachträglich separat ausgerollt. (User 1 meldet sich an -> Verknüpfung wird auf dem Desktop des Users 1 erzeugt; User 2 meldet sich an -> Verknüpfung auf Desktop von User 2) Hierzu muss man dann allerdings die spezifischen Variablen (also NICHT %CommonDesktop%) verwenden. Auch der Benutzername kann dann im Benutzeranteil des Pakets sauber ausgewertet werden.

Ich hoffe das war verständlich?!?

PS: Wenn es sich bei der Borland Installation um einen InstallShield Installer handelt, könnte man einmal versuchen die Installation mittels /r aufzuzeichnen. Hierbei wird eine Antwortdatei erzeugt. Andernfalls könnte man einmal schauen, ob sich der Installer in ein temporäres Verzeichnis entpackt und z.B. eine darin befindliche MSI verwenden.
Guten Morgen, das ist was ich suche.
Nur bin ich mir nicht sicher was spezifische Variablen jetzt gemeint ist?
Und wo muss ich denn dann den Part mit der Verknüpfung angeben?

Das mit dem BDE werde ich nochmals überprüfen.

Danke schonmal für die ganze Hilfe.

MaMa82
Beiträge: 344
Registriert: 10. Jun 2011, 13:56
Kontaktdaten:

Re: Verknüpfungen mit Set Product oder Shell Product

Beitrag von MaMa82 » 19. Okt 2018, 13:14

In der Setup.inf im Aschnitt [SetupInfo] folgenden Wert anpassen:
Command line options =/S2 /AW

Beim Einfügen des Pakets ins Depot werden diese Werte automatisch in den Paketeigenschaften eingetragen. (Sofern bereits eingefügt, entweder händisch anpassen, Versionsabgleich durchführen oder Paket löschen und erneut einfügen.)

Beispiel für die Verknüpfung:

Code: Alles auswählen

[Shell:Product]
%UserDesktop%\EASYTEC, "\\mrps40300\c$\Program Files (x86)\EDS KOBLENZ\EasyTec NT\Bin\prjTecNT.exe",-a tecnt_prd -u %Username%,,,
Grüße MaMa82


PS: EDV steht nicht für "Elektronische Datenverarbeitung", sondern vielmehr für "ENDE DER VERNUNFT"! :roll:

Pharma
Beiträge: 17
Registriert: 04. Sep 2018, 11:08
Kontaktdaten:

Re: Verknüpfungen mit Set Product oder Shell Product

Beitrag von Pharma » 19. Okt 2018, 16:19

MaMa82 hat geschrieben:In der Setup.inf im Aschnitt [SetupInfo] folgenden Wert anpassen:
Command line options =/S2 /AW

Beim Einfügen des Pakets ins Depot werden diese Werte automatisch in den Paketeigenschaften eingetragen. (Sofern bereits eingefügt, entweder händisch anpassen, Versionsabgleich durchführen oder Paket löschen und erneut einfügen.)

Beispiel für die Verknüpfung:

Code: Alles auswählen

[Shell:Product]
%UserDesktop%\EASYTEC, "\\mrps40300\c$\Program Files (x86)\EDS KOBLENZ\EasyTec NT\Bin\prjTecNT.exe",-a tecnt_prd -u %Username%,,,
Habe ich gemacht, jetzt kommt die Meldung, dass Verzeichnis nicht angelegt werden kann.

Schreib ich untern %CommonDesktop% in Verbindung mit dem /AW Flag funktioniert das anlegen der Verknüpfung. Dann aber wieder mit dem Kontext = SYSTEM :(
Trage ich es so ein wie oben beschrieben kann das Verzeichnis nicht angelegt werden? Oh man wie kompliziert.

MaMa82
Beiträge: 344
Registriert: 10. Jun 2011, 13:56
Kontaktdaten:

Re: Verknüpfungen mit Set Product oder Shell Product

Beitrag von MaMa82 » 22. Okt 2018, 07:12

Guten Morgen!

Alternativ könnte man das Anlegen auch mit der Variable %Desktop% versuchen.
Bin mir hier nicht mehr ganz so sicher - nutze ich zu selten.

Sollten alle Stricke reißen - bitte Starte das DIFF Verfahren, erzeuge die Verknüpfung korrekt auf dem Dekstop und schließe das DIFF ab. Hernach kannst Du im Shell:Product Abschnitt den korrekten Syntax übertragen.

2 Dinge wären noch zu prüfen:
1.) Wurde die CommandLineOption auch in den Paketeigenschaften oder nur in der Setup.inf Datei geändert?
2.) Im Application Abschnitt kann auch mit der Steuerung CommonShellLinks experimentiert werden. -> Das wäre aber in der Hilfe des Package Editors einmal nachzulesen!
Grüße MaMa82


PS: EDV steht nicht für "Elektronische Datenverarbeitung", sondern vielmehr für "ENDE DER VERNUNFT"! :roll:

Antworten

Zurück zu „Paketierung“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 11 Gäste