PDA

View Full Version : علت خطای Not enough storage is available to complete this operation



Delphi7_love
سه شنبه 14 بهمن 1393, 11:12 صبح
سلام
من یه پروژه دارم که چند وقته خیلی اذیت میکنه و مشکلش اینه که هر بار که اجر میکنم این خطا رو میده و باید visual stadio رو ببندم و یه بار اجرا میشه و باز برای مرتبه دوم همین مشکل هست

mrprestige
سه شنبه 14 بهمن 1393, 11:35 صبح
سلام
من یه پروژه دارم که چند وقته خیلی اذیت میکنه و مشکلش اینه که هر بار که اجر میکنم این خطا رو میده و باید visual stadio رو ببندم و یه بار اجرا میشه و باز برای مرتبه دوم همین مشکل هست

سلام وقت بخیر دوست عزیز ، این خطا موقعی ظاهر میشه برنامه برای پردازش نیاز به حافظه رم داره و اون لحظه سیستم شما با فقدان حافظه رو به رو میشه از اونجایی که احتمالا پروژه شما سنگین هست نیاز به گنجایش بیشتری از حافظه داره و احتمالا حافظه رم شما جوابگوی این مسئله نیست با این پیام مواجه میشید راه حل اول همونطور که فرمودید باید یکبار VS رو ببندید دوباره اجراش کنید و یا اینکه تمام برنامه های باعث پشت زمینه ی اضافی رو ببندید راه حل دوم افزایش حافظه ی رم هست .

Delphi7_love
سه شنبه 14 بهمن 1393, 13:20 عصر
از توضیح شما ممنونم

رم من 4 هست و پروژه من یه برنامه حسابداری هست
از جنوس استفاده کردم
آیا به نظر شما طبیعیه؟

SabaSabouhi
سه شنبه 14 بهمن 1393, 14:03 عصر
سلام
به نظر من که طبیعی نیست. باید الگوریتم برنامه رو بازنگری کنی، برنامه‌ی حسابداری برنامه‌ی سنگینی نیست.
حتا اگر اطلاعات حساب‌ها رو هم Cache کنی، باز هم دلیلی نیست که با 4 گیگ حافظه به مشکل بخوری.

صبا صبوحی

Delphi7_love
سه شنبه 14 بهمن 1393, 15:17 عصر
تشکر

من داخل program.cs
یه سری متغیر ها تعریف کردم احتمالا مشکل این متغیر ها نیستند؟



public static DevComponents.DotNetBar.SuperTabItem TPTemp = new DevComponents.DotNetBar.SuperTabItem();
public static DateTime DtDateTime = new DateTime();
public static OleDbConnection con = new OleDbConnection("Provider=SQLOLEDB.1;Password=" + Program.Dpassword + ";Persist Security Info=True;User ID=" + Program.DuserName + ";Initial Catalog=DbName;Data Source=" + Program.DserverName);
public static SqlConnection Con_Proc = new SqlConnection("Data Source='" + Program.DserverName + "';Initial Catalog=dbname;User ID=" + Program.DuserName + ";Password=" + Program.Dpassword);
public static SqlConnection DB_Con = new SqlConnection("Data Source='" + Program.DserverName + "';Initial Catalog=dbname;User ID=" + Program.DuserName + ";Password=" + Program.Dpassword);
public static string ConecctionString = "Data Source='" + Program.DserverName + "';Initial Catalog=DbName;User ID=" + Program.DuserName + ";Password=" + Program.Dpassword;
public static SqlConnection Con_ProcImage = new SqlConnection("Data Source='" + Program.DserverName + "';Initial Catalog=dbname;User ID=" + Program.DuserName + ";Password=" + Program.Dpassword);
public static OleDbConnection conImage = new OleDbConnection("Provider=SQLOLEDB.1;Password=" + Program.Dpassword + ";Persist Security Info=True;User ID=" + Program.DuserName + ";Initial Catalog=DbName;Data Source=" + Program.DserverName);
public static string ConecctionStringImage = "Data Source='" + Program.DserverName + "';Initial Catalog=Dbname;User ID=" + Program.DuserName + ";Password=" + Program.Dpassword;
public static string DserverName;
public static string DuserName;
public static string Dpassword;
public static bool InsertUser;
public static string ResultId { get; set; }
public static string ResultId2 { get; set; }
public static string ResultNoe { get; set; }
public static string ResultNoe2 { get; set; }
public static string MultiSelectId { get; set; }
public static string MultiSelectStr { get; set; }
public static string DateNow { get; set; }
public static string DateNowServer { get; set; }
public static string FirstDate { get; set; }
public static string EndDate { get; set; }
public static string DateHorofi1;//
public static string DateHorofi2;//
public static int[] StrShortCut { get; set; }
public static int IdNoeSoft { get; set; }
public static bool BaOnOrOff = true;
public static float NetWieght = 0;
public static string DefNumPelak;
public static string P1;
public static string P2;
public static string P3;
public static string P4;
public static string Pelak;
public static DataTable Dt_InfoReport = new DataTable();
public static Stimulsoft.Report.StiReport ResStireport = new Stimulsoft.Report.StiReport();
public static int MLenGHesab { get; set; }
public static int MLenHesabKol { get; set; }
public static int MLenHesabMoin { get; set; }
public static int ALenCodGFariKala { get; set; }
public static int ALenCodKala { get; set; }
public static char[] Permiss1 { get; set; }
public static char[] Permiss2 { get; set; }
public static char[] Permiss3 { get; set; }
public static char[] Permiss4 { get; set; }
public static char[] Permiss5 { get; set; }
public static char[] PermissPublic { get; set; }
public static char[] StrSettingMali { get; set; }
public static char[] StrSettingKhazane { get; set; }
public static char[] StrSettingForoosh { get; set; }
public static char[] StrSettingAnbar { get; set; }
public static char[] StrSettingMasale { get; set; }
public static char[] StrSettingBeton { get; set; }
public static char[] StrSettingBaskool { get; set; }
public static char[] StrSettingMadan { get; set; }
public static char[] StrSettingSoft { get; set; }
public static char[] StrSettingItems { get; set; }
public static char[] StrSettingUserShowPrint;
public static char[] StrSettingUserPublic;
public static string IdCompony;//
public static string NameCompony;//
public static string Tel1;//
public static string Tel2;//
public static string Mob1;//
public static string Mob2;//
public static string Fax;//
public static string Adres;//
public static string CodEghtesadi;//
public static string CodPosti;//
public static string CodSabt;//
public static string Modir;//
public static string Ostan;//
public static string Shahr;//
public static int IdUserActive { get; set; }
public static string UserName;//
public static string Id_Karmand;//
public static string Name_Karmand;//
public static string Cod_Goro;//
public static string Name_Goro;//
public static string Password;//
public static int IdDefMarkaz { get; set; }
public static int IdDefAnbar { get; set; }
public static int IdDefSandoogh { get; set; }

SabaSabouhi
سه شنبه 14 بهمن 1393, 15:24 عصر
سلام
نه دوست من، مشکل اینا نیستن.
شما یه کاری کن، TaskManager رو باز کن، بعد برنامه رو دیباگ کن! با اجرای هر قسمت میزان مانده‌ی حافظه رو کنترل کن.
بعد خودت متوجه می‌شی که چه قسمتی داره حافظه رو می‌خوره.
البته نرم‌افزارهایی خاص این کار هم وجود داره، اما همین TaskManager هم جواب می‌ده.

صبا صبوحی

Delphi7_love
سه شنبه 14 بهمن 1393, 19:21 عصر
سلام
نه دوست من، مشکل اینا نیستن.
شما یه کاری کن، TaskManager رو باز کن، بعد برنامه رو دیباگ کن! با اجرای هر قسمت میزان مانده‌ی حافظه رو کنترل کن.
بعد خودت متوجه می‌شی که چه قسمتی داره حافظه رو می‌خوره.
البته نرم‌افزارهایی خاص این کار هم وجود داره، اما همین TaskManager هم جواب می‌ده.

صبا صبوحی


بله تست کردم ولی تنها در لحظه نمایش خطا 1.5 گیگ از حافظه اشغاله و من فکر میکنم به خاطر اتمام رم نباشه
دوستان لطفا راهنمایی کنید

Delphi7_love
سه شنبه 14 بهمن 1393, 20:22 عصر
دوستان کسی با این مشکل روبرو نشده؟

SabaSabouhi
چهارشنبه 15 بهمن 1393, 12:35 عصر
سلام
می‌تونی تشخصی بدی که کدوم متد یا کاری که انجام می‌دی باعث این مشکل می‌شه؟
بدون شک یه کار اشتباه تو کد انجام دادی، باید اول پیدا کنی کدوم قسمت این مشکل پیش میاد بعد
اون اشتباه رو اصلاح کنی.

صبا صبوحی

Delphi7_love
جمعه 17 بهمن 1393, 23:20 عصر
چطور متدی که مشکل داره رو پیدا کنم؟

در ضمن در پنجره output پیام زیر رو نشون میده

fatal error CS0013: Unexpected error writing metadata to file 'D:\Programing\01-hesabdariNewHesabdari\obj\Debug\HesabdariKiasystem .exe' -- 'Not enough storage is available to complete this operation. '

SabaSabouhi
شنبه 18 بهمن 1393, 09:35 صبح
سلام
یک بار source رو بخصوص قسمت‌های مشکوک رو یه بار مرور کن. اگه مشکل حل نشد
اون فرمی که این مشکل رو پیش میاره، همه‌اش رو کامنت کن، باید مشکل حل بشه.
تکه تکه از کامنت در بیار، وقتی مشکل برگشت مشخص می‌شه کدام متد یا فرمان
داره اذیت می‌کنه. بعد دقیق‌تر بررسی کن و مشکل رو حل کن.

صبا صبوحی

Delphi7_love
یک شنبه 10 اسفند 1393, 10:39 صبح
من چطور میتونم فرمی که مشکل داره رو پیدا کنم؟
من فقط اومدم خیلی از فرمها حذف کردم و سرعت نرم افزار افزایش پیدا کرد
در ضمن قبلا اینطور بود که در حال اجرا میتونستم روی پروژه تغییرات بدم ولی از چند مدت قبل دیگه اجازه نمیده و حالا که یه سری فرمها رو حذف کردم باز درست شد
لطفا دوستان محترم راهنمایی کنید چکار کنم بدون حذف فرمهام مشکل رو حل کنم

milad_tensy
یک شنبه 05 مهر 1394, 18:59 عصر
سلام دوستان
منم مثل این دوستمون به همین مشکل برخوردم ..........................
کسی راه حلی پیدا کرده با خیر ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟ ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟ ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟

ژیار رحیمی
یک شنبه 05 مهر 1394, 22:17 عصر
دوست گرامی اون بخش از کد رو بزار تا ببینیم مشکل از کجاست