2013-10-08 53 views
2

我是Emgu CV的新手,我遇到了嘗試保存圖像的錯誤(「訪問衝突異常未處理」)。這裏是我嘗試過的圖像路徑:訪問衝突異常未處理嘗試保存圖像

C:\\Users\crowds\Documents\Example\Sample.jpg 

這裏是我的代碼。誰能幫忙?

//Form CameraCapture 
private void button1_Click(object sender, EventArgs e) 
{ 
    if (_capture != null) 
    { 
     captured FF = new captured(); 
     FF.Show(); 
     this.Hide(); 
    } 
} 

//Form captured 
namespace CameraCapture 
{ 
    public partial class captured : Form 
    { 
     public captured() 
     { 
      InitializeComponent(); 
     } 

     private void captured_Load(object sender, EventArgs e) 
     { 
      var capture = new Emgu.CV.Capture(); 

      using (var ImageFrame = capture.QueryFrame()) 
      { 
       if (ImageFrame != null) 
       { 
        pictureBox1.Image = ImageFrame.ToBitmap(); 
        ImageFrame.Save(
        @"C:\\Users\crowds\Documents\Example\Sample.jpg"); 
       } 
      }    
     } 

     private void button1_Click(object sender, EventArgs e) 
     { 
      CameraCapture CC = new CameraCapture(); 
      CC.Show(); 
      this.Close(); 
     } 
    } 
} 
+0

訪問衝突異常是未處理 這裏的地方出錯彈出 圖片幀= _capture.RetrieveBgrFrame(); –

+0

什麼是'Emgu.CV.Capture();'? 「Emgu」從哪裏來?此代碼中的訪問衝突是崩潰,很可能在此代碼中。 – Joe

回答

2

首先,您的路徑中有一個額外的"\"字符。它應該是:

// Remove at *:  * 
// ImageFrame.Save(@"C:\\Users\crowds\Documents\Example\Sample.jpg"); 
    ImageFrame.Save(@"C:\Users\crowds\Documents\Example\Sample.jpg"); 

其次,您收到的異常表明存在權限問題。默認情況下,除非您以特定用戶身份運行,否則您將無法保存到crowds的用戶文件夾中。這可能與上面的錯字有關,但也可能是由於在錯誤的帳戶下運行。

訪問衝突異常未處理這裏的錯誤彈出窗口Image frame = _capture.RetrieveBgrFrame();

這表明執行用戶可能沒有權限訪問圖像捕捉設備。

+0

我沒有刪除多餘的「\」字符,但我仍然有相同的錯誤.. 你可以建議一個更好的方式保存圖像在一個特定的文件夾? –

+0

@PaulinaJose這是正確的方式來做到這一點 - 一秒,編輯問題... –

+0

當我打開文件夾,雖然保存圖像.. ,但程序因錯誤而停止運行 –

相關問題