Disk Toplam Alanını ve Boş Alanını Bulma

Wod-Hack

Üye
8 Kas 2015
168
0
ANTALYA
Disk sürücüleri hakkında bilgi almak için kernel32.dll dosyasını kullanabiliriz.Disk boyutunu ve disk üzerindeki boş alan miktarını bulmak için bu dll dosyasının GetDieskFreeSpaceEx metodundan faydalanacağız.

GetDieskFreeSpaceEx metodunun kullanımı şu şekildedir;

Kod:
GetDieskFreeSpaceEx(Disk sürücüsü adi, Ulaşılan boş alan, Toplam alan, Boş alan)


Kod:
using System;
using System.Windows.Forms;
using System.Runtime.InteropServices;
 
namespace HakanKaraarslan
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
 
 
        [DllImport("kernel32.dll", SetLastError = true, CharSet = CharSet.Auto)]
        [return: MarshalAs(UnmanagedType.Bool)]
         static extern bool GetDiskFreeSpaceEx(string IpDirectoryName,
         out ulong IpFreeBytesAvailable,
         out ulong IpTotalNumberOfBytes,
         out ulong IpTotalNumberOfFreeBytes);
 
        private **** btn_bilgial_Click(object sender, EventArgs e)
        {
            ulong toplamalan;
            ulong ulasilanbosalan;
            ulong bosalan;
            double alan;
            bool sonuc = GetDiskFreeSpaceEx(txt_disk.Text, out ulasilanbosalan,out toplamalan, out bosalan);
           if (sonuc)
           {
                throw new System.ComponentModel.Win32Exception();
                alan = bosalan / (1024 * 1024);
                lbl_bosalan.Text = lbl_bosalan.Text + " = " + alan.ToString() + " mb";
                alan = toplamalan / (1024 * 1024);
                lbl_diskboyut.Text = lbl_diskboyut.Text + " = " + alan.ToString() + " mb";
              
           }
 
        }
    }
}


yqr0Pa.png


Kod:
bool sonuc = GetDiskFreeSpaceEx(txt_disk.Text, out ulasilanbosalan,out toplamalan, out bosalan);

… satırında out ifadesi ile geriye dönen değerlerin hangi değişkenlere aktarılcağını belirtiyoruz.Eğer sonuç değişkeni false değerinden farklı bir değer içeriyorsa, işlem başarı ile gerçekleştirilmiş demektir.
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.