سلام اساتید بزرگوار.من میخوام یک برنامه بنویسم که وقتی اجرا شد شماره یک سکتور رو ازما بپرسه بعد اطلاعات اون سکتور رو روی مانیتور نمایش بده.ایا واقعا این امر امکان پذیر هست.
اگه میشه لطفا کمکم کنید.ممنون :oops: :P
سلام اساتید بزرگوار.من میخوام یک برنامه بنویسم که وقتی اجرا شد شماره یک سکتور رو ازما بپرسه بعد اطلاعات اون سکتور رو روی مانیتور نمایش بده.ایا واقعا این امر امکان پذیر هست.
اگه میشه لطفا کمکم کنید.ممنون :oops: :P
Telegram : @SQL_Server
سلام.اقای نصیری کجایین استاد گرامی. :cry: :(
هیچکس نیست کمکم کنه؟ :(
Telegram : @SQL_Server
دقیقا می خوای چکار کنی؟ :wink:
میخوام اطلاعات یک سکتور رو روی مانیتور نمایش بدم. :oops:
Telegram : @SQL_Server
راستشو بگو! :evil2:
اقای نصیری هیچی به جون خودم. :P
بابا من تازه سی شارپ رو شروع کردم حالا یکی بهم گفته اگه سی بلدی این برنامه رو بنویس بیار منم بلد نیستم.
الانم همش دارم دراین زمینه مطالعه میکنم ولی چیز خاصی دستگیرم نشده حالا اگه میشه کمکم کنید.
بعد مگه بااین کارمن میشه کار خاصی کرد؟؟؟ :evil2:
منو تحریک کردید اقای نصیری :wink:
Telegram : @SQL_Server
برادر صادقیان ،
دوست داشتم برای این سوال متداول یک مطلب مفصل و کامل مینوشتم اما نقدا" که حسش نیست ، باشه طلبت . اجالتا" : برای دسترسی مستقیم به دیسک سخت و تبادل داده ( Raw i/o ) یک سری محدودیت در محیطهای مبتنی بر NT وجود داره . ( در محیطهای قبلی که اصولا" باید یک درایور سطح کرنل - VXD - مینوشتی ) برای فائق اومدن بر این محدودیتها باید اول هندل درایو مورد نظرت رو با تابع API معروف CreateFile بدست بیاری با این تفاوت که باید اسم درایو رو کمی دستکاری کنی . مثلا" اگر اولین درایو لاجیکال است دوتا بک اسلش ، دات ، بک اسلش ، PhysicalDrive1 و ... . حالا تو هندل یک درایو رو داری که بهش Raw i/o Access داری . بعدش هم میتونی سطح دیسک رو بایت به بایت با تابع ReadFile بخونی . ( تبدیل مشخصات سکتور هم به عهدهء خودت ، کاری نداره ) حالا این توضیحات بی حوصلهء من رو بگذار کنار یک سرچ مفصل و مقاله عباس عریضی در مورد نحوه کار با Win32 API ها در محیط دات نت . مشکلت حله . MSDN رو بگرد بعیده چیزی در این مورد توش نباشه .
شرمنده .
خوش باشی
UNIX is simple. It just takes a genius to understand its simplicity
-- Dennis Ritchie
جناب اینپرایز عزیزممنون از راهنماییتون.اگه میشه یک لینک هم ازاون مقاله بهم بدین ممنون میشم.
اقای نصیری یک مقدار بیشتر کمک میکنید؟
:oops:
Telegram : @SQL_Server
البته این سوال بیشتر به بخش اسمبلی مربوط می شود تا سی شارپ .
برای مثال (تحت داس):
http://www.experts-exchange.com/Prog..._20662752.html
برای ویندوز:
http://www.codeproject.com/system/cfloppydisk.asp
من سی شارپ رو هنوز کار نکردم. ولی با سی یا سی++ باید با استفاده از وقفه ها این کار رو انجام بدی.(فکر نکنم سی شار÷ چیزی به نام وقفه داشته باشه؟!)
حالا من چه جوری میتونم از توابع api تو سی شارپ استفاده کنم
اگه میشه یک مقاله ایی که چیزی یک کمکی بهم بکنید :oops:
Telegram : @SQL_Server
اقا کسی نبود جواب منو بده.
:cry:
Telegram : @SQL_Server
سلام
فکر کنم اینجوری
[DllImport("kernel32.dll", EntryPoint="CreateFileA")]
static extern int32 CreateFile (
string lpFileName,
int32 dwDesiredAccess,
int32 dwShareMode,
[MarshalAs(UnmanagedType.Struct)	 3; SECURITY_ATTRIBUTES lpSecurityAttributes,
int32 dwCreationDisposition,
int32 dwFlagsAndAttributes,
int32 hTemplateFile);
struct SECURITY_ATTRIBUTES{
private int32 nLength;
private int32 lpSecurityDescriptor;
private int32 bInheritHandle;
}
و اینم یه مثال دیگه :
using System;
class callAPICls {
[sysimport(dll="user32.dll")]
public static extern int MessageBoxA(int h, string m, string c, int type);
public static int Main()
{
return MessageBoxA(0, "Hello World!", "Caption", 0);
}
}
ممنونم ازهمتون که اینهمه به من تازه کار لطف دارین.
حالا اگه امکان داره یک مقدار هم توضیح بدین دیگه خیلی خیلی ممنونتون میشم در مورد این کدهایی که اوردین. :oops:
Telegram : @SQL_Server
یه نگاه به اینجا بنداز به دردت میخورهhttp://www.barnamenevis.org/viewtopic.php?t=7163