با سلام
این آموزش برا اونایی که میخوان با پورت موازی در C# کار کنن خیلی مفید و کامله :NO:
در ضمن هر گونه کپی برداری از این نوشته با ذکر منبع آزاده :nerd:
ارتباط با پورت موازی(Parallel) در C#
فایل input32.dll
برای انجام ارتباط با پورت موازی ابتدا باید فایل input32.dll را در پوشه system32 که در فولدر Windows می باشد کپی کنید یا در فولدر پروژه خود یعنی : …\bin\Debug کپی کنید.(... همان نام فولدری است که پروژه شما در آن قرار دارد).دقت کنید این فایل با یه Search کوچولو تو وب پیدا می شه.
تنظیمات اولیه C#
در ویژوال استودیو یک پروژه جدید C# ایجاد کنید (از نوع Windows Forms Application) بعد از این کار روی فرم دابل کلیک کنید تا به پنجره فرم منتقل شوید.در این پنجره در زیر خطوطی که using ها را تعریف می کنند کد زیر را وارد کنید :
using System.Runtime.InteropServices;
حال در زیر کلاس Form خود(دقت کنید اگر نام فرم خود را تغییر داده باشید بعد از public همان نام دیده می شود) یعنی کلاس زیر :
public Form1()
{
InitializeComponent();
}
باید کلاسی تعریف کنید تا بتوانید به راحتی با پورت موازی (Parallel) ارتباط برقرار کنید.این کلاس PortInterop نامیده می شود و بصورت زیر تعریف می شود :
class PortInterop
{
[DllImport("inpout32.dll", EntryPoint = "Out32"
]
public static extern void Output(int address, int value);
[DllImport("inpout32.dll", EntryPoint = "Inp32"
]
public static extern int Input(int address);
}
نوشتن در پورت
برای نوشتن در پورت به راحتی می توانید از تابع زیر استفاده کنید :
PortInterop.Output(int address,int value);
دقت کنید که برای نوشتن در پورت باید برای address از 888 استفاده کنید و برای value هم می توانید هر مقداری کوچکتر از 256 را انتخاب کنید (خود 256 قابل قبول نیست) پس مثلا برای ارسال عدد 125 به پورت موازی داریم :
PortInterop.Output(888,125);
خواندن از پورت
برای خواندن از پورت موازی (Parallel) هم میتوان از تابع زیر استفاده کرد :
PortInterop.Input(int address);
که در تابع خواندن باید از مقدار 889 برای address استفاده کرد یعنی درواقع شکل تابع بصورت زیر می شود :
PortInterop.Input(889);
نویسنده : میلاد فزونی
منبع :
استفاده از توضیحات Jeff Gonzaga در وب سایت http://www.ehow.com
این آموزش برا اونایی که میخوان با پورت موازی در C# کار کنن خیلی مفید و کامله :NO:
در ضمن هر گونه کپی برداری از این نوشته با ذکر منبع آزاده :nerd:
ارتباط با پورت موازی(Parallel) در C#
فایل input32.dll
برای انجام ارتباط با پورت موازی ابتدا باید فایل input32.dll را در پوشه system32 که در فولدر Windows می باشد کپی کنید یا در فولدر پروژه خود یعنی : …\bin\Debug کپی کنید.(... همان نام فولدری است که پروژه شما در آن قرار دارد).دقت کنید این فایل با یه Search کوچولو تو وب پیدا می شه.
تنظیمات اولیه C#
در ویژوال استودیو یک پروژه جدید C# ایجاد کنید (از نوع Windows Forms Application) بعد از این کار روی فرم دابل کلیک کنید تا به پنجره فرم منتقل شوید.در این پنجره در زیر خطوطی که using ها را تعریف می کنند کد زیر را وارد کنید :
using System.Runtime.InteropServices;
حال در زیر کلاس Form خود(دقت کنید اگر نام فرم خود را تغییر داده باشید بعد از public همان نام دیده می شود) یعنی کلاس زیر :
public Form1()
{
InitializeComponent();
}
باید کلاسی تعریف کنید تا بتوانید به راحتی با پورت موازی (Parallel) ارتباط برقرار کنید.این کلاس PortInterop نامیده می شود و بصورت زیر تعریف می شود :
class PortInterop
{
[DllImport("inpout32.dll", EntryPoint = "Out32"

public static extern void Output(int address, int value);
[DllImport("inpout32.dll", EntryPoint = "Inp32"

public static extern int Input(int address);
}
نوشتن در پورت
برای نوشتن در پورت به راحتی می توانید از تابع زیر استفاده کنید :
PortInterop.Output(int address,int value);
دقت کنید که برای نوشتن در پورت باید برای address از 888 استفاده کنید و برای value هم می توانید هر مقداری کوچکتر از 256 را انتخاب کنید (خود 256 قابل قبول نیست) پس مثلا برای ارسال عدد 125 به پورت موازی داریم :
PortInterop.Output(888,125);
خواندن از پورت
برای خواندن از پورت موازی (Parallel) هم میتوان از تابع زیر استفاده کرد :
PortInterop.Input(int address);
که در تابع خواندن باید از مقدار 889 برای address استفاده کرد یعنی درواقع شکل تابع بصورت زیر می شود :
PortInterop.Input(889);
نویسنده : میلاد فزونی
منبع :
استفاده از توضیحات Jeff Gonzaga در وب سایت http://www.ehow.com
دیدگاه