Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Da li je neko imao sličan problem sa Delphi 6 programom i XP-om?

[es] :: Pascal / Delphi / Kylix :: Da li je neko imao sličan problem sa Delphi 6 programom i XP-om?

[ Pregleda: 3332 | Odgovora: 12 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

ITman
Aleksandar
Consultant Business Inteligence
Nemacka

Član broj: 20670
Poruke: 72
212.200.116.*



Profil

icon Da li je neko imao sličan problem sa Delphi 6 programom i XP-om?02.12.2004. u 18:28 - pre 236 meseci
Situacija: Imamo jednu formu koja ima DBGrid gde su putanje video zapisa (.avi), na OnClick događaju DBGrida imamo kod koji kaže:ako je selektovano polje Path_V onda enable-uj dugme ''Brisanje'', a na OnDoubleClick imam sličan kod sa dodatkom da se otvori nova forma koja ima WindowsMediaPlayer ActivX komponentu koja pušta odabrani film pomoću koda u OnShow event-u forme.

Problem: Sve to lepo radi na četiri PC-ja sa XP Pro OS-om ali na petom (za koji je program namenjen) ne radi! Kada kliknem na DBGrid ne izvršava se procedura (tj. ne otključava btnDelete) a takođe ne radi ni event OnDoubleClick DbGrid-a (ne pušta film u novom prozoru) + ne prijavljuje gresku + ne skuca program + sve ostale funkcije programa rade normalno!?

Imali koga da pomogne sa nekim tip-om?
 
Odgovor na temu

Rapaic Rajko
Bgd

Član broj: 4105
Poruke: 810
217.119.242.*



+62 Profil

icon Re: Da li je neko imao sličan problem sa Delphi 6 programom i XP-om?03.12.2004. u 14:18 - pre 236 meseci
Prepostavljam da je ovo klasican slucaj koriscenja 'bezimenog' try-except-end bloka. Negde se desava greska, ali posto u except delu NEMA NISTA (no code) stvar izgleda misteriozna. Savet: ili stavi ShowMessage u except deo i ispisi javno poruku greske, ili izbaci try-except-end i pusti da exception dodje do Application exception handler-a. U ovom drugom slucaju zakaci event Application.OnException i tu ispisi gresku u neki logger fajl. U ovom drugom slucaju, user nece nista videti, ali ces ti moci da 'vratis film' i eventualno resis problem.

Rajko

P.S. Ako se ispostavi da STVARNO nema greske, onda tu ima malo voodoo-a by XP. I inace je XP sacuvaj boze.
 
Odgovor na temu

morlic
Milos Orlic
Beograd

Član broj: 6081
Poruke: 735
*.39.eunet.yu.



+1 Profil

icon Re: Da li je neko imao sličan problem sa Delphi 6 programom i XP-om?03.12.2004. u 16:04 - pre 236 meseci
Da dodam na Rajkovo izlaganje:

Dodaj showmessage(ili neki vid logovanja) u event metodima grida kako bi znao sigurno da nisu pozvani.

Da li koristis DBGrid koji dolazi uz Delphi ili je neka dodatna komponenta?


P.S. Ne bih optuzio WinXP tako lako za tu vrstu problema.
 
Odgovor na temu

ITman
Aleksandar
Consultant Business Inteligence
Nemacka

Član broj: 20670
Poruke: 72
212.200.116.*



Profil

icon Re: Da li je neko imao sličan problem sa Delphi 6 programom i XP-om?03.12.2004. u 17:57 - pre 236 meseci
Hvala Vam na pokušaju, ali ne nema try catch blokova...Prvo sam mislio da je do verzije WMPlayer-a, pošto sam na mom kompu importovao WMP10 a tom kompu gde ne radi je bio WMP9, pa sam i tamo stavio novu verziju i opet isti problem. Znaci nije to, ali fora je što meni neće da radi onclick event na običnom DBGridu, tek kada bi se odradio taj event otvorila bi se nova forma gde je WMPlayer, znači DBGrid je problem?! I to samo na jednom računaru dok na četiri druga radi!! Pitam se šta bi to moglo biti....ali što je još čudnije imam ja još DBGridova u istom programu i oni ne prave problem na OnClick događajima i rade na svim kompovima....Možda da napravim formu i kod iz početka?
 
Odgovor na temu

morlic
Milos Orlic
Beograd

Član broj: 6081
Poruke: 735
*.118.EUnet.yu.



+1 Profil

icon Re: Da li je neko imao sličan problem sa Delphi 6 programom i XP-om?03.12.2004. u 20:04 - pre 236 meseci
Vidi, prvo treba utvrditi da sta se od dogadjaja poziva a sta ne...Da li je wmplayer problem to mozes da proveris na drugi nacin. To je sada najbitnija stvar.

Ako se na tvojoj masini poziva OnClick, znaci da mora i na drugim. Pitanje je sta jos imas od prateceg koda koji mozda ima neku zavisnost koja se ispoljava bas na toj problematicnoj masini.

Kada stavis proveru za dogadjaj javi rezultat pa da vidimo.
 
Odgovor na temu

Srki_82
Srdjan Tot
Me @ My Home
Ljubljana

Član broj: 28226
Poruke: 1403
82.208.201.*

ICQ: 246436949


+10 Profil

icon Re: Da li je neko imao sličan problem sa Delphi 6 programom i XP-om?04.12.2004. u 00:35 - pre 236 meseci
Postuj OnClick dogadjaj za tu problematicnu kontrolu da uradimo review koda ;)
 
Odgovor na temu

ITman
Aleksandar
Consultant Business Inteligence
Nemacka

Član broj: 20670
Poruke: 72
212.200.116.*



Profil

icon Re: Da li je neko imao sličan problem sa Delphi 6 programom i XP-om?04.12.2004. u 14:26 - pre 236 meseci
Tu se nalazi kod oba Event-a i kod dugmeta btnDelete:

procedure TfrmSnimciGrid.VideoGridCellClick(Column: TColumn);
begin
If VideoGrid.SelectedField.FullName='Path_v' then
begin
edtDelete.Text:=VideoGrid.SelectedField.AsString;
btnDelete.Enabled:=true;
end;
end;

procedure TfrmSnimciGrid.btnDeleteClick(Sender: TObject);
begin
if FileExists(edtDelete.Text) then
begin
if MessageDlg('Da li stvarno zelite da izbrisete ' + ExtractFileName(edtDelete.Text) + '?',mtConfirmation,[mbYes, mbNo],0)=IDYes then DeleteFile(edtDelete.Text);
qDelete.Parameters.ParamValues['putanja']:=edtDelete.Text;
qDelete.ExecSQL;
end
else Showmessage ('Fajl nije izbrisan - ne nalazi se na disku!');

end;


procedure TfrmSnimciGrid.VideoGridDblClick(Sender: TObject);
Var VP:TfrmVideoPlayer;
begin
If VideoGrid.SelectedField.FullName='Path_v' then
begin
PathV.Text:=VideoGrid.SelectedField.AsString;
if not FileExists(PathV.text) then
begin
Showmessage('Fajl ne postoji na kompjuteru, ubacite odgovarajuci disk u CD ROM sa fajlom:'+pathV.Text);
btnUcitajVideo.Visible:=true;
end
else
begin
PathV.SelectAll;
PathV.CopyToClipboard;
VP:=TfrmVideoPlayer.create(frmSnimciGrid);
VP.show;
end;
end;
end;
 
Odgovor na temu

Srki_82
Srdjan Tot
Me @ My Home
Ljubljana

Član broj: 28226
Poruke: 1403
82.208.201.*

ICQ: 246436949


+10 Profil

icon Re: Da li je neko imao sličan problem sa Delphi 6 programom i XP-om?05.12.2004. u 00:51 - pre 236 meseci
Deluje kao da je sve ok. Mozda je na tom Win na kojem nece da radi program DblClick podesen na jako brzo u Control Panel-u pa nikad ni ne detektuje DblClick?
 
Odgovor na temu

morlic
Milos Orlic
Beograd

Član broj: 6081
Poruke: 735
*.230.eunet.yu.



+1 Profil

icon Re: Da li je neko imao sličan problem sa Delphi 6 programom i XP-om?05.12.2004. u 01:32 - pre 236 meseci
Ne znam da li si probao ono sto sam ti rekao, ali usput pogledaj da ti nije postavljeno u opcijama grida dgRowSelect jer tada se ne desava onclick i ondbclick onako kako si ti zamislio.
 
Odgovor na temu

neor
Nenad Orlovic

Član broj: 26828
Poruke: 74
*.metrohive.net.



Profil

icon Re: Da li je neko imao sličan problem sa Delphi 6 programom i XP-om?05.12.2004. u 08:21 - pre 236 meseci
Pogledaj da nemas OnClick na Formu ili na cemu ti vec stoji grid. Da li imas definisan neki windows message handler koji je mozda uhvatio daj click?
 
Odgovor na temu

ITman
Aleksandar
Consultant Business Inteligence
Nemacka

Član broj: 20670
Poruke: 72
212.200.116.*



Profil

icon Re: Da li je neko imao sličan problem sa Delphi 6 programom i XP-om?05.12.2004. u 14:55 - pre 236 meseci
Ovako: dgRowSelect mi je true - zato što sam hteo da mi je ceo red označen, a pre toga u formi, nakon filtriranja Ado Table-a koj puni ovaj DbGrid, imam VideoGrid.SelectedField.Index:=1 - time sam odredio da je polje , ma na koji deo reda korisnik kliknuo, bude polje "Path_V" + jos to proveravam uslovom IF koji se moze videti u post-ovanom kodu. Kazem Vam stos je u tome da ovo ne radi bas na racunaru na kome je predvidjeno a testirao sam program na jos cetiri masine sa istim OS-om i sve sljaka! Inace ne verujem da je do podesavanja brzine kliktanja misa jer meni ne radi ni OnClick ni OnDouble Click na tom (Murpy law) kompu (naravno samo u mom programu).

p.s. U cemu je stos ako je ukljucen dgRowSlelect zasto se ne bi odigravali dogadjaji OnClick na nacin koji sam zamislio?
 
Odgovor na temu

morlic
Milos Orlic
Beograd

Član broj: 6081
Poruke: 735
*.106.eunet.yu.



+1 Profil

icon Re: Da li je neko imao sličan problem sa Delphi 6 programom i XP-om?05.12.2004. u 18:15 - pre 236 meseci
Tu je znaci problem, kao sto kaze dokumentacija:

Citat:

Set SelectedField to move focus to a particular field in the grid. Read SelectedField to obtain access to the field component for the currently selected cell. If there is not currently selected cell, SelectedField is nil (Delphi) or NULL (C++). For example, when an entire row is selected, SelectedField is nil or NULL.


To sto ti pokusavas nije predvidjeno da radi tako kako si ti zamislio, jednostavno tako su uradili, nije garantovano da ce SelectedField raditi ako je dgRowSelect postavljen na true, sto si ti u praksi i osetio.

Znaci te dve stvari se potiru, grid smatra da ne mozes da dobijes informaciju koja kolona je izabrana ukoliko je ceo red selektovan. To sto negde radi, a negde ne je druga stvar i vezana je za (los) kvalitet posla koji su odradili Borlandovi ljudi. Ako te interesuje pogledaj DB.pas gde se desava sve to sto tebe zanima.

Plus imas i logicki problem u programu. Ako si vec fiksirao koja kolona te zanima zasto uopste postavljas selected index? Znaci:

Revizija tvog koda za OnClick (za dalje ces se snaci):

Code:

procedure TfrmSnimciGrid.VideoGridCellClick(Column: TColumn);
begin
  with  VideoGrid.DataSource.DataSet do
  begin
    if IsEmpty then 
       exit; // Izlazimo ako je dataset prazan
    edtDelete.Text:= FieldByName('Path_v').AsString;
    btnDelete.Enabled:= true;
  end;
end;


Imas tu jos jedan sitniji problem. Ako je dgRowSelect true onda se posle OnDbClick-a desava OnClick, ali mislim da to nece biti strasno u kontekstu onoga sto ti radis na onclick.

Sve bi ovo bilo reseno ranije da si ti uradio na prvom mestu ono sto sam ti rekao: postavio logovanje dogadjaja i odmah ustanovio da se dogadjaji pozivaju, ali da ostatak koda ne radi kako treba.
 
Odgovor na temu

ITman
Aleksandar
Consultant Business Inteligence
Nemacka

Član broj: 20670
Poruke: 72
212.200.116.*



Profil

icon Re: Da li je neko imao sličan problem sa Delphi 6 programom i XP-om?05.12.2004. u 23:29 - pre 236 meseci
Hvala na ispravci! Sutra cu probati na spornoj masini, moracu vise paznje da posvetim dokumentaciji u ovakvim slucajevima. Thanks!
 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: Da li je neko imao sličan problem sa Delphi 6 programom i XP-om?

[ Pregleda: 3332 | Odgovora: 12 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.