Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: OCS am 19.10.05 - 15:14:22

Titel: Acrobat Reader über Lotus Notes Parametergesteuert öffnen
Beitrag von: OCS am 19.10.05 - 15:14:22
Hi Folks,
wie bereits in der Überschrift erwähnt würde ich gerne über Script Acrobat Reader mit bestimmten Parameter starten...

In der Shell würde ich z.B. diesen Befehl eingeben:

AcroRd32.exe /A "search=keine" "h:\ocs\automotive.pdf"

Erklärung:
Das Dokument "h:\ocs\automotive.pdf" wird nun geöffnet und beim starten bereits eine Volltextsuche nach dem Begriff "keine" durchgeführt.


Das ganze Funktioniert so! Gibt es eine Möglichkeit, den Suchbegriff in ein Feld zu schreiben und dann den Befehl auf einen Button zu legen?

mit dem shell-Befehl geht das ganze anscheinend nicht (denk ich falsch?), da ich den Shell-Befehl ja schon in Gänsefüschen übergeben muss und ich ja in meinen Parametern zum Adobe hin auch welche  hab und das Notes lässt leider keine zu...!??

also das hier habe ich versucht und zwar erfolglos:

Dim taskId As Integer
taskId% = Shell("AcroRd32.exe /A "search=keine" "h:\ocs\automotive.pdf" ", 1)

Kann mir vieleicht jemmand helfen??

Gruß Björn
Titel: Re: Acrobat Reader über Lotus Notes Parametergesteuert öffnen
Beitrag von: animate am 19.10.05 - 15:51:09
Warum erfolglos? Was ist passiert? Nicht kompilierbar?
Dann liegts wahrscheinlich an der falschen Verwendung der Anführungszeichen. Ersetze mal die äußeren Anführungszeichen durch Pipes oder geschweifte Klammern und versuchs noch mal
Titel: Re: Acrobat Reader über Lotus Notes Parametergesteuert öffnen
Beitrag von: flaite am 19.10.05 - 15:55:49
taskId% = Shell(|AcroRd32.exe /A "search=keine" "h:\ocs\automotive.pdf"|, 1) ?
Titel: Re: Acrobat Reader über Lotus Notes Parametergesteuert öffnen
Beitrag von: OCS am 19.10.05 - 16:03:41
Danke erstmal für Eure Antworten! Bei:
Sub Click(Source As Button)
   
Dim taskId As Integer
   taskId% = Shell(|AcroRd32.exe /A "search=keine" "h:\ocs\automotive.pdf"|, 1)
End Sub

bekomme ich leider "File not Found" zurück"!! So eine mist!
Titel: Re: Acrobat Reader über Lotus Notes Parametergesteuert öffnen
Beitrag von: animate am 19.10.05 - 16:21:04
von wem bekommst du die Fehlermeldung? Wird der Reader geöffnet?
Titel: Re: Acrobat Reader über Lotus Notes Parametergesteuert öffnen
Beitrag von: OCS am 19.10.05 - 16:30:53
Leute es geht! hab den kompletten pfad zum reader mitgegeben, jetzt frist er's!! Danke euch allen!!!
Titel: Re: Acrobat Reader über Lotus Notes Parametergesteuert öffnen
Beitrag von: flaite am 19.10.05 - 16:33:45
Leute es geht! hab den kompletten pfad zum reader mitgegeben, jetzt frist er's!! Danke euch allen!!!
Ich glaub das heisst: absoluter Pfad.
Und vorher hast du den relativen Pfad angegeben.

Titel: Re: Acrobat Reader über Lotus Notes Parametergesteuert öffnen
Beitrag von: OCS am 20.10.05 - 12:55:48
Hab mich wohl zu früh gefreut! Ok, da ich ja mein Suchwort das ich dem Acrobat Reader übergebe aus einem Textfeld hole, weise ich den Wert aus dem Textfeld einer String-Variablen zu und bring die dann in meinem aufruf unter... Seit ich das jetzt aber so mache, meint Lotus Notes "File not found!"! Poste mal meinen Quelltext, vieleicht kann einer was damit anfangen...


Sub Click(Source As Button)
   Dim session As New NotesSession
   Dim komplett As String
   Dim search As String
   Dim befehl As String
   Dim workspace As New NotesUIWorkspace
   Dim tmp1 As String
   Dim tmp2 As String
   Dim tmp3 As String
   Dim tmp4 As String
   Dim Db As notesdatabase
   Dim zwei As String
   Set db = session.currentdatabase
   Dim doc As New NotesDocument(DB)
   Dim taskId As Integer
   rc = workspace.Dialogbox ( "Suche",True ,True , , , , , "Leitfaden durchsuchen", doc )     
   search = doc.docsearch(0)
   befehl = |"| + "search=" + search + |"|
   
   'Print doc.docsearch(0)
   'befehl = befehl + zwei
   
   tmp1 = "|C:\Programme\Adobe\Acrobat 6.0\Reader\AcroRd32.exe /A "
   tmp2 = befehl
   tmp3 = | "h:\ocs\automotive.pdf"|
   tmp4 = "|"
   komplett = tmp1 + tmp2 + tmp3 + tmp4
   Print komplett
   taskId% = Shell(komplett , 1)   
   
   
End Sub
Also ich vermute das es daran liegt, dass ich der Funktion nen String übergebe, weil wenn ich die Funktion Hartcodiert habe (vorletzte Zeile dieses Beitrags) dann funktioniert ja auch, obwohl im Prinzip das Gleiche drinsteht!!! Noch irgendwer eine Idee??


taskId% = Shell(|C:\Programme\Adobe\Acrobat 6.0\Reader\AcroRd32.exe /A "search=keine" "h:\ocs\automotive.pdf"|, 1)

Gruß Björn
Titel: Re: Acrobat Reader über Lotus Notes Parametergesteuert öffnen
Beitrag von: Axel am 20.10.05 - 13:03:20
Hi,

kann das sein, dass du ein Leerzeichen vergessen hast?

Versuch's mal so : tmp3 = | " h:\ocs\automotive.pdf"|


Axel

Titel: Re: Acrobat Reader über Lotus Notes Parametergesteuert öffnen
Beitrag von: animate am 20.10.05 - 13:09:17
es steht eben nicht das gleiche drin. Kannst du ganz gut im Debugger sehen, glaube ich
deinen String musst du so zusammenbauen:
executableString = |C:\Programme\Adobe\Acrobat 6.0\Reader\AcroRd32.exe /A "search=| & search & |" "h:\ocs\automotive.pdf"|


wie komme ich darauf? Ich nehme den String, mit dems funktioniert
|C:\Programme\Adobe\Acrobat 6.0\Reader\AcroRd32.exe /A "search=keine" "h:\ocs\automotive.pdf"|

und ersetze das keine durch | & search & |
also Abschluss der Zeichenkette, Variable anhängen und wieder öffnen der Zeichenkette
Titel: Re: Acrobat Reader über Lotus Notes Parametergesteuert öffnen
Beitrag von: animate am 20.10.05 - 13:13:56
Dein Problem ist glaube ich, dass du entweder nicht weißt, dass das | genau die gleiche Funktion hat wie ein ", nämlich einen String zu begrenzen oder wie man es benutzt. Aber keine Bange, in der Hilfe ist das ganz gut erklärt :)
Titel: Re: Acrobat Reader über Lotus Notes Parametergesteuert öffnen
Beitrag von: OCS am 20.10.05 - 13:49:37
sorry, hast natürlich recht! hab den Fehler gefunden und jetz läufts!! Danke!!
Titel: Re: Acrobat Reader über Lotus Notes Parametergesteuert öffnen
Beitrag von: OCS am 20.10.05 - 14:15:01
Ok, einen hab ich noch :-) ! Was klar ist, ist das die Geschichte momentan nur mit Acrobat 6 funktioniert..." Hab ich die Möglichkeit bei einem auftretenden Fehler nen anderen Pfad für Adobe 5 zu nehmen? Wir haben hier in der Firma nämlich einige Clients, die mit 5 arbeiten....

danke für evtl. antworten!

Gruß Björn