Visual Studio 2010 上的警告,但没有错误

本文关键字:有错误 警告 Studio 2010 Visual | 更新日期: 2023-09-27 18:34:21

我这里有一个WPF C#应用程序,终于解决了错误。但是在我运行该程序后,它可以工作,只是有 7 个警告我不知道它是关于什么的。我需要知道它是否会对我的项目造成任何问题。

警告:

  1. CA2214:Microsoft.用法: 'PoseViewModel.PoseViewModel((' 包含一个调用链,该调用链导致对类定义的虚拟方法的调用。 查看以下调用堆栈以了解意外后果:

    姿势视图模型..ctor((ViewModelBase.get_IsInDesignMode((:布尔值PoseViewModel.set_IsTracking(布尔值(:空ObservableObject.RaisePropertyChanged(表达>(:虚空

  2. CA2000:Microsoft.可靠性:在方法"SpeechController.InitSpeechRecognition(("中,对象"><>g_initLocal(("不会沿所有异常路径进行释放。调用 System.IDisposable.在对象 '<>g_initLocal((' 上释放,然后所有对它的引用都超出范围。

  3. CA1901:Microsoft.可移植性:正如在您的代码中声明的那样,P/Invoke 'NativeWrapper.mouse_event(uint, int, int, int, int(' 的参数 'dwExtraInfo' 在 64 位平台上的宽度为 4 字节。这是不正确的,因为此 API 的实际本机声明表明它在 64 位平台上应为 8 字节宽。请参阅 MSDN 平台 SDK 文档,以帮助确定应使用哪种数据类型而不是"int"。

  4. CA1401:Microsoft.互操作性:更改P/Invoke 'NativeWrapper.SetCursorPos(int, int('的可访问性,使其不再从程序集外部可见。

  5. CA1401:Microsoft.互操作性:更改P/Invoke'NativeWrapper.mouse_event(uint, int, int, int, int('的可访问性,使其不再从其程序集外部可见。

  6. CA1060:Microsoft.Design:因为它是一个P/Invoke方法,所以'NativeWrapper.SetCursorPos(int, int('应该在一个名为NativeMethods、SafeNativeMethods或UnsafeNativeMethods的类中定义。

  7. CA1060 : Microsoft.Design : 因为它是一个 P/Invoke 方法,所以"NativeWrapper.mouse_event(uint, int, int, int, int(' 应该在名为 NativeMethods、SafeNativeMethods 或 UnsafeNativeMethods 的类中定义。

帮助!

Visual Studio 2010 上的警告,但没有错误

看起来您已经为项目启用了代码分析。这些警告主要是为可重用的框架设计的,但最好分析它们并在必要时进行修复。

所以... 这就是警告。它们不是错误,只是警告。应用程序可以工作,但代码的某些部分对于Visual Studio来说是可疑的。只需尝试修复它们以确保您生产的产品的质量。

例如,第二个似乎非常重要。