Uzaktaki bilgisayarın ekranını görmek ve müdahele etmek

Yapmak istediğiniz işle ilgili doğru bileşeni bulmak için burayı kullanabilirsiniz. Sadece bulmak için, diğer sorular Programlama forumuna lütfen.
Forum kuralları
Bu forum sadece yapacağınız işle alakalı doğru bileşeni bulmak içindir. Şöyle bir şey yapmam lazım, hangi bileşeni kullanıyım diyorsanız, doğru yerdesiniz.
Cevapla
Kullanıcı avatarı
hdayi
Kıdemli Üye
Mesajlar: 1284
Kayıt: 29 Oca 2004 01:53
Konum: Erciyes'in eteklerinden.

Uzaktaki bilgisayarın ekranını görmek ve müdahele etmek

Mesaj gönderen hdayi »

Uzaktaki bilgisayarın ekranını görmek ve müdahele etmek için bir component var mı?
radmin falan gibi sesler duyar gibi oluyorum ama güvenlik nedeni ile kullanmak istemiyorlar.
Teşekkürler...
Bişnev in ney çün hikâyet mîküned
Ez cüdâyîhâ şikâyet mîküned
Resim
Kullanıcı avatarı
husonet
Admin
Mesajlar: 2962
Kayıt: 25 Haz 2003 02:14
Konum: İstanbul
İletişim:

Mesaj gönderen husonet »

Dostum bunu kod olarak yazmayı düşünürsen Arşivimde örnek olacaktı.


Kolay Gelsin...

Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
Kullanıcı avatarı
ALUCARD
Üye
Mesajlar: 1270
Kayıt: 27 Eyl 2003 10:12
Konum: Samsun
İletişim:

Mesaj gönderen ALUCARD »

husonet yazdı:Dostum bunu kod olarak yazmayı düşünürsen Arşivimde örnek olacaktı.
bu arşivi bizimle paylaşa bilirseniz sevinirim hocam yaa
بِسْمِ اللهِ الرَّحْمنِ الرَّحِيمِ
Forumun 365. Üyesi
Hiç Bir Şey İnsan Kadar Yükselemez ve Alçalamaz

Erkan ÇAĞLAR
Kullanıcı avatarı
husonet
Admin
Mesajlar: 2962
Kayıt: 25 Haz 2003 02:14
Konum: İstanbul
İletişim:

Mesaj gönderen husonet »

Arkadaşım öncelikle kodu yazmadan önce kod hakkında bilgi verecem kod'un mantığı Client'ten servere JPG halinde ekran görüntüsünü gönderiyor biraz Matematik Çalışması ile Karşı Makina ya da Hesaplatma yaparak hakim olabilirsiniz.


Kod: Tümünü seç

procedure TForm1.Timer2Timer(Sender: TObject); 
var 
        width, height : word; 
        desktop : HDC; 
        MyJPEG : TJPEGImage; 
        MyBMP : TBitmap; 
        jpgImg: TJPEGImage; 
        yol,yol2:string; 

begin 

        timer2.Enabled:=false; 
        yol:=trim(edit7.Text)+':\ulala.bmp';  //  Edit7.Text= serverin C       sürücüsünün adresi 
        yol2:=trim(edit7.Text)+':\ulala.jpg'; 


//------------------------------------------------------------------------------------ 
                    width := Screen.Width; 
                    height := Screen.Height; 

                    desktop := GetWindowDC(GetDesktopWindow); 
                    form6.Image1.Picture.Bitmap.Width := width; 
                    form6.Image1.Picture.Bitmap.Height := height; 
                    //form6.Image1.Picture.Bitmap.PixelFormat:=pf8bit; 
{ 
    pf1bit=  '.  Monochrome'; 
    pf4bit=  '.  16 Colors'; 
    pf8bit=  '.  256 Colors'; 
    pf15bit= '.  32768 Colors'; 
    pf16bit= '.  65536 Colors'; 
    pf24bit= '.  16 Million Colors'; 
    pf32bit= '.  Gazillions of Colors!'; 

} 
                    BitBlt( form6.Image1.Picture.Bitmap.Canvas.Handle, 0, 0, 
                          width, height, desktop, 0, 0, SRCCOPY ); 
//-------------------------------------------------------------------------------------- 




//-------- bmp to jpg ------------------------------------------------------------------------- 
  Clipboard.Assign(form6.Image1.Picture.Bitmap); 
  form6.Image1.Picture.Bitmap.LoadFromClipboardFormat(cf_BitMap, 
  ClipBoard.GetAsHandle(cf_Bitmap), 0); 
  jpgImg := TJPEGImage.Create; 
  jpgImg.Assign(form6.Image1.Picture.Bitmap); 
  jpgImg.SaveToFile(yol2); 
//--------------------------------------------------------------------------------- 

                   serversocket1.Socket.Connections[0].sendtext('@res_al@'); 
                   timer2.Enabled:=true; 
Kolay Gelsin...

Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
DotCom
Kıdemli Üye
Mesajlar: 1696
Kayıt: 11 Tem 2003 10:30
Konum: İzmir
İletişim:

Mesaj gönderen DotCom »

hüseyin abi ,

soruda görmek ve müdale etmek dio.senin gönderdiğin kodda sadece görme kısmı var müdahale yok.. ayrıca sürekli foto göndereceğin için ağ trafiğini belirgin bir ölçüde iş gal edecektir...

birde ek not : eğer bu kod ile aktarmayı deneyeceksiniz. saniyede 22 tane göstermen lazım en az foto. insan gözü bildiğim kadarı ile saniyede en az 22 frame görebiliyor. bunun altına düştümü görüntü kalitesi kötü olur....

kolay gelsin.
Kullanıcı avatarı
husonet
Admin
Mesajlar: 2962
Kayıt: 25 Haz 2003 02:14
Konum: İstanbul
İletişim:

Mesaj gönderen husonet »

m4st3rmus yazdı:soruda görmek ve müdale etmek dio.senin gönderdiğin kodda sadece görme kısmı var müdahale yok..

Bizde inkar etmedik ki zaten :D

Kolay Gelsin...
En son husonet tarafından 17 Ağu 2004 09:17 tarihinde düzenlendi, toplamda 1 kere düzenlendi.

Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
Kullanıcı avatarı
hdayi
Kıdemli Üye
Mesajlar: 1284
Kayıt: 29 Oca 2004 01:53
Konum: Erciyes'in eteklerinden.

Mesaj gönderen hdayi »

Böyle bir çözüm üretilmiş zaten telefonda takıldıkları yerde görüntüyü alıp devam ediyorlar iş yaptırmaya. Ben böyle bir component varsa iş daha kolay olur diye düşünmüştüm. :( yok sanırım.
Bişnev in ney çün hikâyet mîküned
Ez cüdâyîhâ şikâyet mîküned
Resim
DotCom
Kıdemli Üye
Mesajlar: 1696
Kayıt: 11 Tem 2003 10:30
Konum: İzmir
İletişim:

Mesaj gönderen DotCom »

Bizde inkar etmedik ki zaten :D

Kolay Gelsin...

abime bak bea hemende sinirlenirmiş. :lol

kolay gelsin.
Kullanıcı avatarı
ac
Üye
Mesajlar: 6
Kayıt: 17 Ağu 2004 10:51

Mesaj gönderen ac »

merhabalar

siteye yeni kaydoldum. bilgi/beceri/birikim açısından yeniyim. ama bende fikrimi paylaşayım affınıza sığınarak.

husonet'in yazdığı kod gerçekten ağ trafiğini çok kasıyo. bir cafeye bu türden bir uygulama yapıldığını gördüm. client sadece servera resim yolluyo(30 sn'de bir) serverda sürekli resimi güncelleyip karşı tarafı görüyo. 30 tane bilgisayar+1 tane server var. ağ trafiğini gerçekten bi görmeliydiniz. google.com'u açmak için makineler 5 dk uğraşıyodu.

artık buna göre düşünün olayı...

kolay gelsin.
DotCom
Kıdemli Üye
Mesajlar: 1696
Kayıt: 11 Tem 2003 10:30
Konum: İzmir
İletişim:

Mesaj gönderen DotCom »

@ac ;

merhab öncelikle foruma hoş geldin. ilk olarak ben bir uyarı yapayım , avatarını küçültürsen memnun olurum.

kolay gelsin.
Kullanıcı avatarı
mege
Admin
Mesajlar: 2360
Kayıt: 05 Şub 2004 04:32
Konum: Beşiktaş
İletişim:

Mesaj gönderen mege »

valla @husonetin kodu denemedim ama onun yerine dosya boyutlarını kontrol ettim.

1024*768 ekran çözünürlüğü BMP olarak 2305kb
1024*768 ekran çözünürlüğü JPG olarak 89kb

1024*768 ekran çözünürlüğü 200*150 olacak şekilde resize yapıp JPG olarak dönüştürünce sadece 6kb. resimde oldukça anlaşılır yani.

eğer 5 saniyede bir ise bu meblanın fazla trafik teşkil ediceğini sanmam.
ha illa olsun derlerse gigabit ethernete zıplarsınız :) maliyetler ne kadar artabilirki :P
.-.-.-.-.-.-.-. ^_^
Mazinho
Üye
Mesajlar: 12
Kayıt: 28 Haz 2004 10:33

Mesaj gönderen Mazinho »

Selam VNCviewer componenti var bu is icin freeware bunu kullanabilirsin.
Kullanıcı avatarı
gkimirti
Admin
Mesajlar: 1956
Kayıt: 02 Eyl 2003 04:44
Konum: İstanbul

Mesaj gönderen gkimirti »

VNCviewer komponent halinde de varmı?
ben sadece exe olarak biliyorum ve gercekten cok muthis,hızlı,kucuk...
ÜŞENME,ERTELEME,VAZGEÇME
a_self_lion
Üye
Mesajlar: 93
Kayıt: 01 Eki 2008 07:04

Re:

Mesaj gönderen a_self_lion »

mege yazdı:valla @husonetin kodu denemedim ama onun yerine dosya boyutlarını kontrol ettim.

1024*768 ekran çözünürlüğü BMP olarak 2305kb
1024*768 ekran çözünürlüğü JPG olarak 89kb

1024*768 ekran çözünürlüğü 200*150 olacak şekilde resize yapıp JPG olarak dönüştürünce sadece 6kb. resimde oldukça anlaşılır yani.

eğer 5 saniyede bir ise bu meblanın fazla trafik teşkil ediceğini sanmam.
ha illa olsun derlerse gigabit ethernete zıplarsınız :) maliyetler ne kadar artabilirki :P
Burda sayın adminimiz 1024*768 ekran çözünürlüğü 200*150 olacak şekilde resize yapıp jpg olarak dönüştürünce 6 kb ve resim oldukça anlaşır yazmış. Bu aralar üzerinde çalıştığım bir projemde bana da lazım ekran görüntüsünü bmp olarak kayedeiyorum. 3 mb tutuyor sonra jpeg compires 12 olarak sıkıştırıyorum 50kb oluyor en okunaklı hali yani
burda hocam siz nasıl 6kb a kadar okunaklı düşürdünüz lütfen benimlede paylaşırsanız çok sevinirim.
Benim kodları ekleyeyim üzerinden de gidebiliriz

Kod: Tümünü seç

// bmp yükseklik ve genişlik ayarlanıp sıkıştırılıyor.
var
  jpg : TJPEGImage;
  bmp : TBitmap;
  bmp1 : Tbitmap;
begin
bmp := TBitmap.Create;
  try
    bmp.LoadFromFile('...'+ DosyaAdi +'.bmp'); //resmi yükle yada ekrandan aldığın bmp bu
    bmp1 := TBitmap.Create; //yeni bitmap oluştur.

    try
      with bmp1.Canvas do begin
        try
          Lock; //kilitle
            //resim boyutunu ayarla
            bmp1.Width := 800;
            bmp1.Height := 600;
            FillRect(ClipRect);
            StretchDraw(rect(0, 0, 800, 600), bmp); //800 x 600 olarak resmi
            //çiz
        finally
          Unlock; //kilidi aç
        end;
      end;

      jpg := TJPEGImage.Create; //jpg i oluştur
      try
        jpg.Assign(bmp1); //yeni bitmap ı jpg e ata.
        jpg.CompressionQuality := 15; //kalite belirle
        jpg.Compress; //sıkıştır
        jpg.SaveToFile(''...''+ DosyaAdi +'.JPEG'); //kaydet
      finally
        FreeAndNil(jpg); //yok et
      end;
    finally
      FreeAndNil(bmp1);    //yok et
    end;
  finally
    FreeAndNil(bmp);       // yok et


  end;
}
burda bu şekilde biz çözünürlük olayını yapamadik sanırım. sadece çerçevesini küçülttük oda okunmadı resmin okuurluğu gitti. ama szi çözünürlük demişsiniz benimde aradığım buydu sanrıım. Lütfen paylaşırsanız hep birlikte öğreniriz. Teşekkürler.
Cevapla