Diskuse Elektrika.cz

HYBRIDNÍ zóna => Technická podpora výrobce TECO Kolín radí odborníkům => Téma založeno: Slavomír Skopalík 28.06.2012, 14:58



Název: Jak zaclenit PUB soubor jako soucast vnitrniho WEB serveru?
Přispěvatel: Slavomír Skopalík 28.06.2012, 14:58

Jelikoz mam problem s distribuci PUB souboru (komunikacni knihovny mam vlastni),  tak bych rad, aby se pub soubor nahral primo do PLC a komunikacni komponenta si jej sama stahla (tj. budou odstraneny neustale problemy s preadresaci).
Idealni resenim by bylo nastavit PUB soubor jako statickou www stranku, jenz by se nahrala do PLC pri kazde aktualizaci programu (tj. byla by porad aktualni).
Je to mozne ?


Název: Re: Jak zaclenit PUB soubor jako soucast vnitrniho WEB serveru?
Přispěvatel: Milan Bydžovský 29.06.2012, 08:21
V Manažeru projektu v uzlu Sw > Exportní soubory je v sekci Posílání souborů do PLC možnost Posílat assembler soubor (.pub) s možností definovat jeho osmipísmené jméno. Tato kopie souboru PUB se pak vysílá společně s kódem aplikace.


Název: Re: Jak zaclenit PUB soubor jako soucast vnitrniho WEB serveru?
Přispěvatel: Slavomír Skopalík 29.06.2012, 18:35
ano tuto skutecnost jsem jiz zjistil, ale jakym zpusobem pak lze tento soubor automatizovane z PLC ziskat ?
Jedina moznost, co me napdala byla zvolit pro soubor toto jsmeno: WWW\var a tim je presunout do rootu webu.
Nasledne pak hacknout system prihlasovani (nastesti je velmi primitivni).
Nicmene to neni asi cesta, kterou by se mel resit seriozni projekt.

Hack na autoimaticke stazeni z PLC:

procedure TForm1.Button2 Click(Sender: TObject);
var s:string;
  HTTP: THTTPSend;
  b:boolean;
  sa:AnsiString;
begin
  HTTP := THTTPSend.Crea te;
  HTTP.HTTPMetho d('GET', 'http://192.168.1.80/syswww/login.xml');
  ErrorMemo1.Lin es.AddStrings(HTTP.Cookies);
  s:=HTTP.Cookies.Values['SoftPLC'];
  sa:='PASS:'+StringToHex(SHA1(AnsiString(s)), '')+CRLF+'USER:'+CRLF;
  HTTP.Document. Clear;
  HTTP.Document. WriteBuffer(sa[1],Length(sa));
  HTTP.HTTPMetho d('POST', 'http://192.168.1.80/syswww/login.xml');
  HTTP.HTTPMetho d('GET',  'http://192.168.1.80/var.pub');
  ErrorMemo1.Lin es.LoadFromStr eam(HTTP.Document);
  HTTP.Free;
end;


V Manažeru projektu v uzlu Sw > Exportní soubory je v sekci Posílání souborů do PLC možnost Posílat assembler soubor (.pub) s možností definovat jeho osmipísmené jméno. Tato kopie souboru PUB se pak vysílá společně s kódem aplikace.