一旦我将我的项目标记为不安全的代码,我就会收到10个错误。这是为什么?

时间:2013-05-01 16:03:24

标签: c#

我在项目中添加了一些CS类文件(现有项)。其中一个是里面的代码:

[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode, Pack = 2)]
        public unsafe struct prDeviceInfoTable{
            [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 512)]
            public string           DeviceInternalName;         /* Internal device name (512 characters) */
            [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 32)]
            public string           ModelName;                  /* Camera model name (32 characters) */
            public UInt16           Generation;                 /* Camera generation number */
            public UInt32           Reserved1;                  /* Reserved */
            public UInt32           ModelID;                    /* Camera model ID */
            public UInt16           Reserved2;                  /* Reserved */
            public UInt16           PortType;                   /* Port type 0x01FWIA / 0x02FSTI */
            public UInt32           Reserved3;                  /* Reserved */
        };

所以在我的项目属性中,我将其更改为 Unsafe 。现在我在这些行的文件Assemblyinfo.cs中收到10个错误:

[assembly: AssemblyTitle("CameraSDK Interface")]
[assembly: AssemblyDescription("Used to interface with the Canon SDK")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("LogicRAD")]
[assembly: AssemblyProduct("CameraSDK")]
[assembly: AssemblyCopyright("Copyright © 2006")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]

例如,第一个错误是:

  

错误1重复'AssemblyTitle'属性

我已从 A wrapper for the canon CDSDK and PRSDK for remote capture 下载了示例和CS文件。

我下载了样本后使用了cannonSDK示例。并添加了所有CS文件,包括Assemlyinfo.cs文件。

2 个答案:

答案 0 :(得分:1)

执行完整项目搜索“AssemblyTitle”。您可能会发现多次出现。也许你甚至在项目中有一个重复的文件。删除重复项(或文件或属性)。

答案 1 :(得分:0)

对于有此问题的任何人,请检查您是否在项目中包含了一个项目文件夹。