Error creating window handle
יש לי אפליקצית MDI. לעיתים, כאשר טופס מסויים המכיל DataGridView פתוח ואני מנסה לפתוח טופס אחר באמצעות ה-Menu, אני מקבלת שגיאת System.OutOfMemoryException עם ההודעה Error creating window handle. גיגול נמרץ הוכיח לי כי אחרים נתקלו בבעיה, וכי התשובה היתה שיש הגבלה על מספר ה-Handles שמערכת ההפעלה יכולה לייצר (רוב המקומות דיברו על 1000 Handles). העניין הוא שלא מדובר ב-Grid עם מיליוני שורות - זה קורה לי אפילו עם כמה עשרות שורות. הטופס מכיל בנוסף Menu עם 15 פקדים ועוד Menu עם 8 פקדים. האם יש דרך למנוע את הופעת השגיאה? באחד המקרים בחרתי לעקוף את הבעיה על ידי סגירת הטופס המכיל את ה-Grid לפני פתיחה של טופס אחר. אולם יש לי סיטואציה בה הדבר אינו אפשרי מבחינת הדרישות. האם יש דרך לגלות כמה handles כבר קיימים וכן לא להתקל בהגבלה הנ"ל?
יש לי אפליקצית MDI. לעיתים, כאשר טופס מסויים המכיל DataGridView פתוח ואני מנסה לפתוח טופס אחר באמצעות ה-Menu, אני מקבלת שגיאת System.OutOfMemoryException עם ההודעה Error creating window handle. גיגול נמרץ הוכיח לי כי אחרים נתקלו בבעיה, וכי התשובה היתה שיש הגבלה על מספר ה-Handles שמערכת ההפעלה יכולה לייצר (רוב המקומות דיברו על 1000 Handles). העניין הוא שלא מדובר ב-Grid עם מיליוני שורות - זה קורה לי אפילו עם כמה עשרות שורות. הטופס מכיל בנוסף Menu עם 15 פקדים ועוד Menu עם 8 פקדים. האם יש דרך למנוע את הופעת השגיאה? באחד המקרים בחרתי לעקוף את הבעיה על ידי סגירת הטופס המכיל את ה-Grid לפני פתיחה של טופס אחר. אולם יש לי סיטואציה בה הדבר אינו אפשרי מבחינת הדרישות. האם יש דרך לגלות כמה handles כבר קיימים וכן לא להתקל בהגבלה הנ"ל?