Delphi-PRAXiS
Seite 2 von 5     12 34     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Webcam Bild (JPG) per FTP-Uploaden (https://www.delphipraxis.net/97435-webcam-bild-jpg-per-ftp-uploaden.html)

internetnavigator 10. Aug 2007 15:30

Re: Webcam Bild (JPG) per FTP-Uploaden
 
Problem:

Es werden nur 9 Bilder gemacht, danach hört "es" einfach auf. Woran kann das liegen?
Muss ich jpegimage clearn?

internetnavigator 10. Aug 2007 16:42

Re: Webcam Bild (JPG) per FTP-Uploaden
 
Bitte irgend jemand muss das doch wissen! Bitte, ihr habt mir schon soviel geholfen: Ihr wisst es, ich nicht :(

-i-n-

chaosben 11. Aug 2007 07:46

Re: Webcam Bild (JPG) per FTP-Uploaden
 
Setz einfach mal einen Breakpoint(F5) in der Prozedur und lass die Anwendung laufen. Dann siehst du was passiert.

Wird die Prozedur vielleicht nicht mehr aufgerufen? Oder stimmt ein Bedingung nicht?

internetnavigator 11. Aug 2007 09:52

Re: Webcam Bild (JPG) per FTP-Uploaden
 
Kann es auch daran liegen, dass Timer1, und somit das capturen und saven der bilder, zu schnell hintereinander aufgerufen werden? (3sec delay).

edit: wäre es nicht besser, das ganze so aufubauen:?

Delphi-Quellcode:

var
x:integer = 0;
y:integer = 0;
begin
while x=y do begin
... //x,y sind immer 0, bis ich die Prozedur beenden will.
end;
end;
Was ich damit erreichen möchte ist klar: Es soll immer erst alles abgearbeitet werden, und nicht im Sekundentakt aufgerufen werden, da ich mir nicht sicher bin, ob Timer1 nicht schon neuaufruft, bevor die Schritte abgearbeitet sind. Ist das wirklich so?

Gruß i-n

ADD(11:23): Ich habe es mit der nie endenen While-Schleife versucht, Ergebnis: "Nicht genügend Speicher" wird mir "vorgeworfen" (Hab 1gb Ram) Woran liegts?

Hätte vielleicht jemand Lust und Zeit mir das per ICQ/MSN zu erklähren?

internetnavigator 11. Aug 2007 11:25

Re: Webcam Bild (JPG) per FTP-Uploaden
 
Ich denke, ich weiss woran es liegen könnte:

Delphi-Quellcode:
begin

handle := capCreateCaptureWindow('Video',ws_child+ws_visible, 0,
  0, 640, 480, Panel1.Handle, 1);
SendMessage(handle, WM_CAP_DRIVER_CONNECT, 0, 0); //verbinden: das wir bei jedem Aufruf vom Timer (1sec) mit aufgerufen
Delphi-Quellcode:

  SendMessage(handle, WM_CAP_SET_PREVIEWRATE, 30, 0); //setRate
  sendMessage(handle, WM_CAP_SET_OVERLAY, 1, 0);   //setOvl
  SendMessage(handle, wm_cap_set_preview, 1, 0); //prev
  SendMessage(handle, WM_CAP_EDIT_COPY, 1, 0 );//save Bitmap -> Clipboard
  Image1.Picture.Bitmap.LoadFromClipboardFormat(cf_BitMap,ClipBoard.GetAsHandle(cf_Bitmap),0); //Clipboard (Bitmap) -> Image1
//...
end;
Es könnte doch sein, wenn er sich zuoft Connected hat, dass er dann damit aufhört und dann auch den Rest (Bild in Image1 zeigen) nicht mehr ausführt.
Meine Frage: Wie kann ich das "Rote" nur einmal ausführen?

inherited 11. Aug 2007 13:23

Re: Webcam Bild (JPG) per FTP-Uploaden
 
:shock:
Du initialisierst die Kamera jedesmal neu...
Ruf die Prozedur dafür nur einmal auf, in den Speicher-Timer kommt dann nur das für das Speichern.
Und das Konstrukt mit x=y ist sinnlos! was du aber machen solltest ist, am Anfang des Timers diesen .enabled auf false und am ende wieder auf true zu setzen.

internetnavigator 11. Aug 2007 14:36

Re: Webcam Bild (JPG) per FTP-Uploaden
 
jep so habe ich das auchschon ausprobiert: In Form1.Create das Connecten zu Cam; und dann das saven in Timer, aber wenn ich das so versuche, dann hat er immer Probleme mir der var handle:THandle.

DGL-luke 11. Aug 2007 14:40

Re: Webcam Bild (JPG) per FTP-Uploaden
 
das handle musst du (form-)global deklarieren.

internetnavigator 11. Aug 2007 15:39

Re: Webcam Bild (JPG) per FTP-Uploaden
 
ich habe es hier deklariert:
Delphi-Quellcode:
//...
public
    { Public declarations }
  end;

var
  Form1: TForm1;
  handle:Thandle;

const
//...
Aber es kommt immer wieder dieser Fehler:
Zitat:

[Pascal Error] cap_u.pas(70): E2129 Cannot assign to a read-only property
zur weiteren Erklährung: in Line 70 steht:
Delphi-Quellcode:
handle := capCreateCaptureWindow('Video',ws_child+ws_visible, 0,0, 640, 480, Panel1.Handle, 1);

DGL-luke 11. Aug 2007 15:48

Re: Webcam Bild (JPG) per FTP-Uploaden
 
Jop, du kommst hier in konflikt mit TForm1.Handle. Nenn deine Variable lieber "CamHandle".


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:05 Uhr.
Seite 2 von 5     12 34     Letzte »    

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