وبلاگ تخصصي برنامه نويسي با VB

پاسخ به سوالات-۲


1 – زمانيکه از کنترل Winsock در وی بی استفاده می کنم خطای رجيستر نبودن می گيرم ؟
پاسخ : سرويس پک 5 مربوط به ويژوال استديو 6 را از اين آدرس دانلود کرده و نصب کنيد تا نسخه کنترل Winsock شما ارتقا يابد .
در صورتيکه مشکلتان حل نشد می توانيد از WinSock API نيز استفاده کنيد . اين API را بعداً شرح خواهم داد اما فعلاً از اين آدرس نيز می توانيد کمک بگيريد .

2 – چگونه می توان تصاوير را در بانک اطلاعاتی ذخيره کرد ؟
پاسخ : برای اينکار اولاً بايستی فيلدی را در جدول بانک اطلاعاتی خود از نوع باينری ايجاد کنيد . سپس بايستی فايل مورد نظر خود را باز کرده و آنرا درون يک آرايه از نوع بايت کپی کنيد . حال می توانيد اين آرايه را بعنوان مقدار فيلد در جدول مورد نظر قرار دهيد :
روش ديگر استفاده از ADO Stream است .
در اين آدرس و اين آدرس و اين آدرس می توانيد اطلاعات بيشتر همراه با برنامه های نمونه بدست آوريد .


3 – آيا می توان از Microsoft Form 2 Control بدون نصب برنامه Word استفاده کرد ؟
پاسخ : ايندو تا ربطی بهم ندارند .

4 – چگونه می توان برنامه ای شبيه Yahoo Messenger نوشت ؟
پاسخ : برای اينکار شما بايستی با مبحث Network Programming با استفاده از Winsock آشنا باشيد . برای اطلاع بيشتر به آرشيو موضوعی وبلاگ مراجعه کنيد .

5 – نحوه کار با کامپوننتهای OXC را در وی بی توضيح دهيد .
پاسخ : اگر می خواهيد خودتان کنترل OCX بنويسيد می توانيد از کتاب Internet Programming in Visual Basic 6 که انتشارات نص نيز آنرا ترجمه کرده کمک بگيريد . اما اگر می خواهيد از کنترلهای OCX موجود در خود وی بی استفاده کنيد از منوی Project وارد Component شده و کامپوننت مورد نظرتان را انتخاب کنيد تا به نوار ابزار اضافه شود . توضيحات هر کامپوننت را می توانيد در سايت MSDN يا سی دی های MSDN بدست آوريد .

6 – چگونه می توان دو دستور را بطور همزمان در وی بی اجرا کرد ؟
پاسخ : برای اينکار بايستی از امکان Threading ويندوز استفاده کنيد . برای اين منظور تعدادی API وجود دارد که می توانيد از آنها کمک بگيريد . برای اطلاعات بيشتر به نرم افزار API Guide و بخش Thread آن مراجعه کنيد .


7 – تفاوت Module و Class Module را در وی بی توضيح دهيد .
پاسخ : Class Module برای نوشتن کلاس ( برنامه نويسی شی گرا OOP ) در وی بی استفاده می شود . البته وی بی 6 تمام امکانات برنامه نويسی شی گرا را ندارد مثلاً بطور کامل از وراثت پشتيبانی نمی کند يا امکان ايجاد کلاسهای Abstract را ندارد و نيز دارای امکان تعريف متدها و متغيرهای اشتراکی نيست . در صورتيکه بخواهيد از تمام امکانات شی گرايي استفاده کنيد سراغ VB.NET برويد .
اما Module برای تعريف يکسری ثابت ، متغير ، تابع و يا روتين بکار می رود که در تمام پروژه استفاده می شوند . برای مثال Declare های توابع API را در ماژول قرار می دهيم .

8 -  من با کدی که قبلاً برای باز و بسته کردن در سی دی رام گفته بوديد مشکل دارم .
پاسخ : ابتدا يک ماژول به پروژه تان اضافه کنيد و خط زير را در آن قرار دهيد :

Public Declare Function mciSendString Lib “winmm.dll"  Alias "mciSendStringA” (ByVal lpstrCommand As String,ByVal lpstrReturnString As String, ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long


حال می توانيد توابع OpenCDDoor و CloseCDDoor را در کد فرمتان قرار داده و آنها را صدا بزنيد :

Sub OpenCDDoor()

  mciSendString “Set CDAudio Door Open Wait”, 0&, 0&, 0&

End Sub

 

Sub CloseCDDoor()

  mciSendString “Set CDAudio Door Closed Wait”, 0&, 0&, 0&

End Sub


9 – چگونه می توان در وی بی فرمهای غير مستطيلی به شکلهای زيبا درست کرد ؟
پاسخ : اين مطلب قبلاً در اين وبلاگ توضيح داده شده است . به اينجا مراجعه کنيد .


10 – چگونه می توان کاری کرد که در حين اجرای برنامه کاربر بتواند دستوری را در يک TextBox تايپ کند و با زدن يک دکمه آن دستور اجرا شود ؟
پاسخ : برای اينکار بايستی از Microsoft Script Control استفاده کنيد . ابتدا وارد بخش References شده و اين مورد را به پروژه تان اضافه کنيد . حال می توانيد از کد زير استفاده کنيد :

  Dim script As ScriptControl
  Set script = New ScriptControl
  script.Language = "VBSCript"
  script.ExecuteStatement (Text1.Text)

 

11 – چگونه می توان از Microsoft Speech Library در وی بی استفاده کرد ؟
پاسخ : در آينده اين مطلب را توضيح خواهم داد . اما فعلاً می توانيد از اين آدرس و اين آدرس و اين آدرس استفاده کنيد .


12 – چگونه می توان ActiveX های ايجاد شده توسط وی بی را در وب استفاده کرد ؟
پاسخ : برای اينکار ابتدا پروژه ای از نوع ActiveX Document ايجاد کنيد . کد مورد نظرتان را در پروژه بنويسيد و سپس پروژه را کامپايل کنيد . نهايتاً توسط ابزاری به اسم Package & Deployment Wizard که در ويژوال استديو موجود است می توانيد پروژه خود را قابل استفاده در وب کنيد . برای اطلاعات بيشتر به از کتاب Internet Programming in Visual Basic 6 که انتشارات نص نيز آنرا ترجمه کرده مراجعه کنيد .


+ به ساير سوالها نيز بزودی پاسخ داده می شود .

 

+ حامد شیدائیان ; ۸:۳٢ ‎ق.ظ ; دوشنبه ٥ آبان ،۱۳۸٢
comment نظرات ()