مشکل خواندن اطلاعات از دیتا بیس در VB.net در ویندوز 7 نسخه 64 بیتی

ms_vb

Member
سلام به همه اساتید بزرگوار مخصوصا جناب The King عزیز
یه برنامه در نسخه 32 بیتی ویندوز Seven با ویژوال استدیو 2010 نوشتم که راحت کار میکنه اما وقتی که Source این برنامه رو به محیط 64 بیتی ویندوز 7 میبرم و اونجا کامپایل میکنم با مشکل مواجه میشه و نمیتونه از Data Base اطلاعات بخونه!
کد زیر دچار مشکل میشه:
کد:
        Dim FilterConnection As New OleDb.OleDbConnection(MaghadirSharheMoshakhasehTA.Connection.ConnectionString)
        Dim MaghadirSharheMoshakhasehCommand As New OleDb.OleDbCommand(MaghadirSharheMoshakhasehTA.Adapter.SelectCommand.CommandText, FilterConnection)
        Dim MaghadirSharheMoshakhasehDataReader As OleDb.OleDbDataReader
        FilterConnection.Open()
        MaghadirSharheMoshakhasehDataReader = MaghadirSharheMoshakhasehCommand.ExecuteReader



و مقدار MaghadirSharheMoshakhasehDataReader را Nothing بر میگردونه!
ممنون میشم اگه بگید چکار کنم.
لازم به ذکره که Database هم با Access 2007 طراحی شده که روی نسخه 64 بیتی هم نصبش کردم و دیتا بیس هم همونه که روی 32 بیتی وجود داره
و وقتی که روی پنجره DataSource روی MaghadirSharheMoshakhaseh کلیک راست میکنم و Preview Data... رو انتخاب میکنم همه اطلاعات وجود داره و بهم نمایش میده!
ممنون از راهنماییهاتون
 
آخرین ویرایش:

the_king

مدیرکل انجمن
پروژه رو در ویژوال استدیو باز کنید.
منوی Project گزینه ...project name} Properties} را انتخاب کنید.
زبانه Compile را فعال کنید.
پایین ترین قسمت فرم روی دکمه ...Advanced Compile Options کلیک کنید.
Target CPU را روی x86 تنظیم کنید. اینطوری پروژه همیشه 32 بیتی کامپایل میشه، حتی روی ویندوز 64 بیتی.
مجددا پروژه را کامپایل کرده و اجرا کنید.
 

ms_vb

Member
آقا خیلی خیلی ممنون از جوابت، مشکلم حل شد.
فقط حالا اگه بخواهم برای محیط 64 برنامه بنویسم باید کار خاصی رو انجام بدم تا اطلاعات Database خوانده بشه و مقدار Nothing نده؟
بازهم ممنون از جوابت
 

the_king

مدیرکل انجمن
آقا خیلی خیلی ممنون از جوابت، مشکلم حل شد.
فقط حالا اگه بخواهم برای محیط 64 برنامه بنویسم باید کار خاصی رو انجام بدم تا اطلاعات Database خوانده بشه و مقدار Nothing نده؟
بازهم ممنون از جوابت

نرم افزار 64 بیتی نوشتن صرفا زمانی لازم و مفیده که یا نرم افزار تون به حافظه RAM بیشتر از 2 گیگابایت نیاز داره و یا بخواهید روی ویندوز 64 بیتی
نرم افزار سیستمی بنویسید، مثلا نرم افزاری که با سخت افزار ها و درایور های ویندوز 64 بیتی بصورت مستقیم در ارتباطه، وگرنه مزیتی نداره.

کار چندان خاصی نیست، باید تمامی اجزاء ای که در پروژه تون مستقیم و غیر مستقیم دخیل اند 64 بیتی باشند، یا حداقل به طریقی با نرم افزارتون
در ارتباط باشند که نوع ارتباط صریحا 32 بیتی باشه. گاهی اوقات چنین موردی عملا امکانپذیر نیست، مثلا بعضی از کمپوننت ها یا کتابخانه ها و
مخصوصا dll ها و ocx های مرسوم فقط 32 بیتی شون موجوده و با نرم افزار های 64 بیتی سازگار نیستند. در ضمن نحوه ارتباط بین نرم افزار 64 بیتی و
اجزاء 32 بیتی معمولا تحت کنترل برنامه نویس نیست. در کل باید مطمئن بشوید که همه اجزاء مرتبط با نرم افزار تون نسخه 64 بیتی شون بکاربرده می شوند،
نه فقط کد کامپایل شده برنامه تون.
 

جدیدترین ارسال ها

بالا