Visual Studio 2012 を使用して C# で WinForm アプリケーションを作成していますが、デバッグ時にエラーが発生します。
vshost32-clr2.exe has stopped working
既に検索しましたが、ほとんどの結果は Visual Studio 2010 以前のものであり、Visual Studio 2012 には適用できないと思われる同様のソリューションが得られます。
Properties -> Debug -> Enable unmanaged code debugging
ソース :アンマネージ DLL を呼び出すと vshost32.exe がクラッシュする
追加の詳細 :
私のプロジェクトでは DLL を使用していません。
私のプロジェクトで進行している限り、幅が17の場合にのみ発生します。
次のコードを使用します。
Bitmap tmp_bitmap = new Bitmap(Width, Height, System.Drawing.Imaging.PixelFormat.Format24bppRgb);
Rectangle rect = new Rectangle(0, 0, 16, tmp_bitmap.Height);
System.Drawing.Imaging.BitmapData bmpData =
tmp_bitmap.LockBits(rect, System.Drawing.Imaging.ImageLockMode.ReadWrite,
tmp_bitmap.PixelFormat);
unsafe
{
// Get address of first pixel on bitmap.
byte* ptr = (byte*)bmpData.Scan0;
int bytes = Width * Height * 3; //124830 [Total Length from 190x219 24 Bit Bitmap]
int b; // Individual Byte
for (int i = 0; i < bytes; i++)
{
_ms.Position = EndOffset - i; // Change the fs' Position
b = _ms.ReadByte(); // Reads one byte from its position
*ptr = Convert.ToByte(b);
ptr++;
// fix width is odd bug.
if (Width % 4 != 0)
if ((i + 1) % (Width * 3) == 0 && (i + 1) * 3 % Width < Width - 1)
{
ptr += 2;
}
}
// Unlock the bits.
tmp_bitmap.UnlockBits(bmpData);
}
そのような値がメソッドに設定されている場合にのみ発生するため、コードを投稿する必要があると思います。
この問題の解決にご協力いただければ幸いです。事前にどうもありがとうございました!