دانلود سورس کد نمایش توابع API با سی شارپ #C

دانلود سورس کد نمایش توابع API با سی شارپ #C
در این سورس کد که با زبان سی شارپ نوشته شده است، میتوانید برنامه کار با توابع API ویندوز را مشاهده و دانلود کنید.
API ها در حقیقت همان توابعی هستند که برنامه های نوشته شده برای ویندوز از آنها برای کارهای مختلفی استفاده میکنند.
توابع API یک سری متدهای آماده ای هستند که توابع ویندوزی را شبیه سازی میکنند و با استفاده از این توابع در زبانهای برنامه نویسی و برنامه ها، میتوان عملیات مختلفی از جمله : فوکوس کدن روی یک پنجره، برای تغییر زبان، باز کردن یک مسیر، تنظیم مکان یک پنجره، مینیمایز و ماکزیمایز کردن اندازه پنجره، فهمیدن مدت زمان روشن بودن کامپیوتر، بدست آوردن مسیر پوشه ویندوز، ایجاد دایرکتوری جدید و بسیاری کارهای دیگر، را انجام داد.
در این پست دو نوع برنامه استفاده از توابع API را جهت استفاده شما قرار داده ایم که هرکدام شامل توابع API مختلف و جالبی میباشند از جمله نشان دادن مشخصات پنچره فعلی: ماکزیمایز بودن یا نبودن، فعال یا غیرفعال بودن پنجره، فرزند یا پدر بودن، حرکت پنجره، و همچنین نمونه دیگر شامل، عملیات روی ماوس (عوض کردن دکمه ماوس و تنظیم مجدد ماوس )، عملیات سیستم عامل (گرفتن نسخه سیستم و Hibernate ) و همچنین مشخصات درایو انتخابی (فضای خالی درایو و نشان دادن نوع درایو ) و ایجاد پوشه جدید در هر آدرسی که بخواهید، می باشد.
سورس اصلی این برنامه را میتوانید در بخش پایین دانلود نمایید.
کد پروژه نمایش متدهای API با #C را در زیر مشاهده میکنید و میتوانید از آن در تمام نسخه های ویژوال استدیو استفاده کنید.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
namespace HelpProvider
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void btnGetFreeSpace_Click(object sender, EventArgs e)
{
string rootPathName = "";
int sectorsPerCluster = 0;
int bytesPerSector = 0;
int numberOfFreeClusters = 0;
int totalNumberOfClusters = 0;
rootPathName = txtDriveLetter.Text + ":";
Win32API.GetDiskFreeSpace(rootPathName, ref sectorsPerCluster, ref bytesPerSector,
ref numberOfFreeClusters, ref totalNumberOfClusters);
txtFunctionOutput.Text = "تعداد کلاستر ها : " +
numberOfFreeClusters.ToString();
}
private void btnGetDiskFreeSpaceEx_Click(object sender, EventArgs e)
{
string rootPathName = "";
int freeBytesToCaller = 0;
int totalNumberOfBytes = 0;
UInt32 totalNumberOfFreeBytes = 0;
rootPathName = txtDriveLetter.Text + ":";
Win32API.GetDiskFreeSpaceEx(rootPathName, ref freeBytesToCaller, ref totalNumberOfBytes,
ref totalNumberOfFreeBytes);
txtFunctionOutput.Text = "تعداد بایت های خالی : " +
totalNumberOfFreeBytes.ToString();
}
private void btnGetDriveType_Click(object sender, EventArgs e)
{
string rootPathName;
rootPathName = txtDriveLetter.Text + ":";
switch (Win32API.GetDriveType(rootPathName))
{
case 2:
txtFunctionOutput.Text = "نوع درایو: Removable";
break;
case 3:
txtFunctionOutput.Text = "نوع درایو: Fixed";
break;
case 4:
txtFunctionOutput.Text = "نوع درایو: Remote";
break;
case 5:
txtFunctionOutput.Text = "نوع درایو: Cd-Rom";
break;
case 6:
txtFunctionOutput.Text = "نوع درایو: Ram disk";
break;
default:
txtFunctionOutput.Text = "نوع درایو: Unrecognized";
break;
}
}
private void btnCreateDirectory_Click(object sender, EventArgs e)
{
Win32API.SECURITY_ATTRIBUTES security = new Win32API.SECURITY_ATTRIBUTES();
if (Win32API.CreateDirectory(txtDirectory.Text, security))
{
txtFunctionOutput.Text = "پوشه ایجاد شد";
}
else
{
txtFunctionOutput.Text = "متاسفانه پوشه ایجاد نشد";
}
}
private void btnSwapMouseButton_Click(object sender, EventArgs e)
{
Win32API.SwapMouseButton(1);
txtFunctionOutput.Text = "دکمه کلیک و راست کلیک جا به جا شد";
}
private void btnResetMouseButton_Click(object sender, EventArgs e)
{
Win32API.SwapMouseButton(0);
txtFunctionOutput.Text = "ماوس به حالت اولیه بازگشت";
}
private void btnGetOSVersion_Click(object sender, EventArgs e)
{
Win32API.OSVersionInfo versionInfo = new Win32API.OSVersionInfo();
versionInfo.OSVersionInfoSize = Marshal.SizeOf(versionInfo);
Win32API.GetVersionEx(ref versionInfo);
txtFunctionOutput.Text = "شماره ساخت: " + versionInfo.buildNumber.ToString() + (char)13 + (char)10;
txtFunctionOutput.Text += "شماره نسخه اصلی: " + versionInfo.majorVersion.ToString();
}
private void btnHibernate_Click(object sender, EventArgs e)
{
if (Win32API.IsPwrHibernateAllowed() != 0)
{
Win32API.SetSuspendState(1, 0, 0);
}
else
{
txtFunctionOutput.Text = "کامپیوتر شما از خواب زمستانی پشتیبانی نمی کند." ;
}
}
}
}
بصورت رایگان سورس کد نمایش توابع API را دانلود کنید
حجم فایل 180 KB