Hallo,
die Zeile
start "C:\Users\Username\Desktop\Datei.ppsx"
öffnet mit nicht die Datei mit dem default Prgramm Powerpoint, sondern
einfach nur ein neue cmd-Fenster mit dem Dateinamen und Pfad als Titel.
Auf Windows 8.
Was mache ich falsch? Ich möchte, dass der Befehl die Datei öffnet.
Danke und Gruß,
Michael
Schon gelesen? Hier die Antwort.
Einfach in der Batch die Datei wie folgt aufrufen
C:\Users\Username\Desktop\Datei.ppsx
und schon sollte es auch unter Win 8 funktionieren.
Ach danke, das war ja einfach. Mit "C:\...\powerpoint.ppsx" ging es
dann, einfach das "start" weggelassen.
Nun gehts weiter:
Ich möchte diese batch-Datei, die eine Powerpoint öffnet, mit psexec von
einem anderen Rechner öffnen. Ich habe es soweit geschafft, dass ich die
batch auch remote starten kann, leider kommt dann von Powerpoint der
Fehler, dass er die Präsentationsdatei nicht lesen könne.
Hier der Clou: Öffne ich die batch-Datei lokal, öffnet sich die
Powerpointpräsentation ganz normal, nur remote kommt der Fehler, der auf
dem Rechner angezeigt wird, der die Präsentation dann auch anzeigen
soll.
Mein psexec Befehl, der ja soweit funktioniert:
psexec -i -s -d \\PCNAME -u username -p password
"C:\Users\username\Desktop\local_start.bat"
Das klingt mir nach einem Rechteproblem. Lokal kann ich mit der batch
die Powerpoint öffnen nur remote meckert Powerpoint...
Sollte aber nicht die psexec-Option 's' das genau verhindern?
"-s Run the remote process in the System account."
Die Firewall ist schon aus auf dem Zielrechner.
Der batch- und der Präsentationsdatei habe ich vorsichthalber mal
"jeder" (jedem) Vollzugriff gegeben.
Hat jemand eine Idee?
Oder eine andere Idee remote diese Powerpoint zu starten?
Michael schrieb:> Run the remote process in the System account
In dem willst Du kein Powerpoint laufen lassen. Das ist kein
interaktives Benutzerkonto.
Was ist die spezifische Idee, die dahintersteckt? Wozu soll das ganze
gut sein?
Hallo Rufus,
die Idee dahinter ist folgende:
Ein PC mit Bildschirm dient in meiner Firma zur Präsentation von
aktuellen Stauts zu den Reparaturfällen. Der PC dient nur der Anzeige.
Die Präsentation muss manuell bearbeitet und aktualisiert werden. Dies
soll bzw funktioniert derzeit so, dass jemand die Präsentation manuell
am Präsentations-PC beendet, die Präsentation mit einem anderen PC
aktualisiert und die aktuelle Version auf den Präsentations-PC lädt und
jemand manuell die Präsentation wieder startet.
Dieses manuelle Beenden und Starten der Präsentation möchte ich umgehen
und direkt über psexec die Präsentation ausführen und beenden können
(taskkill).
Dann muss man an den PC, der nur der Anzeige dient, garnicht mehr
anfassen. Das ist nun das Ziel.
Gruß,
Michael
Klassischer Fall von
"Von hinten durch die Brust ins Auge"
oder
"Wenn man nur einen Hammer kennt, sieht jedes Problem wie ein Nagel aus.
Warum mnicht einfach eine html-Datei erzeugen, die der
Präsentationsrechner im Vollbildmodus anzeigt?
Im einfachsten Fall dann ein autmoatisches Refresh einbauen. oder damit
man den Seitenaufbau nicht sieht, mit Javascript die jeweils aktuellsten
Daten einlsesen und Grafik anpassen.
Suche mal nach
https://de.wikipedia.org/wiki/Kiosk-Modus
damit sollte das möglich sein. Ich denke man kann es so umbiegen das man
jedes Programm starten kann.
als Systemaccount ist wirklich eine sehr dumme Idee, zum glück scheint
es Windows ja zu verhindert. Das Programm hat damit alles Lokalen Rechte
und darf damit alles machen. So möchte man ein PC bestimmt nicht
rumstehen lassen.
Vlad T. schrieb:> Warum mnicht einfach eine html-Datei erzeugen, die der> Präsentationsrechner im Vollbildmodus anzeigt?>> Im einfachsten Fall dann ein autmoatisches Refresh einbauen. oder damit> man den Seitenaufbau nicht sieht, mit Javascript die jeweils aktuellsten> Daten einlsesen und Grafik anpassen.
Dafür fehlt das Know-How.
Peter II schrieb:> https://de.wikipedia.org/wiki/Kiosk-Modus
Gibt es keine einfachere Lösung? Wieso habe ich per psexec, mit username
und password angegeben nicht die nötigen Rechte auf dem Ziel-PC?
Ich würde diese Lösung bevorzugen, da es ja nun nur noch an fehlenden
Rechten liegt. Kiosk-Modus oder gar HTML und Scripten braucht viel zu
lange Zeit. Das ist es meinem Chef nicht wert.
Gruß,
Michael
Michael schrieb:> Dafür fehlt das Know-How.
sorry, aber irgend eine Webseite anzulegen, die ein paar Zahlen oder
eine Grafike enthält, kann man mit nahezu jedem Program machen, notfalls
mit Word.
Dann ein passendes Browseraddon, was eine Webseite neu läd, wenn sich
die Datei ändert.
das sieht ganz gut aus (nicht getestet):
https://addons.mozilla.org/de/firefox/addon/livereload/
Wenn neue Daten da sind, werden die in die Webseite eingepflegt und
diese gespeichert.
Der Anzeigerechner kümmert sich um das neuladen der Darstellung.
Was ist daran anders als.
- neu daten in ppt
- script schreiben, dass
- powerpoint auf anzeigerechner beendet
- ppt kopiert
- powerpoint auf anzeigerechner neu startet
?
Michael schrieb:> Ich möchte diese batch-Datei, die eine Powerpoint öffnet, mit psexec von> einem anderen Rechner öffnen. Ich habe es soweit geschafft, dass ich die> batch auch remote starten kann, leider kommt dann von Powerpoint der> Fehler, dass er die Präsentationsdatei nicht lesen könne.
Liest die PräsentationsPC dann auch die PPT-Datei von deinem Rechner
oder liegt die Datei auf dem PräsentationsPC?
Eric schrieb:> Liest die PräsentationsPC dann auch die PPT-Datei von deinem Rechner> oder liegt die Datei auf dem PräsentationsPC?
Die Datei liegt auf dem Präsentations-PC.
Vlad T. schrieb:> Klassischer Fall von> "Von hinten durch die Brust ins Auge"> oder> "Wenn man nur einen Hammer kennt, sieht jedes Problem wie ein Nagel aus.>> Warum mnicht einfach eine html-Datei erzeugen, die der> Präsentationsrechner im Vollbildmodus anzeigt?
Ja genau. Du hast dein Problem wirklich absolut treffend
klassifiziert...
Du kennst nur Browser-basierten Scheiß, deswegen muß alles
Browser-basierter Scheiß sein oder Browser-basierter Scheiß werden.
Ganz egal, was dabei alles den Bach runtergeht...
Ein "Web-Entwickler" hat sich geoutet.
Was nun das Problem des TO betrifft, ist es wahrscheinlich wirklich ein
"Rechteproblem", allerdings anders, als der TO glaubt. Das Problem ist
wohl schlicht, dass die Datei im Zielsystem noch offen ist, wenn er
schon versucht, auf dem Zielsystem die Präsentations-Anwendung neu zu
starten.
Sprich: er braucht in des Upload-Script eigentlich nur ein Sleep
einbauen (die dumme Variante) oder in einer Schleife mit kurzen Sleeps
immer wieder prüfen, daß sich die Datei auf dem Zielsystem
uneingeschränkt zum Lesen öffnen läßt, bevor die Anwendung neu gestartet
wird (die etwas schlauere Variante).
Mit der PowerShell könnte man es sogar vollständig korrekt machen, indem
man einen DirectoryWatcher benutzt, der einfach dann ein Event wirft,
wenn die Datei durch den schreibenden Prozess geschlossen und somit
"frei zur Benutzung" auf dem Zielsystem wird. Im Handler dieses Events
startet man dann einfach die neue Instanz des Präsentations-Viewers.
PS: Natürlich ist die Verwendung des SYSTEM-Accounts hier völlig
daneben. Nützt absolut nix, ist aber ein potentielles
Sicherheitsproblem. Nein, es genügt völlig, wenn stinknormaler
Benutzer-Account verwendet wird. Er muß halt nur das Recht haben, auf
die per Netzwerk eingespielte Datei lesend zugreifen zu dürfen. Das
einzurichten ist wirklich so dermaßen trivial, dass es sogar ein MCSE
hinbekommen sollte...
c-hater schrieb:> Du kennst nur Browser-basierten Scheiß, deswegen muß alles> Browser-basierter Scheiß sein oder Browser-basierter Scheiß werden.>> Ganz egal, was dabei alles den Bach runtergeht...>> Ein "Web-Entwickler" hat sich geoutet.
da liegst du völlig falsch.
Ich hab schon ewig nix mehr in der Richtung gemacht und kenne
mittlerweile wahrscheinlich sogar Powerpoint besser als html, aber es
braucht auch nicht viel dafür.
Aber die Anforderungen, Daten anzuzeigen, die im Hintergrund
aktualisiert werden, funktioniert halt besonders gut mit html und nem
Browser.
Da die Daten wahrscheinlich auch nicht per Post kommen, sondern aller
Wahrscheinlichkeit aus irgend einem digitalen System rausfallen, kann
man wahrscheinlich die Anpassung auch automatisieren. Auch das geht bei
html bedeutend einfacher.
Hast du mal ein pptx geöffnet? da will man nicht drin rum pfuschen. Vom
klassischem ppt reden wir mal gar nicht erst.
Ich würde sagen das hängt auch davon ab wie die Reparaturfälle verwaltet
werden. Ob nur auf Papier/mündlich oder von einer Software. Im letzteren
Fall kann man das ganze auch gleich komplett automatisieren (und zwar
erstmal völlig unabhängig davon wie die Anzeige realisiert wird, auch
power point kann man mit externen Werten füttern). Das ist dann auch ein
Argument für den Chef, da die permanent notwendige Arbeitszeit wegfällt.
Wieso, hier waren doch auch Ansätze zur Lösung deines Problems dabei.
Zum einen sollst Du die Option für den Systemaccount rausnehmen und zum
anderen sollst Du nach deinen Zugriffsrechten schauen. (Was du ja selbst
schon geahnt hast.)
z.B.
Beitrag "Re: Batch Programmierung, ganz kurze Frage zu "start xxx""
Ohne weitere Infos deinerseits kann das Orakeln nicht weitergehen.
Du hast ja noch nicht einmal die fertige Batchdatei angegeben und die
Fehlermeldung von PPT.
Michael schrieb:> Hier der Clou: Öffne ich die batch-Datei lokal, öffnet sich die> Powerpointpräsentation ganz normal, nur remote kommt der Fehler, der auf> dem Rechner angezeigt wird, der die Präsentation dann auch anzeigen> soll.
Funktioniert der Batch, wenn du lokal am Präsentationsrechner arbeitest.
Was nützt es, wenn es lokal auf deinem eigenen Rechner mit deinen
Rechten und deinen Pfaden usw. läuft.