سلام
چندتا مساله
- شما تصویر را با چه نامی ذخیره میکنید؟ در آدرس باید نام و پسوند فایل هم مشخص کنید در غیر اینصورت فایل بدون Extension ذخیره میشه.
- این خطا برای من هم ایجاد میشه ولی در مسیرهای غیر از درایو C خطا نمیده و تصویر ذخیره میشه. باید مجوزها را احتمالا بررسی کنید.
- چرا از Panel استفاده کردید و متد DrawToBitmap را فراخوانی کردید؟ پس نقش PictureBox چیه؟
- چه لزومی داشته سایز تصویر را بر مبنای سایز Panel تنظیم کنید؟
- گویا تصویر موجود در PictureBox در کدها استفاده نشده.
کاربرد دستور DrawToBitmap
- فرض کنید یک شیء روی فرم قرار دادید. مثل Panel و یا PictureBox.
- حالا فرض کن در Panel چند تا دکمه قرار دادی و یک تصویر کوچک و....
- حالا اگر بخواهی تمام فضای قابل روئیت همان Panel رو با تمام اشیاء داخلش به تصویر تبدیل کنید میتونید از این دستور استفاده کنید.
- البته کاربردهای دیگه ای هم میتونه داشته باشه. مشابه کاری که کردید. احتمالا PicturBox داخل Panel هست و با این روش قصد دارید تصویر را ذخیر کنید. بگمانم روش مناسبی نیست.
پیشنهاد
- اگر تعداد تصاویر خیلی زیاد هستند اصلا UI را درگیر نکن و یک سیستم خودکار پیاده سازی کن و تنها نتایج بصورت خروجی به کاربر اعلام بشه.
- دوتا TextBox بذار و اندازه تصاویر را از کاربر دریافت کن و یا یک ComboBox بذار و به کاربر اندازه های از پیش تعریف شده پیشنهاد بده.
- انجام عملیات در حافظه به مراتب سرعت بیشتری داره تا اینکه بخواهی دونه دونه کار رو انجام بدی.
- اگر در حافظه کار میکنی مدیریت منابع فراموش نشه تا بتونی بدون محدودیت و برای حتی چندین هزار تصویر را بصورت مستمر عملیات انجام بدی.