Sitelock女士1.15和VS 2005

时间:2009-06-17 14:22:18

标签: c++ security visual-studio-2005 activex

我正在尝试将MS Sitelock模板实现到我的一个Active-X控件中。我已经下载了sitelock 1.15 sdk而且我已经陷入了第一步。

包含sitelock.h头文件会导致一堆与sal.h头文件有关的编译错误。在我看来,像sitelock.h想要使用属性sal但是sal.h只定义了declspec sal。我正在使用VS 2005,但是sitelock 1.5文档说支持vs 2005。我需要做些什么才能引用属性sal?我确实安装了Vista平台sdk。我将sitelock.h包含在active-x对象的头文件中。也许这不是做这个的地方?

请参阅下面的编译错误:

.... \ public \ sitelock.h(308):错误C2061:语法错误:标识符'_In_opt_count _'

   ..\..\public\sitelock.h(605) : see reference to class template instantiation 'CSiteLock<T>' being compiled

\ public \ sitelock.h(308):错误C2059:语法错误:')'

... \ public \ sitelock.h(310):错误C2143:语法错误:缺少')'在'{'

之前

... \ public \ sitelock.h(401):错误C2061:语法错误:标识符'_In_z _'

.. \ public \ sitelock.h(401):错误C2059:语法错误:')'

.. \ public \ sitelock.h(402):错误C2143:语法错误:缺少')'在'{'

之前

C2061:语法错误:标识符'_Inout_z_count_' .... \ public \ sitelock.h(451):错误C2059:语法错误:')'

... \ public \ sitelock.h(452):错误C2143:语法错误:缺少')'在'{'

之前

.. \ public \ sitelock.h(520):错误C2061:语法错误:标识符'_In_z _'

.. \ public \ sitelock.h(520):错误C2059:语法错误:')'

... \ public \ sitelock.h(521):错误C2143:语法错误:缺少')'在'{'

之前

... \ public \ sitelock.h(555):错误C2061:语法错误:标识符'_In_z _'

1 个答案:

答案 0 :(得分:0)

新的SAL.H包含在Windows Server 2008 SDK中,而不是Vista中。

我仍在使用Vista SDK,并且通过将属性sal宏转换为sitelock.h中的declspec sal宏来解决我的编译器错误。

使用以下网址中的注释进行翻译: http://blogs.msdn.com/sdl/archive/2009/06/11/a-declspec-sal-to-attribute-sal-rosetta-stone.aspx