WEBCAM+ MICROSERVEUR HTTP = WEBCAM IP (INDY 9 ET INDY 10)
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 2014
-
23 juil. 2006 à 02:50
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 2014
-
10 mars 2007 à 00:31
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 10 mars 2007 à 00:31
bonsoir
pour le format HTML c'est effectivement une faute de frappe de ma part
Mea culpa
@+
jlen
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 6 mars 2007 à 09:34
Bonjour,
@ Matt261, après une vérification, en fait le format HTML ou HTM sont Ok, nethacker a donc raison si lui même n'avait pas commis l'erreur d'écrire "HMTL" qui est un format qui n'existe pas.
Par contre avec FrontPage, j'ai créé une page de test avec le format HTLM et il n'est pas reconnu par IE7.
Julen100 à peut être aussi fourché sur le nom.
Cela ne gène en rien la qualité de la source.
@+,
Cincap
Matt 261
Messages postés1173Date d'inscriptionmercredi 2 novembre 2005StatutMembreDernière intervention10 septembre 20113 5 mars 2007 à 18:51
Salut,
le HTLM étant moins connu que le HTML, je pense que c'est simplement une erreur de la part de nethacker.
@+
Matt
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 5 mars 2007 à 18:44
Bonsoir,
A ma connaissance, c'est bien le format HTLM ou HTM qui sont valides dans ce cas.
JLEN100 a raison, je ne comprends donc pas ton intervention avec un supposé format HMTL.
@+,
Cincap
nethacker
Messages postés288Date d'inscriptionmardi 2 mai 2006StatutMembreDernière intervention12 octobre 2011 5 mars 2007 à 18:31
salut,
ta source est vraiment superbe juste un tout petit probleme !
dans la description principalement un mot dans le deuxieme paragraphe , première phrase !
a force d'ecrire vite t'a ecrit htlm au lieu de hmtl !
a part ca y'a rien à dire !
elbayad
Messages postés1Date d'inscriptionmardi 22 juillet 2003StatutMembreDernière intervention11 novembre 2006 11 nov. 2006 à 15:38
J'ai testé ça marche très bien quand les machines sont sur un réseau local. De l'extérieur y'a pas d'images
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 8 sept. 2006 à 20:43
merci pour la note
Matt 261
Messages postés1173Date d'inscriptionmercredi 2 novembre 2005StatutMembreDernière intervention10 septembre 20113 8 sept. 2006 à 20:08
@ Cincap : tu peux recommencer, je viens de tester et ça marche.
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 8 sept. 2006 à 13:21
J'ai oublié, il est impossible de noter ta source, cela ne fonctionne pas sur ce site.
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 8 sept. 2006 à 06:36
Bonjour JLEN100,
Encore une nouvelle fois tu te surpasses dans cette version.
Bravo pour cette réalisation et pour l'ensemble de tes réalisations au profit de tous.
Cincap alias Max
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 26 août 2006 à 13:47
grosse mise à jour
suite à plusieurs demandes j'ai ajouté la possibilité de pouvoir transmettre les images à un site WEB ceci m'a amené à faire une zone publque et une zone privée j'en ai profité pour y ajouter la possibilité de commander le PC à distance Il y aun peu de HTML et de javascript désolé pour cette entorse à DELPHI!!
@+
jlen
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 29 juil. 2006 à 10:54
pour sauvegarder la sélection du mode recherche de l'IP en fichier.INI
dans le Formclose rajouter:
for i:=1 to 4 do
begin
if TRadioButton(FindComponent('RadioButton'+inttostr(i))).Checked then break;
end;
.
.
.
fIniFile.WriteInteger('Internet', 'ModeIP',i);
et dans le formCreate:
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 29 juil. 2006 à 10:38
petit nota en passant : il faut également modifier le fichier .INI pour qu'il conserve la sélection!!
@+
jlen
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 29 juil. 2006 à 09:54
petit avatar dans le copié collé à remplacer par:
function TFServer.GetLocalIp: string;
var HTMLSource:string;
wsaData: TWSAData;
addr: TSockAddrIn;
Phe: PHostEnt;
szHostName: array[0..128] of Char;
BeginDelimit,EndDelimit:integer;
begin
if RadioButton1.Checked then
begin
try
try
if WSAStartup($101, WSAData) <> 0 then
raise Exception.Create('Cannot initialize WSA');
try
if GetHostName(szHostName, 128) <> SOCKET_ERROR then
begin
Phe := GetHostByName(szHostName);
if Assigned(Phe) then
begin
addr.sin_addr.S_addr := longint(plongint(Phe^.h_addr_list^)^);
Result := inet_ntoa(addr.sin_addr);
end;
end;
finally
WSACleanup;
end;
except
on e:Exception do begin
Result:='Error: '+e.Message;
raise;
end else
raise;
end;
finally
//StaticText1.Caption:='Automatic Ip detection: '+Result;
end;
end;
if RadioButton2.Checked then
begin
Try
HTMLSource:=IdHTTP1.Get('http://checkip.dyndns.org/');
delete(HTMLSource,1,pos(':',HTMLSource)+1);
delete(HTMLSource,pos('<',HTMLSource),80);
result:=HTMLSource;
Except
// Result:=false;
end;
end;
if RadioButton3.Checked then
Try
result:=IdHTTP1.Get('http://filezilla.sourceforge.net/misc/ip.php');
Except
// Result:=false;
end;
if RadioButton4.Checked then
begin
Try
HTMLSource:= IdHTTP1.Get('http://www.showmyip.com/fr/'); //On demande le contenu de la page et on le récupère dans HTMLSource
BeginDelimit:=length(Copy(HTMLSource,1, Pos('Internet',HTMLSource)+ 9 ) );//);76 ,77
EndDelimit:=length(Copy(HTMLSource,Pos('-->',HTMLSource)-1,Length(HTMLSource)));
Result:=Copy(HTMLSource,BeginDelimit,Length(HTMLSource)-BeginDelimit-EndDelimit+1); //On extrait l'adresse IP de HTMLSource
Except
// Result:=false;
end;
end;
IPServer.Text:=Result;//'Automatic Ip detection: '
end;
@+
jlen
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 28 juil. 2006 à 21:17
bonsoir
pour le cheval de Troie les anti virus le bloque (encore faut-il en avoir un et qu'il soit à jour mais pour les anxieux je modifierai la fonction getlocalIP en proposant 4 sites au choix:
function TFServer.GetLocalIp: string;
var HTMLSource:string;
wsaData: TWSAData;
addr: TSockAddrIn;
Phe: PHostEnt;
szHostName: array[0..128] of Char;
BeginDelimit,EndDelimit:integer;
begin
if RadioButton1.Checked then
begin
try
try
if WSAStartup($101, WSAData) <> 0 then
raise Exception.Create('Cannot initialize WSA');
try
if GetHostName(szHostName, 128) <> SOCKET_ERROR then
begin
Phe := GetHostByName(szHostName);
if Assigned(Phe) then
begin
addr.sin_addr.S_addr := longint(plongint(Phe^.h_addr_list^)^);
Result := inet_ntoa(addr.sin_addr);
end;
end;
finally
WSACleanup;
end;
except
on e:Exception do begin
Result:='Error: '+e.Message;
raise;
end else
raise;
end;
finally
//
end;
end;
if RadioButton2.Checked then
begin
Try
HTMLSource:=IdHTTP1.Get('http://checkip.dyndns.org/');
delete(HTMLSource,1,pos(':',HTMLSource)+1);
delete(HTMLSource,pos('<',HTMLSource),80);
result:=HTMLSource;
end;
Except
// Result:=false;
end;
if RadioButton3.Checked then
Try
result:=IdHTTP1.Get('http://filezilla.sourceforge.net/misc/ip.php');
//Dommage car la procédure était particulièrement simple!!!
Except
// Result:=false;
end;
if RadioButton4.Checked then// ce site m'a été proposé par francky
begin
Try
HTMLSource:= IdHTTP1.Get('http://www.showmyip.com/fr/'); //On demande le contenu de la page et on le récupère dans HTMLSource
BeginDelimit:=length(Copy(HTMLSource,1, Pos('Internet',HTMLSource)+ 9 ) );//);76 ,77
EndDelimit:=length(Copy(HTMLSource,Pos('-->',HTMLSource)-1,Length(HTMLSource)));
Result:=Copy(HTMLSource,BeginDelimit,Length(HTMLSource)-BeginDelimit-EndDelimit+1); //On extrait l'adresse IP de HTMLSource
Except
// Result:=false;
end;
end;
IPServer.Text:=Result;//'Automatic Ip detection: '+
end;
@+
jlen
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 28 juil. 2006 à 13:26
Bonjour Jlen100,
Concernant le module "Web", j'ai modifié la fonction de récupération de l'IP afin d'éviter de passer par le site qui communique un cheval de troie, soit l'adresse :(http://filezilla.sourceforge.net/misc/ip.php).
@+
Cincap
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 24 juil. 2006 à 17:01
j'ai ajouté le choix de la webcam
@+
jlen
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 23 juil. 2006 à 17:52
salut cincap,
Bon ce n'est pas normal, mais je vois de quoi cela vient: pour les tests j'ai forcé le choix sur la première caméra présente et je n'ai pas sauvegarder en fichier ini je corrige cela et je reposte
petite précision en indy9 si l'icone n'est pas présent cela plante je vais donc récupérer la fonction ServeFile de la version développée pour Indy 10 qui ne présente pas ce bug
@+
jlen
cincap
Messages postés460Date d'inscriptiondimanche 5 décembre 2004StatutMembreDernière intervention 6 avril 20092 23 juil. 2006 à 17:39
Salut Jlen100,
Encore une fois Bravo, décidément tu n'arrêtes pas de nous surprendre.
Dans le projet actuel, je ne sais choisir qu'une de mes deux caméras, peut-être normal ?
Sinon le code est assez fluide.
Cincap alias Max
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 23 juil. 2006 à 15:35
voila qui est fait la version INDY 10 est disponnible
bonne prog
@+
jlen
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 23 juil. 2006 à 10:31
salut matt merci pour le commentaire.
j'en profite pour informer que la version INDY sra prête dans la journée.
C'est comme d'habitude des unités qui ont disparues ou ont été renommées, des propirétés introuvables et la fonction ServeFile qu'il a fallu recréer la M.. quoi!! Enfin je suis en train de finir les tests et ça devrait rouler
@+
jlen
Matt 261
Messages postés1173Date d'inscriptionmercredi 2 novembre 2005StatutMembreDernière intervention10 septembre 20113 23 juil. 2006 à 10:21
Excellent ! tout bonnement excellent ! Bravo à vous deux.
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 23 juil. 2006 à 09:21
le bug est corrigé mais j'avoue humblement ne pas avoir compris pourquoi ce memo disparraissait
jlen100
Messages postés1606Date d'inscriptionsamedi 10 juillet 2004StatutMembreDernière intervention25 juillet 201413 23 juil. 2006 à 02:50
je viens de m'appercevoir d'un bug assez bizarre: lorsque le memo du tabsheet est masqué il n'est pas toujours mis à jour ce qui provoque en plus une erreur d'exécution lors de la sortie du programme (handle invalide) je corrigerai cela demain (enfin je remettrais ce memo hors du tabsheet.
10 mars 2007 à 00:31
pour le format HTML c'est effectivement une faute de frappe de ma part
Mea culpa
@+
jlen
6 mars 2007 à 09:34
@ Matt261, après une vérification, en fait le format HTML ou HTM sont Ok, nethacker a donc raison si lui même n'avait pas commis l'erreur d'écrire "HMTL" qui est un format qui n'existe pas.
Par contre avec FrontPage, j'ai créé une page de test avec le format HTLM et il n'est pas reconnu par IE7.
Julen100 à peut être aussi fourché sur le nom.
Cela ne gène en rien la qualité de la source.
@+,
Cincap
5 mars 2007 à 18:51
le HTLM étant moins connu que le HTML, je pense que c'est simplement une erreur de la part de nethacker.
@+
Matt
5 mars 2007 à 18:44
A ma connaissance, c'est bien le format HTLM ou HTM qui sont valides dans ce cas.
JLEN100 a raison, je ne comprends donc pas ton intervention avec un supposé format HMTL.
@+,
Cincap
5 mars 2007 à 18:31
ta source est vraiment superbe juste un tout petit probleme !
dans la description principalement un mot dans le deuxieme paragraphe , première phrase !
a force d'ecrire vite t'a ecrit htlm au lieu de hmtl !
a part ca y'a rien à dire !
11 nov. 2006 à 15:38
8 sept. 2006 à 20:43
8 sept. 2006 à 20:08
8 sept. 2006 à 13:21
8 sept. 2006 à 06:36
Encore une nouvelle fois tu te surpasses dans cette version.
Bravo pour cette réalisation et pour l'ensemble de tes réalisations au profit de tous.
Cincap alias Max
26 août 2006 à 13:47
suite à plusieurs demandes j'ai ajouté la possibilité de pouvoir transmettre les images à un site WEB ceci m'a amené à faire une zone publque et une zone privée j'en ai profité pour y ajouter la possibilité de commander le PC à distance Il y aun peu de HTML et de javascript désolé pour cette entorse à DELPHI!!
@+
jlen
29 juil. 2006 à 10:54
dans le Formclose rajouter:
for i:=1 to 4 do
begin
if TRadioButton(FindComponent('RadioButton'+inttostr(i))).Checked then break;
end;
.
.
.
fIniFile.WriteInteger('Internet', 'ModeIP',i);
et dans le formCreate:
i:= fIniFile.ReadInteger('Internet', 'ModeIP',1);
TRadioButton(FindComponent('RadioButton'+inttostr(i))).Checked:=true;
@+
jlen
29 juil. 2006 à 10:38
@+
jlen
29 juil. 2006 à 09:54
function TFServer.GetLocalIp: string;
var HTMLSource:string;
wsaData: TWSAData;
addr: TSockAddrIn;
Phe: PHostEnt;
szHostName: array[0..128] of Char;
BeginDelimit,EndDelimit:integer;
begin
if RadioButton1.Checked then
begin
try
try
if WSAStartup($101, WSAData) <> 0 then
raise Exception.Create('Cannot initialize WSA');
try
if GetHostName(szHostName, 128) <> SOCKET_ERROR then
begin
Phe := GetHostByName(szHostName);
if Assigned(Phe) then
begin
addr.sin_addr.S_addr := longint(plongint(Phe^.h_addr_list^)^);
Result := inet_ntoa(addr.sin_addr);
end;
end;
finally
WSACleanup;
end;
except
on e:Exception do begin
Result:='Error: '+e.Message;
raise;
end else
raise;
end;
finally
//StaticText1.Caption:='Automatic Ip detection: '+Result;
end;
end;
if RadioButton2.Checked then
begin
Try
HTMLSource:=IdHTTP1.Get('http://checkip.dyndns.org/');
delete(HTMLSource,1,pos(':',HTMLSource)+1);
delete(HTMLSource,pos('<',HTMLSource),80);
result:=HTMLSource;
Except
// Result:=false;
end;
end;
if RadioButton3.Checked then
Try
result:=IdHTTP1.Get('http://filezilla.sourceforge.net/misc/ip.php');
Except
// Result:=false;
end;
if RadioButton4.Checked then
begin
Try
HTMLSource:= IdHTTP1.Get('http://www.showmyip.com/fr/'); //On demande le contenu de la page et on le récupère dans HTMLSource
BeginDelimit:=length(Copy(HTMLSource,1, Pos('Internet',HTMLSource)+ 9 ) );//);76 ,77
EndDelimit:=length(Copy(HTMLSource,Pos('-->',HTMLSource)-1,Length(HTMLSource)));
Result:=Copy(HTMLSource,BeginDelimit,Length(HTMLSource)-BeginDelimit-EndDelimit+1); //On extrait l'adresse IP de HTMLSource
Except
// Result:=false;
end;
end;
IPServer.Text:=Result;//'Automatic Ip detection: '
end;
@+
jlen
28 juil. 2006 à 21:17
pour le cheval de Troie les anti virus le bloque (encore faut-il en avoir un et qu'il soit à jour mais pour les anxieux je modifierai la fonction getlocalIP en proposant 4 sites au choix:
function TFServer.GetLocalIp: string;
var HTMLSource:string;
wsaData: TWSAData;
addr: TSockAddrIn;
Phe: PHostEnt;
szHostName: array[0..128] of Char;
BeginDelimit,EndDelimit:integer;
begin
if RadioButton1.Checked then
begin
try
try
if WSAStartup($101, WSAData) <> 0 then
raise Exception.Create('Cannot initialize WSA');
try
if GetHostName(szHostName, 128) <> SOCKET_ERROR then
begin
Phe := GetHostByName(szHostName);
if Assigned(Phe) then
begin
addr.sin_addr.S_addr := longint(plongint(Phe^.h_addr_list^)^);
Result := inet_ntoa(addr.sin_addr);
end;
end;
finally
WSACleanup;
end;
except
on e:Exception do begin
Result:='Error: '+e.Message;
raise;
end else
raise;
end;
finally
//
end;
end;
if RadioButton2.Checked then
begin
Try
HTMLSource:=IdHTTP1.Get('http://checkip.dyndns.org/');
delete(HTMLSource,1,pos(':',HTMLSource)+1);
delete(HTMLSource,pos('<',HTMLSource),80);
result:=HTMLSource;
end;
Except
// Result:=false;
end;
if RadioButton3.Checked then
Try
result:=IdHTTP1.Get('http://filezilla.sourceforge.net/misc/ip.php');
//Dommage car la procédure était particulièrement simple!!!
Except
// Result:=false;
end;
if RadioButton4.Checked then// ce site m'a été proposé par francky
begin
Try
HTMLSource:= IdHTTP1.Get('http://www.showmyip.com/fr/'); //On demande le contenu de la page et on le récupère dans HTMLSource
BeginDelimit:=length(Copy(HTMLSource,1, Pos('Internet',HTMLSource)+ 9 ) );//);76 ,77
EndDelimit:=length(Copy(HTMLSource,Pos('-->',HTMLSource)-1,Length(HTMLSource)));
Result:=Copy(HTMLSource,BeginDelimit,Length(HTMLSource)-BeginDelimit-EndDelimit+1); //On extrait l'adresse IP de HTMLSource
Except
// Result:=false;
end;
end;
IPServer.Text:=Result;//'Automatic Ip detection: '+
end;
@+
jlen
28 juil. 2006 à 13:26
Concernant le module "Web", j'ai modifié la fonction de récupération de l'IP afin d'éviter de passer par le site qui communique un cheval de troie, soit l'adresse :(http://filezilla.sourceforge.net/misc/ip.php).
@+
Cincap
24 juil. 2006 à 17:01
@+
jlen
23 juil. 2006 à 17:52
Bon ce n'est pas normal, mais je vois de quoi cela vient: pour les tests j'ai forcé le choix sur la première caméra présente et je n'ai pas sauvegarder en fichier ini je corrige cela et je reposte
petite précision en indy9 si l'icone n'est pas présent cela plante je vais donc récupérer la fonction ServeFile de la version développée pour Indy 10 qui ne présente pas ce bug
@+
jlen
23 juil. 2006 à 17:39
Encore une fois Bravo, décidément tu n'arrêtes pas de nous surprendre.
Dans le projet actuel, je ne sais choisir qu'une de mes deux caméras, peut-être normal ?
Sinon le code est assez fluide.
Cincap alias Max
23 juil. 2006 à 15:35
bonne prog
@+
jlen
23 juil. 2006 à 10:31
j'en profite pour informer que la version INDY sra prête dans la journée.
C'est comme d'habitude des unités qui ont disparues ou ont été renommées, des propirétés introuvables et la fonction ServeFile qu'il a fallu recréer la M.. quoi!! Enfin je suis en train de finir les tests et ça devrait rouler
@+
jlen
23 juil. 2006 à 10:21
23 juil. 2006 à 09:21
23 juil. 2006 à 02:50