PDA

مشاهده نسخه کامل : خواندن و نوشتن در پورتها با CreateFile



noorsoft
29-07-08, 01:29
کسی میدونه برای خواندن و نوشتن اطلاعات در پورتها از تابع CreateFile چطور استفاده میشه

noorsoft
29-07-08, 19:36
کسی با این تابع کار نکرده بتونه کمک کنه؟

MoBiN.R
31-07-08, 13:08
با سلام خدمت جناب نورانیان .. ورود شما رو به این انجمن تبریک میگم .. در مورد سوالتون من اطلاعی ندارم اما دوستان دیگه هستند ( آقا آرمین ، آقا کسری و ... ) باید صبر کنید تا این دوستان جوابتون رو بدهند

ravegoat
01-08-08, 08:59
کسی میدونه برای خواندن و نوشتن اطلاعات در پورتها از تابع CreateFile چطور استفاده میشه

با سلام به شما دوست عزیز!

من چنین تابعی تا کنون نشنیدم!متاسفم!:cry:

در ضمن منظور از پورت، چه پورته هستش؟ COM، Capture و یا پورت شبکه یا همون سوکت!

به هر حال اگر منظورتان پورت COM هستش، بنده اطلاع دارم چگونه می توان به این پورت اطلاعات فرستاد و چگونه اطلاعات را از یک پورت خواند. اگر چنین چیزی را می خواهید، بنده کد VB.net آن را در اختیارتان قرار می دهم.

اگر کد VB6 آن را می خواهید، اعلام کنید تا برایتان تهیه کنم.

امیدوارم که منظورتان را درست متوجه شده باشم. اگر منظورتان نوعی دیگری از پورت بود، لطفا اعلام کنید تا ان شا الله با کمک دوستان بتوانیم مشکلتان را حل کنیم.:yes:

با سپاس
آرمین:11():

noorsoft
01-08-08, 09:20
دوست عزیز با تشکر از شما
کل کاری که من میخوام بکنم باز کردن پورت سریال گوشی نوکیا ست
شما وقتی موبایل را به کامپیوتر وصل میکنین یه مودم میسازه در واقع من میخوام بتونم دستورات at را به مودم ارسال و دریافت کنم

MoBiN.R
01-08-08, 11:00
برای ارسال فرمان های AT به مودم و یا گوشی و کار با فرمان های AT میتونید به این تاپیک که آقا آرمین زحمتشو کشیدن مراجعه کنید : Only the registered members can see the link

noorsoft
01-08-08, 15:24
من این را قبلا دیدم مشکل من را حل نمی کنه
مشکل من خواندن و ارسال دستورات به پورت Usb هست

ravegoat
01-08-08, 15:41
من این را قبلا دیدم مشکل من را حل نمی کنه
مشکل من خواندن و ارسال دستورات به پورت Usb هست

دوست عزیز!

لطفا اول به این سوال جواب بدید که می تونید با Hyper Terminal به پورت USB گوشیتون At Command ارسال کنید؟

اگر می تونید، من سورس ارسال/دریافت رو براتون می فرستم!

اگر نمی تونید، باید از مودم گوشیتون استفاده کنید.

در ضمن بگویید چرا تاپیکی که قبلا دیده بودید مشکل شما را حل نکرد؟در این تاپیک نرم افزاری وجود دارد که به پورت USB نیز فرمان ارسال می کند. یعنی وقتی گوشی با USB به رایانه وصل می شود حداقل یک پورت COM برایش در نظر گرفته می شود که از طریق آن باید فرمان ارسال کرد.


با سپاس
آرمین:11():

noorsoft
01-08-08, 20:14
من با هایپر ترمینال به گوشی وصل میشم ولی با شماره پورت نمیشه و باید نام مودم را انتخاب کنم برای همین از کنترلهایی که پورت را از شماره باز میکنن نمی تونم استفاده کنم

البته من تونستم با تابع createfile پورت مودم را بازکنم و اطلاهاتی به اون ارسال کنم ولی هنوز نتونستم اطلاعاتی دریافت کنم

noorsoft
01-08-08, 20:31
آرمین جان کدوم نرم افزار با پورت usb کار میکنه ؟

ravegoat
02-08-08, 07:33
آرمین جان کدوم نرم افزار با پورت usb کار میکنه ؟

دوست عزیز، با این توصیفات نرم افزار من هم می تونه از مودم شما استفاده کنه.

به هر حال در بخش مراجع نرم افزار TmobileManager مناسب کار شماست.
امیدوارم سورسش بدردتون بخوره!

با سپاس
آرمین:11():

noorsoft
02-08-08, 17:03
لینک فایلها خرابه . نمیشه دانلود کرد

ravegoat
02-08-08, 22:41
لینک فایلها خرابه . نمیشه دانلود کرد

با سلام!

حق با شماست! بعضی مواقع این مشکل پیش میاد.

فایل رو تو انجمن بالاگذاری کردم:

1176

در ضمن اگر تمایل داشتید یه سری کد از همین تابع CreateFile بذارید، شاید با کمک دوستان بتونیم کمکتون کنیم.:wink:

بازم اگر مشکل داشتید، دوستان و من در خدمتیم.

با سپاس
آرمین:11():

noorsoft
03-08-08, 07:06
ارمین جان این برنامه همون مشکلی که من میگم را داره
من وقتی موبایل را به کامپیوتر وصل میکنم com5 به سیستم اضافه میشه ولی اگه سعی کنین با هر برنامه ای بازش کنید already in use میده و در هایپر ترمینال هم فقط با انتخاب نام مودم میشه به اون دستورات ارسال کرد

noorsoft
03-08-08, 07:09
این یک نمونه برنامه است که با این تابع کار میکنه

ravegoat
03-08-08, 09:08
این یک نمونه برنامه است که با این تابع کار میکنه

دوست عزیر! فایل پیوست شده ی شما رو دیدم. متوجه شدم چیه ولی اثری از سورس اصلی توش نبود. یعنی توش اصلا تابع CreateFile پیدا نکردم. لطفا" فایل رو دوباره بررسی کنید. با سپاس آرمین

noorsoft
03-08-08, 13:02
با عرض پورش لینک را اصلاح کردم اگه ممکنه دوباره ببینید

داخل این زیر برنامه بود


Private Function OpenPort(sPort As String) As Boolean

Dim sa As SECURITY_ATTRIBUTES

hFakePort = CreateFile(sPort, _
0, _
FILE_SHARE_READ Or FILE_SHARE_WRITE, _
sa, _
OPEN_EXISTING, _
FILE_ATTRIBUTE_NORMAL, _
0)

OpenPort = hFakePort <> -1

End Function

noorsoft
03-08-08, 13:03
این هم تعریف تابع


Private Declare Function CreateFile Lib "kernel32" _
Alias "CreateFileA" _
(ByVal lpFileName As String, _
ByVal dwDesiredAccess As Long, _
ByVal dwShareMode As Long, _
lpSecurityAttributes As SECURITY_ATTRIBUTES, _
ByVal dwCreationDisposition As Long, _
ByVal dwFlagsAndAttributes As Long, _
ByVal hTemplateFile As Long) As Long

ravegoat
10-08-08, 14:32
با سلام!

دوست عزیز، noorsoft!

ببخشید که دیر جوابتون رو می دم. من در مورد CreateFile تحقیق کردم و یه چیزایی در موردش گیر آوردم.:yes:
بعد هم رفتم سراغ ارسال / دریافت اطلاعات برای یه پورت COM.

تو این پست یه فایل پیوست کردم، که شامل یک سری کد و مقاله در مورد این تابع هستش. البته کد Cpp و C# هم داره که خیلی خوبه. در مورد MSCOMM هم مختصری مطلب داره. امیدوارم بدردتون بخوره.

1219

اگر بازم مشکل پیدا کردید، دوستان و بنده در خدمتیم.

با سپاس
آرمین