Page 1 of 2

Batchdatei aus Netzwerkshare aufrufen

Posted: 23. May 2012, 18:39
by llaprosper
Hallo Zusammen,

ich weiß nicht wie ich dieses Problem lösen kann.

Ich muss für eine Softwareinstallation unter anderem eine Batchdatei von einem Netzwerkshare mit Adminrechten ausführen.
Wenn ich im Paket aber den UNC Pfad zu dieser Datei angebe und so versuche die Datei auszuführen, schlägt es fehl.

So wie ich das sehe, wird die Datei ja als Local System des Clients ausgeführt und der darf ja nicht auf einem Netzwerkshare die Datei ausführen.
Wie schaffe ich es nun diese Batchdatei mit Adminrechten direkt auf dem Share aufzurufen, OHNE das ich ein Netzlaufwerk verbinde (ist leider Vorraussetzung) und der User nicht irgend wie aus dem Paket einen Admin samt Passwort auslesen kann?

Gruß
Andreas

Re: Batchdatei aus Netzwerkshare aufrufen

Posted: 23. May 2012, 19:56
by Frank Dethlefsen
Hallo Andreas!

Ich würde das so lösen. Ist nicht 100% sicher, aber man schon eine Hürde nehmen, um das Passwort zu bekommen.

...
[Encryption]
; cmd.exe > "Empirum\AddOns\Encrypter\EmpCrypt.exe" /Setup
enpass=*Yp~mnkth}
...

[Set:Product]
...
Set Servershare=\\<Server>\<share>
Set netuseapara=net.exe use %Servershare% /User:<Domain>\<Admin> %enpass% /Y
Callhidden %netuseapara%
If DoesPathExist ("%Servershare%") == "0" Then "Set:NoShare" EndIf
...

[Set:NoShare]
ErrorLogMsg No access "%Servershare%". Abort!
Abort

Re: Batchdatei aus Netzwerkshare aufrufen

Posted: 23. May 2012, 20:43
by llaprosper
Hallo Frank,

mit diesem Weg probiere ich es gerade auch. Im Moment findet er -warum auch immer- den Netzwerkpfad noch nicht, obwohl mein User die Rechte hat. (Der Netzwerkpfad wurde nicht gefunden)
Das Passwort habe ich mit Empirum im Softwaremanagement verschlüsselt.
Sicher Passwörter wandelt Empirum aber leider nicht um. Was das soll??

Du würdest doch nicht wirklich die Installation bzw den Aufruf "call" in der Sektion "Product" aufrufen, oder?
Doch eher bei "Installation"!?

Ich werde das morgen mal testen. Ich mache jetzt erst mal Feierabend!

Sch.... VPN ;-)

Re: Batchdatei aus Netzwerkshare aufrufen

Posted: 23. May 2012, 22:52
by Hendrik_Ambrosius
Man kann auch mal den neuen CALLRUNAS Befehl versuchen.

Re: Batchdatei aus Netzwerkshare aufrufen

Posted: 24. May 2012, 07:26
by llaprosper
Wir setzen leider noch die Version 14.1 ein!

Hmmm, stehe auf dem Schlauch. Jetzt habe ich zwar mit den richtigen Rechten ein Laufwerk verbunden, aber wenn ich die Datei ausführe hat sich doch nichts geändert, oder? Dann wird es doch wieder im Systemuser Kontext ausgeführt!?

Gruß
Andreas

Re: Batchdatei aus Netzwerkshare aufrufen

Posted: 24. May 2012, 13:47
by Hendrik_Ambrosius
Genau. Daher wäre CALLRUNAS gut. Sie können vorab die setup.exe von 14.2 dafür verwenden. z.B. als setup2.exe nach configurator$\user kopieren und den Aufruf bei den Paketeigenschaften entsprechend anpassen.

Re: Batchdatei aus Netzwerkshare aufrufen

Posted: 25. May 2012, 07:33
by llaprosper
Dann mus ich aber den Agent auf den Rechnern neu verteilen, oder? Weil das Paket doch nich tdie setup.exe vom Server nimmt, sondern vom Client, oder?

Re: Batchdatei aus Netzwerkshare aufrufen

Posted: 25. May 2012, 07:44
by Phadda
Nein, das "configurator$\user" wird immer vom depot synchronisert, da auch die swdepot.dds unter anderem drinne ist ;-)

Re: Batchdatei aus Netzwerkshare aufrufen

Posted: 30. May 2012, 14:11
by llaprosper
OK laut SetupDEU wird das bei uns mit CALLRUNAS wohl nicht klappen, da wir noch XP einsetzen und somit das noch nicht vorhandene Benutzerkonto nicht angelegt werden kann.

Auszug aus der SetupDEU:
Ist das Profil des angegebenen Benutzers lokal nicht vorhanden, wird es automatisch angelegt (nur möglich ab Windows Vista).

Re: Batchdatei aus Netzwerkshare aufrufen

Posted: 17. Feb 2016, 09:39
by llaprosper
Hallo,
ich hole den Thread noch mal hoch, da er wieder aktuell wird. (Zwischenzeitlich wurde das lokal gelöst.)
CallRunAs funktioniert nicht, da immer der bekannte "Fehler 2" auftaucht. Habe mehrere Setup.exe Versionen getestet und es funktioniert nicht. Ticket bei M42 ist eröfnet

Noch mal zum Problem:

Ich muss eine cmd Datei aufrufen, die wiederum eine cmd Datei auf dem Server mit dem Parameter /FB aufruft.
Die 2.te cmd Datei registriert dll' auf dem Client. Die 2.te cmd muss zwingend vom Netzwerkshare aufgerufen werden, da die Dll_s den Pfad des Servers brauchen.

probiert habe ich in der ersten cmd (sie enthält nur den Aufruf für die 2.te cmd mit /FB) ein" net use \\Freigabe" mit entsprechendem User voranzustellen.
Er verbindet sich auch zum Share aber die Registrierung der dll's schlägt trotzdem fehl.

Dann wurde mir gesagt, ich solle das mal mit psexec probieren.
Ich habe damit noch nie gearbeitet, verstehe es aber so, dass man damit nur etwas auf Remotecomputer ausführt.
Ich muss aber ja die Batch auf dem Client ausführen, die auf dem Server liegt.

Wie rufe ich denn die cmd auf der Netzwerkfreigabe auf, ohne das sie auf dem Server ausgeführt wird?
Oder habt ihr noch eine andere Idee?

funktioniert das überhaupt, mit den zwei Batchdateien? Oder würde die zweite eh immer mit dem Systemkonto ausgeführt?

Re: Batchdatei aus Netzwerkshare aufrufen

Posted: 17. Feb 2016, 10:19
by Hendrik_Ambrosius
Mit PSEXEC kann man auch auf dem lokalen Computer Programme ausführen.
Man baut den Link via NET USE auf und kann dann im selben Batchfile auch ein PSEXEC machen.

Re: Batchdatei aus Netzwerkshare aufrufen

Posted: 17. Feb 2016, 10:26
by LightTempler
Hallo,

man kann die PSEXEC auch für ein Impersonate auf dem lokalen Rechner nutzen und damit Prozesse in einem anderen Kontext laufen lassen.

Aus der Erfahrung heraus: Man sollte im Hinterkopf behalten, dass je komplexer/komplizierter eine Lösung wird, desto größer auch die Chancen auf Probleme in Praxis werden ;-)
Gibts wirklich keinen anderen ("normalenEmpirum") Weg, die Install.dateien auf den Client zu bekommen?

Grüße
LiTe

Re: Batchdatei aus Netzwerkshare aufrufen

Posted: 17. Feb 2016, 11:10
by llaprosper
Glaube mir...wenn ich einen Weg kennen würde, würde ich ihn sehr gerne nutzen.
Ich habe das extern paketieren lassen, weil ich keinen Weg damals gefunden hatte.
Auch die Externen konnten mir nicht helfen und haben die Dateien dann lokal auf den Client kopiert und von da aus registriert.
Das ist aber suboptimal, weil dann bei jeder Änderung auf dem Server die Daten im Paket angepackt und dann neu verteilt und registriert werden müssen.
Also brauche ich einen Weg die Datei auf dem Server mit Adminberechtigung zu starten

Re: Batchdatei aus Netzwerkshare aufrufen

Posted: 17. Feb 2016, 12:03
by Hendrik_Ambrosius
Wieso dann nicht die Dateien vom Server via COPY/XCOPY in das lokale %TEMP% kopieren und von dort starten?
Das wäre der stabilste Weg und kein Paket-Update nach Server-Update notwendig.

Re: Batchdatei aus Netzwerkshare aufrufen

Posted: 17. Feb 2016, 12:21
by lennu
Hallo,

wenn ich das richtig verstanden habe, geht es ja "nur" um die Registrierung von dlls, die auf einem Netzwerkpfad liegen. Warum nicht mit dem Package Wizard (oder anderen Registry-Tools) die Registrierungseinträge mitschneiden und dann einfach per Reg: auf die Rechner verteilen?

Oder bezieht sich Ihr Hinweis auf die häufigen Änderungen nicht nur auf neue Dateiversionen, sondern auch auf hinzukommende und wegfallende dlls?

Viele Grüße,
Lennu

Edit: Wie sieht denn die zweite Batch-Datei aus - könnten Sie sie hier hochladen oder als PN schicken? Dann könnte ich mal ein paar Ideen durchtesten