Arsip: dll lagi

 
user image
more 18 years ago

brodien

halo semua......... ane lagi cobak form dlm dll.......... 1 form di load lewat dll udah bisa tuh.... tapi pas aku may buka form lagi dari form yang pertama itu mesti keluar error aces memory in addrs.............. kenapa ya....
user image
more 18 years ago

DelphiExpert

Perlu liat source code mu untuk mengetahui masalahnya, ok. :)
user image
more 18 years ago

brodien

dll file== library lihatmc; uses sharemem, SysUtils, Classes, lihatmcdll in 'lihatmcdll.pas' {Formlihatmc}, procedure Showlihatmc;stdcall; begin Formlihatmc :=TFormlihatmc.Create(nil); Formlihatmc.Show; end; exports showlihatmc; form lihat mc==//form yang di buka dllfile unit lihatmcdll; . . . procedure TFormlihatmc.Kerjakan1Click(Sender: TObject);//buka form satunyalagi begin formkerjakanmc.showmodal; //showkerjakanmc; end; error acces violation in address ....... in module 'lihatmc.dll' read of address...... //// makasih
user image
more 18 years ago

kaka-delphi

Klo dilihat dari errornya, anda mencoba memanggil objek yang belum di buat. Ilustrasinya seperti ini: Misal, anda membuat Aplikasi MDI dan membuat form anak. Nah untuk memanggil form anak khan biasanya dipanggil dengan membuat / create form anak tersebut, misal:

frmAnak:=TfrmAnak.Create(nil);
frmAnak.Show;
Di Form anak kita mempunyai suatu fungsi / rutin2 yang dikerjakan. Misal:

procedure frmAnak.ubahCaption(sNilai: string);
begin
  Self.Caption:= sNilai;
end;
Nah mungkin secara tidak sengaja, dari fom induk kita memanggil fungsi tersebut :

frmAnak.ubahCaption('Form Anak');
tanpa membuat / create objek formnya dulu. Pada intinya, kita akan mengakses objek yang belum dibuat. Coba cek lagi source code anda, kemungkinan kasusnya seperti ini. ;) CMIIW
user image
more 18 years ago

DelphiExpert

Hmmm, keliatannya begitu... Coba deh cek lagi constructor form Anda...
user image
more 18 years ago

masdi2t

procedure TFormlihatmc.Kerjakan1Click(Sender: TObject);//buka form satunyalagi begin formkerjakanmc.showmodal; //showkerjakanmc; end; ====== bagian ini yang bikin Acc. Viol.

formkerjakanmc.showmodal;
mungkin seharusnya:

if not Assigned(formkerjakanmc) then
  formkerjakanmc := Tformkerjakanmc.Create(nil);  // nyontek yg diatas
formkerjakanmc.showmodal;
[/pas]
user image
more 18 years ago

brodien

ehlo lagi buka form nya udah bisa........... but gak bisa di tutup .. alias pas program exe nya di close pasti ada error ......... klo di delphi klo mau ngetrace process pake apa ya ... biar ketahuan komponent apa di form mana ..yang nyangkut ... .?????????? makasih
user image
more 18 years ago

deLogic

wah kalo masalah tracing, saya biasa pake EurekaLog.. tapi itu komersil.. alias berbayar... report errornya lumayan, bisa sampai form / unit / linenumber yang bikin error..
user image
more 18 years ago

masdi2t

untuk tracing bisa dipake fitur Trace Into (F-7), atau Step Over (F-8). ada juga fasilitas Watch (Ctrl+F5) untuk memonitor nilai variable selama eksekusi. coba yang ini untuk masalah tutup form. form ditampilkan dengan showmodal

if not Assigned(formkerjakanmc) then
  formkerjakanmc := Tformkerjakanmc.Create(nil);  // nyontek yg diatas
formkerjakanmc.showmodal;
formkerjakanmc.free;
form ditampilkan dengan show

if not Assigned(formkerjakanmc) then
  formkerjakanmc := Tformkerjakanmc.Create(nil);  // nyontek yg diatas
formkerjakanmc.show;
kemudian pada form itu sendiri (formkerjakanmc, red). tuliskan event OnClose dan OnDestroy sbb: OnClose

Action := caFree;
OnDestory

formkerjakanmc := nil;  (formkerjakanmc diganti dengan nama form)
semoga bisa membantu.
user image
more 18 years ago

brodien

sudah bisa om makasih ya.... ternyata yang biki error di xpman..nya ........................ pertanyaan berikutnya segera terbit :lol:
more ...
  • Pages:
  • 1
Share to
Local Business Directory, Search Engine Submission & SEO Tools FreeWebSubmission.com SonicRun.com