表达式编码器在尝试捕获屏幕时出错

时间:2014-03-27 16:00:06

标签: c#

目前我正在使用c#开发一个错误报告系统,在我的情况下我试图让用户在重新创建问题时捕获他或她的屏幕,在我的情况下我使用表达式编码器来捕获我的屏幕但是当我尝试运行我得到以下错误

enter image description here

这是我用过的完整代码..请帮我克服这个有什么不对?当我尝试相同的代码@我的办公室哪台机器正在使用Windows 7企业版它工作正常,但当我尝试使用我自己的笔记本电脑运行相同的代码时,它在我的笔记本电脑中出现这个错误我有Windows 7家高级,我也尝试使用我的朋友的笔记本电脑使用Windows 7专业版相同的代码..我缺少任何配置或任何参考?

请帮助

这是代码

namespace CAp
{
public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }

    private void CaptureMoni()
    {

        try
        {

            Rectangle _screenRectangle = Screen.PrimaryScreen.Bounds;
            _screenCaptureJob = new ScreenCaptureJob();
            _screenCaptureJob.CaptureRectangle = _screenRectangle;
            _screenCaptureJob.ShowFlashingBoundary = true;
            _screenCaptureJob.ScreenCaptureVideoProfile.FrameRate = 20;
            _screenCaptureJob.CaptureMouseCursor = true;

            _screenCaptureJob.OutputScreenCaptureFileName = string.Format(@"C:\test.wmv");
            if (File.Exists(_screenCaptureJob.OutputScreenCaptureFileName))
            {
                File.Delete(_screenCaptureJob.OutputScreenCaptureFileName);
            }
            _screenCaptureJob.Start();
        }
        catch (Exception e) {
            MessageBox.Show(e.ToString());
        }
    }

    public ScreenCaptureJob _screenCaptureJob { get; set; }

    private void button1_Click(object sender, EventArgs e)
    {
        CaptureMoni();
    }
}

}

1 个答案:

答案 0 :(得分:0)

最后我昨天得到了答案......,这是我的笔记本电脑分辨率问题,因为我使用整个屏幕捕获和表达式编码器只支持可以除以4的分辨率。将分辨率更改为一个值可以被4整除作为例子(1280X1024),它终于正常工作了!