Connect failed: Connection timed out

[GastForen Betriebsysteme und Dienste HELIOS Photoshop Aktionen mit Windows Toolserver ausführen?

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

Photoshop Aktionen mit Windows Toolserver ausführen?

senna
Beiträge gesamt: 44

8. Mär 2010, 19:37
Beitrag # 1 von 7
Bewertung:
(2864 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo liebe Forums-Mitglieder,
in diesem Forum habe ich bereits die nötigen Informationen gefunden um einen Mac-Toolserver eine Photoshop Aktion ausführen zu lassen (lob an euch!). Leider konnte ich aber keine Informationen finden, ob dies auch mit Windows klappt. Mittels Applescript wird es ja wohl kaum gehen... Ist so etwas z.B. mit Perl möglich oder vielleicht doch gar nicht? Für jede Hilfe bin ich sehr dankbar!
bester gruss, philipp
X

Photoshop Aktionen mit Windows Toolserver ausführen?

Coolio
Beiträge gesamt: 217

8. Mär 2010, 20:56
Beitrag # 2 von 7
Beitrag ID: #435708
Bewertung:
(2849 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Philipp.
Ja. Das ist möglich und zwar mittels Microsofts VisualBasic. Helios liefert dafür mit dem Toolserver ein Beispiel (VB-Sourcecode) mit wo es darum geht ein Verzeichnisinhalt auszulesen und an den Toolclient zurückzugeben. Mit vorhandenem Grund-Wissen ist es möglich dieses für auf Deinen Wunsch anzupassen.

Die VisualBasic Programmierungebung mit Compiler für die daraus nötige exe-Datei gibt es als Express-Edition bei Microsoft, kostenlos zum herunterladen.

Etwas Off-Topic:
Gerade eben habe ich an einem Impressed-Webinar mal die Frage in den Raum geworfen ob Enfocus für Switch zukünftig Ambitionen hat so etwas ähnliches wie Toolserver (also RPC-mässiges) zu machen. Die Antwort wurde wegen Lizenztechnischen Gründen verneint. Ich frage mich schon länger ob Adobe den Toolserver einfach duldet?

Freundlicher Gruss
Jürg


als Antwort auf: [#435702]

Photoshop Aktionen mit Windows Toolserver ausführen?

senna
Beiträge gesamt: 44

9. Mär 2010, 09:32
Beitrag # 3 von 7
Beitrag ID: #435731
Bewertung:
(2805 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Jürg,
vielen Dank für die Antwort. Hat mir sehr weiter geholfen ...


als Antwort auf: [#435708]

Photoshop Aktionen mit Windows Toolserver ausführen?

earlofevil
Beiträge gesamt: 2

9. Mär 2010, 16:49
Beitrag # 4 von 7
Beitrag ID: #435824
Bewertung:
(2775 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
... eine Frage habe ich aber noch.
ich habe es nun hinbekommen mittels VB Photoshop zu starten und eine Aktion auszuführen. Allerdings ist mir noch nicht ganz klar, auf welche weise die zu verarbeite(nen) datei(en) übergeben wird? ist das nur eine Pfad und Dateinamen-Angabe, oder (wie ich meine gelesen zu haben) ein Bilddatenstrom?
Und gehe ich recht in der Annahme, dass das VB-Skript dem Applescript (action-psd-cs2.applescript) sehr ähnlich sein müßte ?

@Jürg: hast du vielleicht schon selber VB Skripte erstellt, die in diese richtung gehen? wenn ja, würdest du mir diese zur verfügung stellen?

Vielen Dank!
bester gruss, philipp


als Antwort auf: [#435731]

Photoshop Aktionen mit Windows Toolserver ausführen?

GreatOm
Beiträge gesamt: 378

9. Mär 2010, 17:24
Beitrag # 5 von 7
Beitrag ID: #435835
Bewertung:
(2763 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Die arbeitsweise des Toolservers wird doch im Handbuch Kap. 16.1 (http://www.helios.de/...toolsrv.html#1007970) beschrieben.

Danach arbeitet ein Tool im "workdir" auf der Datei "job.in".
Dann muss es die Daten verarbeiten und ein "job.out" schreiben.
Nachdem es dann beendet hat wird diese Datei zum HELIOS Server übertragen.

Gruß,

GreatOm


als Antwort auf: [#435824]

Photoshop Aktionen mit Windows Toolserver ausführen?

Coolio
Beiträge gesamt: 217

9. Mär 2010, 17:55
Beitrag # 6 von 7
Beitrag ID: #435843
Bewertung:
(2757 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Philipp
Antwort auf [ Philipps Frage ] mir noch nicht ganz klar, auf welche weise die zu verarbeite(nen) datei(en) übergeben wird? ist das nur eine Pfad und Dateinamen-Angabe, oder (wie ich meine gelesen zu haben) ein Bilddatenstrom?


Es kommt auf dem Toolserver eine job.in-Datei im Helios\tmp-Verzeichnis an und erwartet wieder eine job.out-Datei. Wenn Du nun schon den vb-Code hast, ist die Implementierung relativ einfach.

Antwort auf [ Philipps Frage ] Und gehe ich recht in der Annahme, dass das VB-Skript dem Applescript (action-psd-cs2.applescript) sehr ähnlich sein müßte ?

Dass kann ich Dir nicht beantworten da ich das Applescript noch nie genau angeschaut habe.

Antwort auf [ Philipps Frage ] @Jürg: hast du vielleicht schon selber VB Skripte erstellt, die in diese richtung gehen?


Ich habe da was anderes als Photoshop angesteuert. Das Module1.vb aus den Helios-Beispieldateien ist aber relativ einfach zu verstehen. Hier als der Auszug der letzten Zeilen und wo Du Dein Code reinschreiben kannst:

Auszug aus der Module1.vb
Code
..... 
Dim TimeoutParam As Integer = 180
Dim verboseParam As Boolean = False
Dim workDirParam As String = ""
Dim scriptParams As Collection = New Collection

For Each arg As String In My.Application.CommandLineArgs
'myLog.WriteLine("ARG: " + arg)
Select Case Left(arg, 2)
Case "-t"
TimeoutParam = Val(Mid(arg, 3))
Case "-v"
verboseParam = True
Case "-h"
writeLog("Usage")
System.Environment.Exit(0)
Case "-C"
workDirParam = Mid(arg, 3)
Dim workDirPath As String = HELIOSDIR + "\" + workDirParam
Try
System.IO.Directory.SetCurrentDirectory(workDirPath)
writeLog("Changed work dir to " + System.IO.Directory.GetCurrentDirectory)
Catch ex As Exception
writeLog("Change directory failed! Path=""" + workDirPath + """", True)
writeLog("Got exception " + ex.Message, True)
System.Environment.Exit(1)
End Try
Case "-X"
Dim KeyVal() As String = Split(Mid(arg, 3), "=")
Select Case KeyVal(0)
Case "LONG"
If KeyVal(1) = "TRUE" Then
scriptParams.Add("-l")
End If
Case "ALL"
If KeyVal(1) = "TRUE" Then
scriptParams.Add("-a")
End If
End Select
End Select
Next
===>
Hier kommt Dein Code und danach wieder in job.out geschrieben. Wichtig ist auch das Du weisst, wann Photosop mit der Arbeit fertig (Stichwort "myPID") ist und somit die job.out-Datei zur Verfügung steht.
<====

If myPID <> 0 Then
Dim shProcess As System.Diagnostics.Process
Try
shProcess = System.Diagnostics.Process.GetProcessById(myPID)
shProcess.WaitForExit()
Catch ex As Exception
' dont care ebout an exception because the process may
' be finished while accessing it
End Try
End If

Cleanup()
System.Environment.Exit(0)
End Sub
End Module


Hast Du auch schon das Forum nach Toolserver durchsucht? z.B. http://www.hilfdirselbst.ch/...ng=toolserver#384365

Viel Glück.
Grüsse Jürg


als Antwort auf: [#435824]

Photoshop Aktionen mit Windows Toolserver ausführen?

earlofevil
Beiträge gesamt: 2

10. Mär 2010, 17:41
Beitrag # 7 von 7
Beitrag ID: #435980
Bewertung:
(2706 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Vielen dank für die Hilfe.
Ich habe zuerst nicht richtig verstanden, dass die komplette datei auf den client rechner unter dem namen job.in in einen temporären Ordner kopiert wird. und die job.out visa versa.

Habe noch folgendes Problem ...(vielleicht weiss ja auch da jemand rat. per goolgesuche kam ich auf keine hilfreichen seiten)

Wenn ich Photoshop als Application Referrence setzen möchte (appRef = CreateObject("Photoshop.Application")) wirft es mir die Exception: "ActiveX Komponente kann nicht erstellt werden"
Dies geschieht aber nicht, wenn ich die .exe lokal ausführe, sondern nur, wenn sie durch den Toolserver "gestartet" wird.

....bin euch wirklich sehr dankbar für eure hilfe


als Antwort auf: [#435843]
X