PDA

مشاهده نسخه کامل : برنامه در روی ویندوز 7 ،64 bit ، کار نمی کند؟!!



softsoft
31-12-10, 11:42
سلام من يه برنامه با VS 2008 نوشتم و ستاژ كردم دادم به يه نفر ولي به من گفت :
روی ویندوز 7 ،64 bit ، کار نمی کند چرا ؟ چيكار بايد بكنم؟

به چند نفر دیگه هم دادم و اکثرا گفتن که روی ویندوز 7 - 64 بیتی مشکل داره و یکی دیگه هم بهم اینو گفت :


موقع نصب توی ویندوز 7 این خطا رو میده :
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.Runtime.InteropServices.COMException (0x800A000D): Type mismatch
at ShamsiDLL.ClassShamsiClass.ShamsiMonthName(String& shdate)
at JvD_Sun_Calendar_4.FrmMain.ShamsiMonthName(String shdate)
at JvD_Sun_Calendar_4.FrmMain.FrmMain_Load(Object sender, EventArgs e)
at System.EventHandler.Invoke(Object sender, EventArgs e)
at System.Windows.Forms.Form.OnLoad(EventArgs e)
at System.Windows.Forms.Form.OnCreateControl()
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.WmShowWindow(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Mes sage& m)
at System.Windows.Forms.ContainerControl.WndProc(Mess age& m)
at System.Windows.Forms.Form.WmShowWindow(Message& m)
at System.Windows.Forms.Form.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.O nMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.W ndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

************** Loaded Assemblies **************
mscorlib
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
JvD Sun Calendar 4.0
Assembly Version: 4.0.0.0
Win32 Version: 4.0.0.0
CodeBase: file:///C:/Program%20Files/JvD%20Sun%20Calendar/JvD%20Sun%20Calendar%204.0.exe


با توجه به خطای بالا و کد :

CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll

میشه اینو استنباط کرد که نسخه Framework این سیستم 2 هست ؟
آخه برنامه به نسخه 3.5 از وریم ورک نیاز داره .
من قبلا از یکی پرسیده بودم گفته بود ویندوز 7 و ویستا از نسخه 3.5 استفاده می کنند .
درست گفته بود؟
و همین طور یکی دیگه گفت که :


سلام دوست عزیز
برنامتون رو نصب کردم
ویندوز من 32 بیت 7 هست
کلا برنامه بالا نمیومد
هیچ کدوم از منو ها بالا نمیومد
حتی صفحه اصلی هم نشون داده نمیشد
ممنون میشم پیگیری کنید

AMD>INTEL
31-12-10, 22:19
تو حالت سازگاري چي جواب نداد ؟

MoBiN.R
01-01-11, 10:46
سلام من يه برنامه با VS 2008 نوشتم و ستاژ كردم دادم به يه نفر ولي به من گفت :چرا ؟ چيكار بايد بكنم؟

به چند نفر دیگه هم دادم و اکثرا گفتن که روی ویندوز 7 - 64 بیتی مشکل داره و یکی دیگه هم بهم اینو گفت :



با توجه به خطای بالا و کد :

CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll

میشه اینو استنباط کرد که نسخه Framework این سیستم 2 هست ؟
آخه برنامه به نسخه 3.5 از وریم ورک نیاز داره .
من قبلا از یکی پرسیده بودم گفته بود ویندوز 7 و ویستا از نسخه 3.5 استفاده می کنند .
درست گفته بود؟
و همین طور یکی دیگه گفت که :

دوست عزیز برنامه های 32 بیت بر روی ویندوز های 64 بیتی به خوبی کار میکنند ( البته در حالت WoW64 ) .. من همین الان ویندوز سون 64 بیت دارم و حتی روی اون ویژوال بیسیک 6 هم به خوبی نصب کردم ...چند احتمال میشه داد .. یکی اینکه نسخه فریم ورک خیلی قدیمیه .. از VS 2010 با .Net Framework 4 آستفاده کنید .. در ضمن فکر نمیکنم این ارور ها ربطی به ویندوز 64 بیت داشته باشه . شما خودتون میگید برنامه نیاز به 3.5 داره . در حالی که سیستم عامل های 7 و ویستا نیاز به فریم ورک های بالاتری دارند .. شما قبل از نصب برنامه فریم ورکی که برنامهتون نیاز داره نصب کنید و سپس برنامه رو نصب کنید .

haririan
02-09-11, 14:46
من پروژه ای دارم که هنگام debug مقادیر موجود در datatable و چیز های دیگه را نشون نمیده و اینو میگه
System::ComponentModel::MarshalByValueComponent^ = 0x0000000002aa9e90 { EventDisposed=0x0000000002abc050 site=<undefined value> events=0x0000000002abc068 }
ویندوز من 64 بیتی هستش توی 32 بیتی خوب کار میکرد ارتقاء دادم این بلا سرم اومد چه کنم ؟

ravegoat
04-09-11, 22:27
من پروژه ای دارم که هنگام debug مقادیر موجود در datatable و چیز های دیگه را نشون نمیده و اینو میگه
System::ComponentModel::MarshalByValueComponent^ = 0x0000000002aa9e90 { EventDisposed=0x0000000002abc050 site=<undefined value> events=0x0000000002abc068 }
ویندوز من 64 بیتی هستش توی 32 بیتی خوب کار میکرد ارتقاء دادم این بلا سرم اومد چه کنم ؟

دوست گرامي عضويت شما رو در PCN تبريك مي گم.

دات نت در پشتيباني از نسخه هاي 32 و 64 بيتي ويندوز در حالت كلي مشكلي نداره و مشكلات عدم سازگاري با يك گونه ي خاص عموما" به دليل عدم سازگاري اجزاي برنامه هستش.
از جمله ي اين اجزا Microsoft Jet OLEDB 4.0 هستش كه يك عنصر مهم در برنامه هاي پايگاه داده است كه تنها از نسخه هاي 32 بيتي ويندوز پشتيباني مي كنه.

پيشنهاد مي كنم شما برنامه ي خودتون را از طريق زير به صورت 32 بيتي كامپايل كنيد تا برنامه ي شما مطابق با معماري x86 اجرا بشه:
پروژه رو با Visual Studio باز كنيد. از منوي Project گزينه ي يكي مونده به آخر يعني Properties مربوط به پروژه رو انتخاب كنيد. سپس در پنجره ي باز شده، وارد مجموعه ي Build بشيد. بعد در بخش General همين زبانه به دنبال گزينه ي Platfrom Target بگرديد و از طريق منوي كركره اي روبروش گزينه ي x86 رو انتخاب كنيد. در آخر تغييرات رو ذخيره كنيد و پروژه رو مجددا كامپايل كنيد.

به علاوه شما مي تونيد از نسخه هاي 64 بيتي ODBC (Only the registered members can see the link)هم در صورت رفع نشدن مشكل استفاده كنيد. توجه به نكاتي در اين مقاله (Only the registered members can see the link)در رابطه با ارتقاي پلتفرم نرم افزار مي تونه مفيد باشه.

موفق باشيد
آرمين