نمایش نتایج 1 تا 5 از 5

نام تاپیک: اسمبلی برای ارسال داده به پورت در xp کار نمی کنند

  1. #1

    اسمبلی برای ارسال داده به پورت در xp کار نمی کنند

    سلام

    قبلا دو بار سوال کردم و هر دو بار گفتند که سرچ بزن - بود اما با دستورات اسمبلی بود که این دستور (out) توی با ویندوز xp کار نمی کنه !

    دستوراتی توی دلفی مستقیما برای ارسال داده به پورتها وجود دارد ؟

    حسابی گیر کردم - کمک !

  2. #2
    سلام
    خوبید می توانید روی پوت کار کرد در XP مشکل دارد ولی قابل رفع هست اگر خواستید به من pm بدید

  3. #3
    کاربر دائمی آواتار Delphi Skyline
    تاریخ عضویت
    دی 1383
    محل زندگی
    شیراز
    پست
    1,174
    نه با اسمبلی نمیشه . زیرا اینتراپت ها تو 32 بیتی جواب نمی ده .
    اما شما می تونی از کامپاننت ها و DLL ها استفاده کنی .
    برای اطلاعات بیشتـــــــــــر به من PM بزنید .
    با تشکر . مهرداد .

  4. #4
    آقایون، بجای درخواست PM، سعی کنید سوالات رو همین جا جواب بدید که فردا اگه یکی دیگه هم همین مشکل رو داشت، مجبور نشه براتون PM بزنه و بتونه راحت به جواب برسه.


    وَ سَيَعْلَمُ الَّذِينَ ظَلَمُوا [آل محمد حقهم] أَيَّ مُنْقَلَبٍ يَنْقَلِبُونَ - الشعراء (227)
    و ظالمین [حق آل محمد (ص) ] به زودی خواهند دانست که به کدام بازگشتگاه بازخواهند گشت.

  5. #5
    دستوراتی توی دلفی مستقیما برای ارسال داده به پورتها وجود دارد ؟
    میتونی از API های : CreateFile و OpenFile و WriteFile و ... استفاده کنی ؛ برای جزئیات ، MSDN رو ببین . برای یک مثال :

    HANDLE CreateFile(LPCTSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDistribution, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile); 


    به عنوان نام فایل ، برای اتصال به یک پورت COM باید فرضا" بنویسی : COM1//.////

    HANDLE hCOM=CreateFile("\\\\.\\COM1",GENERIC_WRITE,0,  NULL,OPEN_EXISTING,

    FILE_FLAG_OVERLAPPED,NULL);


    اگر HANDLE مشکلی نداشت با استفاده از WriteFile و ReadFile مینویسی و میخونی ؛ قاعدتا" آخر کار از CloseFile برای آزاد کردن هندل استفاده میکنی . دو سال قبل دقیقا به همین سوال جواب دادم و کافیه فروم رو خوب بگردی تا پیداش کنی ؛ برای اغلب سوالات اوضاع دقیقا همینطوره .

    برای مطالعه در مورد جزئیات پارامترهای توابع مذکور MSDN رو ببین .


    زیرا اینتراپت ها تو 32 بیتی جواب نمی ده .
    اما شما می تونی از کامپاننت ها و DLL ها استفاده کنی
    درستش اینه که بگی ویندوز یک سیستم عامل Protected Mode سی و دو بیتی است و دسترسی مستقیم به سخت افزار از محیط کاربر یا UserLand امکان پذیر نیست و تمام کارائی سیستم توسط API کپسوله شده است .

    موفق باشید
    UNIX is simple. It just takes a genius to understand its simplicity
    -- Dennis Ritchie

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •