adigeenes
Femtopat
- Katılım
- 1 Mart 2024
- Mesajlar
- 4
Daha fazla
- Cinsiyet
- Erkek
C#:
using System.Net;
using System.ServiceProcess;
using System.Diagnostics;
namespace uygulama
{
public partial class Form1 : Form
{
string izlenecek="BITS";
int sirano = 0;
bool durum;
ServiceController service2;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
int sn=0,aktif=0,pasif=0;
int i;
//bilgisayarın temel bilgileri listelenmektedir
string bilgisayarAdi = Dns.GetHostName();
label4.Text = bilgisayarAdi;
string ipAdresi = Dns.GetHostByName(bilgisayarAdi).AddressList[0].ToString();
label3.Text = ipAdresi;
//grid olarak service hizmetleri listelenmektedir. sn servis adeti, aktif ve pasif servis sayisini, sirano ise izlenecek servisi tanimlamaktadır
dataGridView1.ColumnCount = 5;
dataGridView1.Columns[0].Name = "No";
dataGridView1.Columns[0].Width = 20;
dataGridView1.Columns[1].Name = "Adı";
dataGridView1.Columns[2].Name = "Ekran";
dataGridView1.Columns[3].Name = "Tipi";
dataGridView1.Columns[4].Name = "Aktifmi";
foreach (ServiceController service in ServiceController.GetServices())
{
string serviceName = service.ServiceName;
string serviceDisplayName = service.DisplayName;
string serviceType = service.ServiceType.ToString();
string status = service.Status.ToString();
if (status.Substring(0,1) == "R") { aktif++; } else { pasif++; }
if (serviceName==izlenecek)
{
sirano = sn;
service2 = service;
durum = status.Substring(0, 1) == "R";
}
dataGridView1.Rows.Add(sn++,serviceName,serviceDisplayName, serviceType, status);
}
// arka planda çalışan programların listesi
dataGridView2.ColumnCount = 2;
dataGridView2.Columns[0].Name = "No";
dataGridView2.Columns[0].Width = 20;
dataGridView2.Columns[1].Name = "Program";
Process[] p = Process.GetProcesses();
for (i = 0; i < p.Length; i++)
{
dataGridView2.Rows.Add(i,p.ProcessName.ToString());
}
// ekran ciktisi olarak listbox1 kullanilmaktadir, listbox1 icinde program ciktilari mevcuttur
listBox1.Items.Clear();
listBox1.Items.Add("program aktif oldu>>> " + DateTime.Now);
listBox1.Items.Add(sn+" adet servisden, aktif servis sayisi: "+aktif);
listBox1.Items.Add("pasif servis sayisi: "+pasif);
listBox1.Items.Add("izlenecek servis adi(sira no:"+sirano+"): "+izlenecek);
}
private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
timer1.Enabled = checkBox1.Checked;
listBox1.Items.Add("gercek zamanlı kontrol: " + checkBox1.Checked);
}
private void timer1_Tick(object sender, EventArgs e)
{
// zaman bazli kontrol.... gercek zamanli servis durumunda degisiklik olmasi durumunda devreye girer
if (durum!=(service2.Status.ToString().Substring(0, 1)=="R"))
{
listBox1.Items.Add("izlenecek servis durum degistirmistir!!");
// buraya konunuz kapsamında kodlama ve üst kısımlarda degisiklik yapilmasi talep edilmektedir.
///*********************************************
///*********************************************
///1. YAPILACAK KODLANACAK KISIM
///bu kısma degisiklik oldugunda bilgisayarda aktif calisan programlardan
///ilk basta liste bazında degisenlerin isim ve bilgileri listbox1 icerisine listelenecek!!!
///SERVİS hangi program tarafindan cagrilmistir..!!!
///
/// 2.YAPILACAK KISIM
///ek olarak islem surecinde IP paketleri izlenmesi ve dis makina erisimlerinin listelenmesi talep edilmektedir
///degisiklik oldugunda, erisim saglanan ip adres ve port bilgisi listbox1 icinde listelenmelidir.
///*********************************************
///*********************************************
}
}
}
}
Son düzenleyen: Moderatör: