slm arkadaslar
msde 1433 port kontrol etmek istiyorum ado baglanıyor ama scan port programında 1433-1434 gozukmuyor taratıgım zaman bunu kendi local bilgisayarımda yapıyorum sizce sorun nedir
bunu yapmamın acamacı open yada exec komutlarında once mssql servirin acık yada kapalı oldugumu (coklu kullanıcılı bir sistem olarak dusunun) eger port acık değilse 1 dak. geriye sayan bir form cıkarıp
baglantı saglanana kadar tekrarlaması sure bitiminde baglantıyı denemesi
msde 1433 port kontrol
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
logo bunu yapmış.server bağlantısı kesilir/servis durmuşsa,herhangi bir formu açmaya çalıştığında bir mesaj penceresinde senin ifade ettiğin gibi "1 dak. geriye sayan bir form cıkarıp baglantı saglanana kadar tekrarlaması sure bitiminde baglantıyı denemesi" yapıyor. bağlantı sağladığında programı kapatmadan kaldığın yerden devam ediyorsun.
ben de benzeri işlem için
yapmaya çalıştım,fakat program "if not frmGiris.ADOConnection1.Connected then begin" ifadesini görmüyor,sistem hep kendi "Bağlantı başarısız oldu" mesajını veriyor,servere bağlantı sağlayıp/servis çalıştırsan bile program,bir işlem yaptığında "Bağlantı başarısız oldu" mesajını vermeye devam ediyor.illaki programı kapatıp yeniden giriş yapmak gerekiyor.
ben henüz çözemedim.senin çözüm için bir önerin var mı?
kolay gelsin.
ben de benzeri işlem için
Kod: Tümünü seç
procedure TfrmSatis.SpeedButton1Click(Sender: TObject);
begin
if not frmGiris.ADOConnection1.Connected then begin
ShowMessage('bağlantı kesildi');
//---------------
//--------------
end;
frmListe.ShowModal;
end;
ben henüz çözemedim.senin çözüm için bir önerin var mı?
kolay gelsin.
Kod: Tümünü seç
adoquery.close;
adoquery.sql.text:='select ...';
try
adoquery.open;
except
if not frmGiris.ADOConnection1.Connected then begin
ShowMessage('bağlantı kesildi');
end;
if frmListe.ShowModal=mrok then
// frmliste formda baglantı varmı yokmu diye kontrol ediyorsun eger
//yoksa mrcancel diyorsun eger varsa mr ok diyorsun bagalntının olum //olmadıgınıda
//ADOConnection1.Connected:=false ;
//ADOConnection1.Connected:=true yapıp saglayabilirsin
adoquery.open;
end;
En son skyking tarafından 09 Nis 2007 07:25 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
Re: msde 1433 port kontrol
Kendine ait bir form dizayn etskyking yazdı:slm arkadaslar
msde 1433 port kontrol etmek istiyorum ado baglanıyor ama scan port programında 1433-1434 gozukmuyor taratıgım zaman bunu kendi local bilgisayarımda yapıyorum sizce sorun nedir
bunu yapmamın acamacı open yada exec komutlarında once mssql servirin acık yada kapalı oldugumu (coklu kullanıcılı bir sistem olarak dusunun) eger port acık değilse 1 dak. geriye sayan bir form cıkarıp
baglantı saglanana kadar tekrarlaması sure bitiminde baglantıyı denemesi
Bir timer iki button ve bir label koy.
formu shoowmodal ile çağır.
ve çağırırken timeri aktif et.
Timera active olduğu zaman
Timer da 1 nolu buttonun etiketini birerbirer geriye çağıran fonksiyon olsun ve eğer sıfır ise buttonu click etsin.
button clicke de bağlanması için gerekli kodları yaz.
Kod olarak yazmıyorum. Büyük ihtimalle mantığını bildikten sonra kod da yazarsın. iyi çalışmalar.
Re: msde 1433 port kontrol
sorun bunlar değil hocam sorunun kaynagını sormustum ama vazgeçtimLost Soul yazdı:Kendine ait bir form dizayn etskyking yazdı:slm arkadaslar
msde 1433 port kontrol etmek istiyorum ado baglanıyor ama scan port programında 1433-1434 gozukmuyor taratıgım zaman bunu kendi local bilgisayarımda yapıyorum sizce sorun nedir
bunu yapmamın acamacı open yada exec komutlarında once mssql servirin acık yada kapalı oldugumu (coklu kullanıcılı bir sistem olarak dusunun) eger port acık değilse 1 dak. geriye sayan bir form cıkarıp
baglantı saglanana kadar tekrarlaması sure bitiminde baglantıyı denemesi
Bir timer iki button ve bir label koy.
formu shoowmodal ile çağır.
ve çağırırken timeri aktif et.
Timera active olduğu zaman
Timer da 1 nolu buttonun etiketini birerbirer geriye çağıran fonksiyon olsun ve eğer sıfır ise buttonu click etsin.
button clicke de bağlanması için gerekli kodları yaz.
Kod olarak yazmıyorum. Büyük ihtimalle mantığını bildikten sonra kod da yazarsın. iyi çalışmalar.
2. mesajımda yazdım zaten çözümü
port tan sql server bulma işlemini yapamadım.fakat bu şekilde kontrol edebiliyorum:
sorguyu try-except içinde çalıştırıyorum.hata varsa yani servere bağlanamıyorsa "ADOConnection1.Errors.Count " daima 0 dan büyük bir değer dönderecektir.bu durumda form2 yi açıyorum.resimde logo'nun aynısı.
form2'de Listbox1 in itemsinde 10,9,8,7,6,5,4,3,2,1,0 sayıları var.Timer1 ile sayıları BitBtn1 in Caption'da gösteriyorum.counter değişkeni sıfırlayarak her seferinde bağlantıyı tekrarlıyorum.
belki sen,daha pratik bir yol bulabilirsin.
kolay gelsin;
sorguyu try-except içinde çalıştırıyorum.hata varsa yani servere bağlanamıyorsa "ADOConnection1.Errors.Count " daima 0 dan büyük bir değer dönderecektir.bu durumda form2 yi açıyorum.resimde logo'nun aynısı.
Kod: Tümünü seç
procedure TForm1.Button3Click(Sender: TObject);
begin
ADOQuery1.close;
ADOQuery1.sql.text:='select * from BOLUM';
try
ADOQuery1.Open;
except
if (ADOConnection1.Errors.Count > 0) then
form2.ShowModal;
end;
end;
Kod: Tümünü seç
public
{ Public declarations }
counter:integer;
end;
Kod: Tümünü seç
procedure TForm2.FormShow(Sender: TObject);
var i:integer;
begin
for i:=10 downto 0 do
ListBox1.Items.Add(IntToStr(i));
Timer1.Enabled:=false;
ListBox1.Visible:=false;
//counter:=0;
Timer1.Interval:=750;
Timer1.Enabled:=true;
Label1.Caption:='Veritabanı sunucusu ile bağlantı kurulamıyor...';
Label2.Caption:='Seçiminizi yapınız...';
Label3.Caption:='';
end;
procedure TForm2.Timer1Timer(Sender: TObject);
begin
Label3.Caption:='';
BitBtn1.Caption:='Tekrar Bağlan = '+ListBox1.Items.Strings[counter];
inc(counter);
if counter=ListBox1.Items.Count then begin
form1.ADOConnection1.Connected:=false;
form1.ADOConnection1.ConnectionString:='';
try
form1.ADOConnection1.Connected:=true;
Close;
except
Label3.Caption:='Bağlanmaya Çalışıyor...';
Label3.Refresh;
Label3.Repaint;
counter:=0;
end;
end;
end;
procedure TForm2.BitBtn2Click(Sender: TObject);
begin
Close;
end;
procedure TForm2.BitBtn1Click(Sender: TObject);
begin
form1.ADOConnection1.Connected:=false;
form1.ADOConnection1.ConnectionString:='';
try
form1.ADOConnection1.Connected:=true;
Close;
except
Label3.Caption:='Bağlanmaya Çalışıyor...';
Label3.Refresh;
Label3.Repaint;
counter:=0;
end;
end;
procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Timer1.Enabled:=false;
end;
kolay gelsin;