Error C2447 à l'initialisation de la sécurité COM
Bonjour à tous,
Dans ma (longue et laborieuse :?) quête des Volume Shadow Copy sur WinXP, je tombe encore sur un os. J'utilise le code source de BETest fourni dans le VSS SDK pour créer mon propre code.
A l'initialisation de la sécurité COM, faites comme ceci:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
CHECK_SUCCESS(CoInitializeEx(NULL, COINIT_MULTITHREADED));
//Initialize COM Security
CHECK_SUCCESS
(
CoInitializeSecurity
(
NULL, //IN PSECURITY_DESCRIPTOR pSecDesc
-1, //IN LONG cAuthSvc
NULL, //IN SOLE_AUTHENTICATION_SERVICE *asAuthSvc
NULL, //IN void *pReserved1
RPC_C_AUTHN_LEVEL_CONNECT, //IN DWORD dwAuthnLevel
RPC_C_IMP_LEVEL_IMPERSONATE, //IN DWORD dwImpLevel
NULL, //IN void *pAuthList
EOAC_NONE, //IN DWORD dwCapabilities
NULL //IN void *pReserved
)
); |
j'ai deux fois l'erreur:
error C2447: '{'*: en-tête de fonction manquant (liste formelle à l'ancien format*?)
une première fois à la ligne
Code:
1 2
|
CHECK_SUCCESS(CoInitializeEx(NULL, COINIT_MULTITHREADED)); |
et une deuxième fois tout à la fin, au );
D'après ce que j'ai compris, il semble que se soit une histoire de version de syntaxe, mais je n'arrive pas à corriger. J'ai tenté de remplacer certaines parenthèses par des accolades, et inversements, mais ça ne fait que générer d'autre erreurs. C'est d'autant plus déroutant, c'est que ce code est sensé compiler sous Vista.
Quelqu'un aurait une idée?
D'avance merci.
PS:Je suis sous WinXP SP3 avec Visual Express