Arsip: Nanya : Invalid Window Handle

more 17 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 17 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 17 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 17 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 17 years ago
cyber_hecker
nah... ternyata kamu pinter juga tox2wow :D
pinter gitu kok malu-malu mo nunjuk in wakakaka :D

more 17 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 17 years ago
cyber_hecker
wakakakaka :D.....
gue di panggil mas ama anak kuliahan... :P keren...
gini-gini gue masih sweetseventeen lagi wakakakak :D

more 17 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 14 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 14 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 2 years ago - PascalTalk #5: UX: Research, Design and Engineer
by LuriDarmawan in Tutorial & Community Project more 2 years ago - PascalTalk #4: Obrolan Ringan Seputar IT
by LuriDarmawan in Tutorial & Community Project more 2 years ago - PascalTalk #2: Membuat Sendiri SMART HOME
by LuriDarmawan in Tutorial & Community Project more 2 years ago - PascalTalk #3: RADically Fast and Easy Mobile Apps Development with Delphi
by LuriDarmawan in Tutorial & Community Project more 2 years ago - PascalTalk #1: Pemanfaatan Artificial Intelligence di Masa Covid-19
by LuriDarmawan in Tutorial & Community Project more 2 years ago - Tempat Latihan Posting
by LuriDarmawan in OOT more 3 years ago - Archive
- Looping lagi...
by idhiel in Hal umum tentang Pascal Indonesia more 10 years ago - [ask] koneksi ke ODBC user Dsn saat runtime dengan ado
by halimanh in FireBird more 10 years ago - Validasi menggunakan data tanggal
by mas_kofa in Hal umum tentang Pascal Indonesia more 10 years ago
Random Topic
- Jaket status (onDelivery Process)
by yayaretina in Tutorial & Community Project more 13 years ago - rubah warna gambar berdasarkan sebuah nilai
by coolmib in Multimedia & Graphic Enhancement more 15 years ago - Penulisan Skrip SQL
by delphy in Enginering more 17 years ago - [saran] Kolaborasi antar Delphi-ID.org ama Delphi-ID.TK
by Manz in Hal umum tentang Pascal Indonesia more 12 years ago - [ask] tombol, mikrokontroller, assembler dgn Delphi
by cimprodot05 in Network, Files, I/O & System more 11 years ago - cara mengkonvert tabel dari currency ke string
by pinguinz in Tutorial & Community Project more 15 years ago - [ASK ]Size Form Aplikasi?
by pai_chan in Tip n Trik Pemrograman more 14 years ago - Cannot Find Implementation of Method TLMChange ?
by hermawan-dki in Tip n Trik Pemrograman more 15 years ago - delphi4Php
by skh_cay in Kritik & Saran more 14 years ago - cara nyimpan data
by putukaca in onLinux more 16 years ago