تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




صفحه 6 از 8 اولاول ... 2345678 آخرآخر
نمايش نتايج 51 به 60 از 77

نام تاپيک: برنامه نویسی در ویندوز

  1. #51
    اگه نباشه جاش خالی می مونه bahareh655's Avatar
    تاريخ عضويت
    Nov 2007
    محل سكونت
    بالای نَوَردِوون-نزدیک پُشت بون
    پست ها
    266

    پيش فرض

    ضمن عرض سلام و تشکر مجدد
    راستش من تمام اون مراحلی که شما فرمودین رو انجام دادم ولی متاسفانه بازم با همون 102 تا ارورر مواجه شدم که بیشتر از فایل cspdk.h می گرفت،اینم عکسش:

    می تونم بپرسم شما از کدوم ورژن ویژوال استودیو استفاده می کنید؟
    من از ورژن 6 استفاده می کنم،امکان داره به خاطر این باشه؟ یعنی اگه از ورژن 8 (2005 ) یا 9 (2008 ) استفاده کنم،دیگه این ارورها رو نبینم؟
    در ضمن شما فایل های cspdk.h و wincrypt.h رو توی پوشه include جایی که ویژوال ++C نصب شده ،کپی نمی کنین؟ یعنی فقط همون add کردن به پروژه کافیه؟
    ممنون

  2. #52
    اگه نباشه جاش خالی می مونه bahareh655's Avatar
    تاريخ عضويت
    Nov 2007
    محل سكونت
    بالای نَوَردِوون-نزدیک پُشت بون
    پست ها
    266

    پيش فرض

    ببخشید یه چیز دیگه!
    بعد از کامپایل کد cspinstl ، یعنی برنامه ای که csp رو وارد رجیستری سیستم کنه،آیا یه registery entry ایجاد میشه؟
    منظورم از رجیستری entry هم چین فایلیه (یعنی شبیه این فایل برای وارد کردن csp به لیست رجیستری ویندوز):

    لطفا اگه می تونین تا امشب جواب بدین،ممنون

  3. #53
    پروفشنال hoax3r's Avatar
    تاريخ عضويت
    Oct 2007
    پست ها
    699

    پيش فرض

    می تونم بپرسم شما از کدوم ورژن ویژوال استودیو استفاده می کنید؟
    من از ورژن 6 استفاده می کنم،امکان داره به خاطر این باشه؟ یعنی اگه از ورژن 8 (2005 ) یا 9 (2008 ) استفاده کنم،دیگه این ارورها رو نبینم؟
    از نسخه 6 ، اون dll هم که داخل اون بسته بود و شما لینک دانلودش رو داده بودین با همین ورژن کامپایل شده

    در ضمن شما فایل های cspdk.h و wincrypt.h رو توی پوشه include جایی که ویژوال ++C نصب شده ،کپی نمی کنین؟
    من تو پوشه ای که پروژه رو ایجاد کردم کپیشون کردم. اون سورسی که قبلا کامپایل کردم رو باز یه نگاهی بکنید
    ببینید همون رو با همون تنظیمات میتونید کامپایل کنید اگه مشکلی نداره روی همون هر کاری می خواید انجام بدین

    شاد باشید

  4. این کاربر از hoax3r بخاطر این مطلب مفید تشکر کرده است


  5. #54
    پروفشنال hoax3r's Avatar
    تاريخ عضويت
    Oct 2007
    پست ها
    699

    پيش فرض

    ببخشید یه چیز دیگه!
    بعد از کامپایل کد cspinstl ، یعنی برنامه ای که csp رو وارد رجیستری سیستم کنه،آیا یه registery entry ایجاد میشه؟
    منظورم از رجیستری entry هم چین فایلیه (یعنی شبیه این فایل برای وارد کردن csp به لیست رجیستری ویندوز):

    لطفا اگه می تونین تا امشب جواب بدین،ممنون
     
    من به این شکل تست کردم و یه کلید به نام CSP Provider به رجیستری اضافه شد
    فایلهای CSP.DLL و CSPINSTL.EXE و csp.sig و TESTCSP.EXE رو تو پوشه system32 بریزین
    با این دستور فایلی به نام cspsign ایجاد میشه 
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    بعد با دستور cspinstl.exe کلید به رجیستری اضافه میشه این مسیر
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
     
    شاد باشید

  6. این کاربر از hoax3r بخاطر این مطلب مفید تشکر کرده است


  7. #55
    اگه نباشه جاش خالی می مونه bahareh655's Avatar
    تاريخ عضويت
    Nov 2007
    محل سكونت
    بالای نَوَردِوون-نزدیک پُشت بون
    پست ها
    266

    پيش فرض

    سلام
    واقعا ببخشید که دوباره میپرسم
    من تمام اون مراحلی که شما نوشتین رو انجام دادم
    ولی پوشه این شکلی میشه

    علت وجود دو تا پوشه debug و release اینه که بعد از انتخاب win32 dll در ویژوال استودیو،و وارد کردن فایل ها،قبل از کامپایل ، مد release رو انتخاب می کنم،ولی نمی دونم چرا هم پوشه debug ایجاد میشه و هم release ؟
    در صورتیکه در پوشه ای که شما csp رو کامپایل کرده بودین،فقط فولدر release وجود داشت!
    علتش چیه؟
    یعنی شما چه موقع حالت release رو انتخاب کردین که فقط پوشه release موجوده؟

    محتویات موجود در پوشه ای که آپلود کردین اینه:


    چرا با اینکه من بعد از ایجاد یه dll خالی تمام فایل ها رو به پروژه add می کنم،همه فایل ها در پوشه مربوط به پروژه ای که ایجاد کردم قرار نمی گیره؟
    واقعا نمی دونم چی کار کنم؟!
    اول فکر می کردم چون ورژن ویژوال استودیو من 6 هست،این مشکلات پیش می یاد،ولی شما هم گفتین که از ورژن 6 استفاده می کنین!
    به نظرتون من کجای کار رو اشتباه می کنم؟

    البته بعد از اینکه فایل ها رو add می کنم،توی لیست، فایل csp.rc به جای اینکه تو بخش resource files باشه،تو بخش source flies قرار می گیره!
    تو دو تا پست قبلی شکلش هست،به نظر تون اشکال از این جا هست یا از کجا میتونه باشه؟
    لطفا تا حد ممکن کمکم کنید،دیگه نمی دونم چی کار باید بکنم؟

  8. #56
    پروفشنال hoax3r's Avatar
    تاريخ عضويت
    Oct 2007
    پست ها
    699

    پيش فرض

    علت وجود دو تا پوشه debug و release اینه که بعد از انتخاب win32 dll در ویژوال استودیو،و وارد کردن فایل ها،قبل از کامپایل ، مد release رو انتخاب می کنم،ولی نمی دونم چرا هم پوشه debug ایجاد میشه و هم release ؟
    در صورتیکه در پوشه ای که شما csp رو کامپایل کرده بودین،فقط فولدر release وجود داشت!
    علتش چیه؟
    یعنی شما چه موقع حالت release رو انتخاب کردین که فقط پوشه release موجوده؟
    من برای اینکه حجم فایل که آپلود کردم کم باشه فایل ها و پوشه های بدرد نخور رو از توش پاک کردم
     
    چرا با اینکه من بعد از ایجاد یه dll خالی تمام فایل ها رو به پروژه add می کنم،همه فایل ها در پوشه مربوط به پروژه ای که ایجاد کردم قرار نمی گیره؟
    واقعا نمی دونم چی کار کنم؟!
    اول فکر می کردم چون ورژن ویژوال استودیو من 6 هست،این مشکلات پیش می یاد،ولی شما هم گفتین که از ورژن 6 استفاده می کنین!
    به نظرتون من کجای کار رو اشتباه می کنم؟
     
    البته بعد از اینکه فایل ها رو add می کنم،توی لیست، فایل csp.rc به جای اینکه تو بخش resource files باشه،تو بخش source flies قرار می گیره!
    تو دو تا پست قبلی شکلش هست،به نظر تون اشکال از این جا هست یا از کجا میتونه باشه؟
    لطفا تا حد ممکن کمکم کنید،دیگه نمی دونم چی کار باید بکنم؟
     
    راستش نمیدونم هر چی که خودم انجام داده بودم رو گفتم، ولی برای اینکه در این مورد به نتیجه برسین من فیلم کوتاهی از کاری
    که خودم انجام میدم درست کردم امیدوارم مشکلتون رو حل کنه حجمش 674 کیلوبایته خیلی سعس کردم حجمش کم باشه
    اگه هنوز با کامپایل مشکل دارین از این لینک میتونید دانلود کنیدش
     
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
     
     
    شاد باشید
    Last edited by hoax3r; 02-01-2009 at 23:51.

  9. این کاربر از hoax3r بخاطر این مطلب مفید تشکر کرده است


  10. #57
    اگه نباشه جاش خالی می مونه bahareh655's Avatar
    تاريخ عضويت
    Nov 2007
    محل سكونت
    بالای نَوَردِوون-نزدیک پُشت بون
    پست ها
    266

    پيش فرض

    سلام
    ببخشید اگه ممکنه بفرمایید فرق load-time dynamic linking با run-time dynamic linking چیه؟
    توضیحات موجود در msdn رو دیدم،ولی ظاهرا توی همین برنامه csp ، از load-time linking استفاده شده!
    می خواستم ببینم مزیت کدوم یکی بیشتره؟
    یه سوال دیگه:
    آیا برای ساختن هر فایل dll ، حتما باید یه فایل def. یا h. هم تعریف کرد تا دو تا فایل dll و lib ساخته بشه؟
    ممنون میشم اگه مثل همیشه راهنمایی کنید

  11. #58
    پروفشنال hoax3r's Avatar
    تاريخ عضويت
    Oct 2007
    پست ها
    699

    پيش فرض

    ببخشید اگه ممکنه بفرمایید فرق load-time dynamic linking با run-time dynamic linking چیه؟
    توضیحات موجود در msdn رو دیدم،ولی ظاهرا توی همین برنامه csp ، از load-time linking استفاده شده!
    می خواستم ببینم مزیت کدوم یکی بیشتره؟
    کار با load-time dynamic linking راحتتر است چون شما فقط نام توابع رو مینویسید و استفاده میکنید مثل برنامه csp که خودتون هم بهش اشاره کردین

    ولی در run-time dynamic linking باید با توابع LoadLibrary و GetProcAddress کتابخانه مربوطه لود و آدرس تابع های مورد نیاز گرفته بشه تا بتونیم از توابع استفاده کنیم
    مثلا اگه یه dll به نام test.dll داشته باشیم که بخواهیم تابعی به نام MyFunction رو فراخانی کنیم باید همچین کدی بنویسیم

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    ولی همین تابع در load-time dynamic linking به راحتی با این دستور قابل دسترسی هست
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    آیا برای ساختن هر فایل dll ، حتما باید یه فایل def. یا h. هم تعریف کرد تا دو تا فایل dll و lib ساخته بشه؟
    ممنون میشم اگه مثل همیشه راهنمایی کنید
    نه لزوما، ولی وقتی یه dll با مثلا 100 تابع می سازیم حالا اگر بخوایم این رو در یه برنامه استفاده کنیم تعریف تک تک توابع
    در برنامه کار خسته کننده هست برای همین تمام تعریفات توابع در یک فایل h. قرار میگیره تا راحت هر جا خواستیم
    کنار برنامه کپی کنیم و از توابع استفاده کنیم

    و در مورد def. فایل خوب یه dll یکسری توابع رو اصطلاحا export میکنه که قابل استفاده در دیگر برنامه ها باشه
    حالا به طریقی کامپایلر باید این توابع رو بشناسه یه راه استفاده از همین فایل هست. اگه ما اینو تعریف نکنیم
    در نتیجه dll تابعی export نمیکنه و ما هم نمیتوانیم از اون توابع استفاده کنیم

    برای اینکه موضوع براتون روشن تر بشه خوبه که مثلا ببینیم یه dll چه توابعی رو export میکنه
    و بد نیست با ابزار dumpbin که همراه ویزوال استادیو هم هست آشنا بشیم

    این ابزار در این پوشه است
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    و اینجوری میشه توابع Export شده یه dll رو مشاهده کرد،
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    خوبه خودتون یه بار برنامه رو یک بار بدون فایل def. و یک بار هم حالتی که این فایل وجود داره dll رو کامپایل کنید و نتیجه رو ببینید.

    شاد باشید

  12. این کاربر از hoax3r بخاطر این مطلب مفید تشکر کرده است


  13. #59
    اگه نباشه جاش خالی می مونه bahareh655's Avatar
    تاريخ عضويت
    Nov 2007
    محل سكونت
    بالای نَوَردِوون-نزدیک پُشت بون
    پست ها
    266

    پيش فرض

    سلام
    ببخشید من این نمونه کدها رو از سایت msdn گرفتم ،نمونه کد ساده ایه که بعد از توضیح فایل های dll گذاشته شده؛
    کد مربوط به dll :
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

    کد صدا زننده ی dll در حالت load-time :

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید


    کد صدا زننده ی dll در حالت run-time :

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    راستش من این سه تا برنامه رو در سه پروژه ی جداگانه کامپایل کردم که هر سه تاشون بدون ارور و وارنینگ کامپایل شدن.
    ولی تو نوشتن فایل هدر که بتونه توابع رو export کنه، دچار مشکل شدم، یعنی یه فایل از نوع text به پروژه ی مربوط به برنامه dll (فایل myputs ) اضافه کردم و تابع myputs رو توش اعلان کردم و ...
    بعد از این کار که برنامه ی dll رو اجرا کردم، 2 تا ارور لینک داد، خودم فکر می کنم فایل هدرش رو اشتباه نوشتم!
    اگه ممکنه کدهای مربوط به یه فایل هدر که بتونه این برنامه ها رو اجرا کنه، اینجا بذارید که بشه dll و lib رو ساخت و تو دو تا برنامه load-time و run-time ازش استفاده کرد!
    اگه موفق به اجرای برنامه ها شدین،لطفا بفرمایین خروجی برنامه چیه؟ (یعنی بعد از اجرا ، تو دو برنامه فراخوان در حالت load و run ،خروجی رو چی می بینیم؟)
    در ضمن با توجه به فرق بین فایل h. و def. ، باید کدوم یکی رو تولید کنیم؟

    - پس از این به بعد هر سورس کد مربوط به یه dll که پیدا کردیم،اگه خواستیم تو برنامه های کاربردی دیگه ازش استفاده کنیم،باید حتما یه فایل h. و def. هم تولید کنیم دیگه! درسته؟


    - یه سوال دیگه:
    اگه من بخوام یه سری توابع به اون نمونه کد قالب csp اضافه کنم،(مثلا یه الگوریتم hash یا یه الگوریتم cryptography (رمزنگاری) به اون قالب های تابع cryptoAPI ای که در کد CSP موجوده (همون 23 تا تابع) اضافه کنم،آیا باید هدر فایل و فایل def اش رو هم تغییر بدم؟
    اصلا قواعد و دستورات نوشتن یه هدر فایل برای فایل های dll چه جوریه(در این مورد اگه لینکی که هم دستورات رو توضیح داده باشه و هم چند نمونه مثال داشته باشه،معرفی کنین ممنون میشم)

    - در مورد این دستور:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    که برای مشاهده ی فایل های Export شده بود، من اینو تو محیط command کپی کردم و نتیجه اش این شد:

    در ضمن برنامه ویژوال استودیوی من (برنامه Dumpbin.exe ) دردرایو C و ویندوز (یعنی در واقع Cmd.exe ) در درایو D قرار داره ،امکان نداره به خاطر متفاوت بودن درایوها این ارور رو بده یا اینکه اصلا فایل csp.dll باید کجا قرار داشته باشه؟

    ممنون

  14. #60
    اگه نباشه جاش خالی می مونه bahareh655's Avatar
    تاريخ عضويت
    Nov 2007
    محل سكونت
    بالای نَوَردِوون-نزدیک پُشت بون
    پست ها
    266

    پيش فرض

    سلام
    ببخشید یه سوال دیگه!
    من تو کامپایل برنامه زیر دچار مشکل شدم:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    این برنامه، کد الگوریتم AES (یه الگوریتم رمزنگاری در ویندوز) هستش،وقتی که اونو کامپایل می کنم،این سه تا ارور رو میده:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    در ضمن در برنامه، هدر فایل<bcrypt.h > رو هم به "bcrypt.h " تغییر دادم،ولی باز این سه تا ارور رو داد!
    به نظرتون چی کار باید بکنم؟

    ممنون

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •