Arsip: Nanya : Invalid Window Handle
more 18 years ago
tox2wow
Mas2 Delphi-Id, mau nanya soal Error Message nih. Saya bikin aplikasi, terus saya pasangin komponen Page Control, saya bagi2 menjadi beberapa tab. Masalahnya, saat aplikasi saya run, dengan tab aktif adalah tab 0, pada saat berpindah ke tab lain, sering muncul pesan eror, "Cannot Create Window Context", dan saat aplikasi di terminate, muncul lagi Error "Error : 1400, Invalid Window Handle". Ada yang bisa nolongin saya ga, ngejelasin penyebab eksepsi tersebut ... tolong donk.....!!!
more 18 years ago
LuriDarmawan
mmm...
banyak faktor yg bisa mempengaruhi nih.
boleh lihat source-nya?
http://pascal-id.org/thread/unknown/17/view-old-thread/#45
more 18 years ago
tox2wow
Coding / Algoritmanya kira2 begini :
- Aplikasi client menggunakan IdTCPClient;
procedure TFClient.FormCreate(Sender: TObject);
begin
IdClient.WriteLn(NomorClient);
end;
- Aplikasi server menggunakan IdTCPServer :
procedure TFServer.IdServerConnect(AThread: TIdPeerThread);
var
S, IP : String;
begin
with AThread.Connection do
begin
IP := Binding.PeerIP;
S := ReadLn;
// tulis ke TMemo
MKonek.Lines.Append(FormatDateTime('hh:mm:ss', Time) + S);
MTransaksi.Lines.Add('Client ' + P + ' terkoneksi');
end;
end;
more 18 years ago
tox2wow
Setelah di ulik2, ternyata penyelesaiannya kaya gini :
- Error Invalid Window Handle, muncul saat :
[list:43e3a267cb] 1 :Properties awal List dari TMemo masih 0 (kosong). Penyelesaiannya, tambahkan 1 list kosong (menggunakan spasi) pada properties List dari TMemo, baru kemudian dilakukan prosedur Append / Add saat aplikasi di janlankan.[/list:u:43e3a267cb]
(Hmm, tapi kenapa kalo list awalnya 0 (kosong), harus muncul eksepsi ya ??? Aneh ...)
more 18 years ago
cyber_hecker
nah... ternyata kamu pinter juga tox2wow :D
pinter gitu kok malu-malu mo nunjuk in wakakaka :D
more 18 years ago
tox2wow
Wahh, bukannya mo nunjukin, mas Cyber, hhhee ... Gw lagi ngerjain Tugas AKhir, bikin Billing Warnet pake Indy. Tapi masih banyak bug-nya euy, salah satunya, ya yang Invalid Window Handle tersebut. Masa pas sidang nanti, saat lagi persentasi Error-nya muncul, wahh, bisa2 tamatnya taon depan nihhhh gw. hehhehe ....
more 18 years ago
cyber_hecker
wakakakaka :D.....
gue di panggil mas ama anak kuliahan... :P keren...
gini-gini gue masih sweetseventeen lagi wakakakak :D
more 18 years ago
tox2wow
Wahhh ... kalu masih sweetseventeen aja udah jago Delphi, gimana kalo udah kuliah ntar ya mas Cyber ??? Bisa2 mas Cyber bikin compiler Delphi baru nihhh, Delphi Hecker, hahahah ....
more 15 years ago
ohay24
saya juga mo nanya, knpa muncul "Error : 1400, Invalid Window Handle". saat form dclose/terminate.
saya bikin form1 sbg main form, sedangkan form2 available form:
1. form2 muncul sbntar trus hilang ketika nerima command dari TCPCllient, knpa ya?
2. klo pakai showmodal eksepsi diatas tetap muncul saat aplikasi di close?
procedure TForm1.IdTCPServer1Execute(AThread: TIdPeerThread);
var
sCommand:string;
begin
sCommand:=AThread.Connection.ReadLn;
if sCommand='Tampilkan' then
begin
Form2:=TForm2.Create(self);
Form2.Show;
end;
end;
more 15 years ago
DelphiExpert
Permasalah seputar Window Device Context (HDC) banyak disebabkan karena inisialisasi control belum dilakukan, bisa dikarenkan HWND belum dicreate, atau masalah seputar synchronisasi GUI dng main-thread (seperti kasus @ohay24).
1. HWND & HDC belum terbuat dikarenakan, SHOW_WINDOW / Visibility controls belum pernah dieksekusi sebagai syarat utama dilakukannya update device context (misal: control masih sembunyi di PageControl --> ini adalah bug dari TPageControl) --> utk mem-fix-kan secara manual / membuktikannya, sebelum melakukan "kegiatan" terhadap controls yg tersembunyi; klik dulu (open, di masing2) tab... biarkan mereka tampak terlebih dahulu. Kemudian lakukan proses biasanya, see: apakah masih muncul error atau tidak.
2. Yg kedua adalah penting diketahui: "Segala sesuatu yg berkaitan dng tampilan (misal: Memo1.Lines.Add, showing Forms, set caption dll) harus dilakukan dalam MainThread...
Kebanyakan kasus anda berkaitan dng Indy components Event yg kebanyakan dieksekusi dalam thread lain.
Untuk itu selalu lakukan synchronisasi saat melakukan update GUI. synchronisasi akan meng-eksekusi segala perintah dalam MainThread; yakni thread dimana GUI bekerja ;)
more ...
- Pages:
- 1
- 2
reply |
Report Obsolete
Last Articles
Last Topic
- PascalTalk #6: (Podcast) Kuliah IT di luar negeri, susah gak sih?
by LuriDarmawan in Tutorial & Community Project more 3 years ago - PascalTalk #5: UX: Research, Design and Engineer
by LuriDarmawan in Tutorial & Community Project more 3 years ago - PascalTalk #4: Obrolan Ringan Seputar IT
by LuriDarmawan in Tutorial & Community Project more 3 years ago - PascalTalk #2: Membuat Sendiri SMART HOME
by LuriDarmawan in Tutorial & Community Project more 3 years ago - PascalTalk #3: RADically Fast and Easy Mobile Apps Development with Delphi
by LuriDarmawan in Tutorial & Community Project more 3 years ago - PascalTalk #1: Pemanfaatan Artificial Intelligence di Masa Covid-19
by LuriDarmawan in Tutorial & Community Project more 3 years ago - Tempat Latihan Posting
by LuriDarmawan in OOT more 4 years ago - Archive
- Looping lagi...
by idhiel in Hal umum tentang Pascal Indonesia more 11 years ago - [ask] koneksi ke ODBC user Dsn saat runtime dengan ado
by halimanh in FireBird more 11 years ago - Validasi menggunakan data tanggal
by mas_kofa in Hal umum tentang Pascal Indonesia more 11 years ago
Random Topic
- Tentang Memo di Access
by bayu in Lain-lain more 15 years ago - What do you thing..
by yayaretina in OOT more 17 years ago - kesulitan fastreports preview
by dannyong1999 in Enginering more 18 years ago - Simpan dan Baca rumus Matematika
by kacungdelphi24 in Bedah Kasus more 16 years ago - Versi QuickReport di Delphi 7.0
by reminder2k1 in Reporting more 16 years ago - Tanya: Update MySQL di Delphi
by okiwi in MySQL more 14 years ago - gimn cara memasukkan hasil .exe dari delphi ke PHP
by hasrijal in Network, Files, I/O & System more 16 years ago - Datetime SQL Server 2000
by xproof in Tip n Trik Pemrograman more 15 years ago - program GCD pake GUI.. tolongin..
by mssetyawati in Hal umum tentang Pascal Indonesia more 17 years ago - convert DB grid to Excell
by rika in Hal umum tentang Pascal Indonesia more 18 years ago