Merhabalar, web android SEO ve birçok alanda birçok müşteriye hitap ediyoruz. Yoğunluktan dolayı basit bir müşteri projemizi yapacak birisine ihtiyacımız var, aşağıdaki kodları tamamlayacak kişiler özel mesaj yoluyla iletişime geçebilirsiniz.

Proje detayları

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

//bizim ekledigimiz kutuphaneler
// mutlaka alt kutuphaneler icin PROJE menusunden NuGET alt menusunuden, GOZAT diyerek serviceprocess kompanendi yuklenmelidir
using System.Net;
using System.ServiceProcess;
using System.Diagnostics;

namespace neetpro146
{
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,serviceDis playName, 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[i].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.
///*********************************************
///*********************************************
}
}
}
}