AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Javascript ohne TWebBrowser ausführen
Thema durchsuchen
Ansicht
Themen-Optionen

Javascript ohne TWebBrowser ausführen

Ein Thema von Schwedenbitter · begonnen am 16. Nov 2010 · letzter Beitrag vom 17. Nov 2010
Antwort Antwort
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#1

AW: Javascript ohne TWebBrowser ausführen

  Alt 16. Nov 2010, 23:30
Wieso drei? Er referenziert doch genau einen -> Anker im Link! Den mittleren halt
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

AW: Javascript ohne TWebBrowser ausführen

  Alt 16. Nov 2010, 23:43
Wieso drei? Er referenziert doch genau einen -> Anker im Link! Den mittleren halt
Genau den hätte ich nicht genommen.

Ich würde es mal mit synapse probieren. Da braucht auch nichts installiert werden und nach meinen Erfahrungen sehr sauber und extrem stabil.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Schwedenbitter

Registriert seit: 22. Mär 2003
Ort: Finsterwalde
622 Beiträge
 
Turbo Delphi für Win32
 
#3

AW: Javascript ohne TWebBrowser ausführen

  Alt 17. Nov 2010, 08:45
OK. Dieses Thema hat mich auf folgende Idee gebracht:
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  With TDownloadURL.Create(self) Do
  Try
    URL:='http://192.168.1.2/vphone/vp-list-mailin.asp?mode=11&entry=0&nr=512&type="77"&read=';
    FileName:='Dummy.html';
    Try
      ExecuteTarget(nil);
      ShowMessage('Executed OK');
    Except
      On E : Exception Do ShowMessage(E.Message);
    End;
  Finally
    Free;
  End;
end;
Zwar löscht er mir den Eintrag auch nicht. Aber ich bekomme eine html-Datei zurück, die mir mögliche Fehler verrät:
Code:
<html><body>
<h2><b>ASP Error</b></h2>
vp_list_mailin(mode,entry,rnr,type,read);
</body></html>
Wenn ich das richtig verstehe, ist mein 'POST' angekommen und der Server ist sogar noch so nett und sagt mir, wie ich die Funktion richter Weise benutzen soll. Da ich read= nirgends finden kann, bleibt mir also doch nur ein Shniffer. Oder sehe ich das falsch?

Ich möchte keine anderen Komponenten verwenden (Indys eingeschlossen), wenn und soweit die Chance besteht, dass ich es mit den Bordmitteln hinbekomme.

[EDIT]
Habe jetzt den Traffic mal mit Live HTTP Headers mitgeschnitten und es hat den Anschein, dass die Variablen vertauscht und die Argumente andere sind. Ich muss jetzt leider warten, bis wieder ein Fax eingeht und werde es dann probieren. Bins schon ganz euphorisch!
[/EDIT]

Gruß, Alex
Alex Winzer

Geändert von Schwedenbitter (17. Nov 2010 um 09:03 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#4

AW: Javascript ohne TWebBrowser ausführen

  Alt 17. Nov 2010, 09:01
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  With TDownloadURL.Create(self) Do
  Try
    URL:='http://192.168.1.2/vphone/vp-list-mailin.asp?mode=11&entry=0&nr=512&type="77"&read=';
    FileName:='Dummy.html';
    Try
      ExecuteTarget(nil);
      ShowMessage('Executed OK');
    Except
      On E : Exception Do ShowMessage(E.Message);
    End;
  Finally
    Free;
  End;
end;
Zwar löscht er mir den Eintrag auch nicht. Aber ich bekomme eine html-Datei zurück, die mir mögliche Fehler verrät:
Code:
<html><body>
<h2><b>ASP Error</b></h2>
vp_list_mailin(mode,entry,rnr,type,read);
</body></html>
Ich möchte keine anderen Komponenten verwenden (Indys eingeschlossen), wenn und soweit die Chance besteht, dass ich es mit den Bordmitteln hinbekomme.
Ist das ein Tippfehler in deinem Code?
statt
Code:
entry=0&nr=512&type
müsste es doch
Code:
entry=0&rnr=512&type
lauten
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Schwedenbitter

Registriert seit: 22. Mär 2003
Ort: Finsterwalde
622 Beiträge
 
Turbo Delphi für Win32
 
#5

AW: Javascript ohne TWebBrowser ausführen

  Alt 17. Nov 2010, 10:07
Ist das ein Tippfehler in deinem Code?
statt
Code:
entry=0&nr=512&type
müsste es doch
Code:
entry=0&rnr=512&type
lauten
Ja - genau das. Und auch die Argumente sind anders als im html-Quelltext angegeben. Im Quelltext steht
Code:
type="77"
und
Code:
nr=512
(ohne das zusätzliche r), während es die Funktion umgekehrt und mit r will. Vielleicht eine Falle für Leute, die eine Software für die Anlagen schreiben wollen Wie auch immer.
Es funktioniert jetzt über die URL
Code:
http://192.168.1.2/vphone/vp-list-mailin.asp?mode=11&entry=0&rnr=77&type=512&read=
Danke für Eure Hilfe. Ich fasse mal zusammen:

1. Man kann ein 'POST' ziemlich einfach über TDownloadURL absetzen und damit eine Javascript-Funktion ausführen lassen.
2. Oben steht, wie es insbesondere bei einer OpenCom X320 geht.
Alex Winzer
  Mit Zitat antworten Zitat
Benutzerbild von BUG
BUG

Registriert seit: 4. Dez 2003
Ort: Cottbus
2.094 Beiträge
 
#6

AW: Javascript ohne TWebBrowser ausführen

  Alt 17. Nov 2010, 14:31
1. Man kann ein 'POST' ziemlich einfach über TDownloadURL absetzen und damit eine Javascript-Funktion ausführen lassen.
Kann man das so stehen lassen?
Denn JavaScript führst du damit ja nicht aus, sondern du hast die Funktionalität der JavaScript-Funktion nachprogrammiert, und die ruft eben eine URL auf (aber anscheinend mit GET)
Intellekt ist das Verstehen von Wissen. Verstehen ist der wahre Pfad zu Einsicht. Einsicht ist der Schlüssel zu allem.
  Mit Zitat antworten Zitat
Schwedenbitter

Registriert seit: 22. Mär 2003
Ort: Finsterwalde
622 Beiträge
 
Turbo Delphi für Win32
 
#7

AW: Javascript ohne TWebBrowser ausführen

  Alt 17. Nov 2010, 14:59
Kann man das so stehen lassen?
Stimm insoweit, als es nicht exakt ausgedrückt ist. Nicht ich (mein Programm), sondern der Server führt das JS aus. Ich fordere ihn dazu nur auf und übergebe ihm mit/in der URL die Argumente. Und da diese wiederum nicht im Header, sondern eben in der URL selbst stehen, ist es per Definition nach dem Artikel von wikimedia.org ein 'GET'.

So gesehen ist aber auch das Thime nicht richtig formuliert, woran bislang keiner Anstoß genommen hat. Es müsste heißen: "Javascript ohne TWebBrowser auf einem http-Server ausführen lassen".

Soll ich es ändern?
Alex Winzer

Geändert von Schwedenbitter (17. Nov 2010 um 15:01 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:36 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz