AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Remoting via Browser
Thema durchsuchen
Ansicht
Themen-Optionen

Remoting via Browser

Ein Thema von Meflin · begonnen am 26. Sep 2004 · letzter Beitrag vom 27. Sep 2004
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von XHelp
XHelp

Registriert seit: 12. Jul 2004
Ort: Duisburg
172 Beiträge
 
Delphi 6 Enterprise
 
#11

Re: Remoting via Browser

  Alt 26. Sep 2004, 13:41
Ich habe das gleiche schon gemacht. Nur mit TServerSocket.

Delphi-Quellcode:
unit main;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ScktComp;

type
  TMainForm = class(TForm)
    SS1: TServerSocket;
    Button1: TButton;
    Button2: TButton;
    procedure SS1ClientRead(Sender: TObject; Socket: TCustomWinSocket);
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  MainForm: TMainForm;
  index:TStringList;

implementation

{$R *.dfm}

procedure TMainForm.SS1ClientRead(Sender: TObject;
  Socket: TCustomWinSocket);
var
sl:TStringList;
s:string;
i:integer;
begin
sl:=TStringList.Create;
sl.Text:=Socket.ReceiveText;
if sl[0]='GET / HTTP/1.1then begin
  Socket.SendText(index.Text);
  Socket.Close;
end;
if sl[0]='POST / HTTP/1.1then begin
  s:=sl[sl.Count-1];
  i:=pos('&go=',s);
  if i>0 then begin
    Delete(s,i,length(s)-i+1);
  end;
  if pos('text=',s)=1 then Delete(s,1,5);
  while pos('%0D%0A',s)>0 do begin
    i:=pos('%0D%0A',s);
    Delete(s,i,6);
    Insert(#13#10,s,i);
  end;
  Socket.SendText(s);
  Socket.Close;
end;

end;

procedure TMainForm.FormCreate(Sender: TObject);
begin
SS1.Port:=8989;
index:=TStringList.Create;
if FileExists(ExtractFileDir(Application.ExeName) + '\index.htm') then
  index.LoadFromFile(ExtractFileDir(Application.ExeName) + '\index.htm');
SS1.Active:=true;
end;

procedure TMainForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
SS1.Active:=false;
end;

end.
index.htm sieht so aus:
Code:
<html>

<head>
<title>REMOTE CONTROL</title>
</head>

<table table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
    <td width="100%">
      <p align="center">
      [b]<font size="4">REMOTE CONTROL


      </font>[/b]
      <FORM ACTION="" METHOD="post">
<TABLE BORDER="0" width="565">
<tr>
<TR>
<TD width="103">Message:</TD> <TD width="436"><textarea ROWS="6" COLS="53" NAME="text"></textarea></TD>
</TR>
</TABLE>
<INPUT TYPE="submit" NAME="go" VALUE="Send"> <input type="reset" value="Reset" name="res">
</FORM>
     

    </td>
  </tr>
</table>

</body>

</html>
Mach dem man das programm gestartet hat, kann man unter http://127.0.0.1:8989 die index.htm findet. Das beispiel wartet auf eingabe und dann gibt die eingabe zurück. Du kannst also deine seite machen und dann im server gucken, was ausgewählt und dann einfach das machen, was du willst =)

Ist es das was du gesucht hast?
Alex
Von allen Dingen die mir verloren gegangen,
hab ich am meisten an meinem Verstand gehangen
  Mit Zitat antworten Zitat
Jörn

Registriert seit: 5. Sep 2003
Ort: Helmstedt
312 Beiträge
 
#12

Re: Remoting via Browser

  Alt 26. Sep 2004, 21:42
Oder wenn man sowieso einen Webserver rennen lassen will, schreibt man eine ISAPI-dll welche in den Webserver (Apache, Sambar, IIS) eingebunden werden kann. Obwohl dafür der Arbeitsaufwand bei der Methode über meinem Post wohl geringer wäre, wenn auch nicht viel.

//EDIT: Schwachfug, viel zu kompliziert hier. Hätte das mal richtig lesen sollen.
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#13

Re: Remoting via Browser

  Alt 27. Sep 2004, 16:29
oja dann bräcuhte der user ja noch nen zusätzlichen webserver ...
nur dass bei der delphi 7 pe auch kein tserversocket dabei ist, werde also wohl den indy http server verwenden ,üssen! kennt jemand ine gute beispiel app oder ein bruachbares tutorial dafür?

*MFG*
  Mit Zitat antworten Zitat
Benutzerbild von XHelp
XHelp

Registriert seit: 12. Jul 2004
Ort: Duisburg
172 Beiträge
 
Delphi 6 Enterprise
 
#14

Re: Remoting via Browser

  Alt 27. Sep 2004, 21:05
tserversockt muss dabei sein, vielleicht ist er einfach nicht installiert... aber sockets müssen dabei sein.
Alex
Von allen Dingen die mir verloren gegangen,
hab ich am meisten an meinem Verstand gehangen
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 18:09 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz