2010-07-22 4 views
0

J'ai créé un projet C dans Visual Studio 2005. Chaque fois que j'utilise une API Windows (CreateFile, CreateProcess, RegOpenKeyEx, etc.), ils ne fonctionnent pas correctement, ce qui entraîne une valeur de retour d'erreur.Je suis ne pas avoir d'erreur de compilation. Sont-ils liés aux paramètres du projet, etcUtilisation de l'API Windows

+2

Lorsque vous obtenez une erreur, vous devez au moins dire quelle est l'erreur. Publiez également le code qui vous donne l'erreur. –

Répondre

0

J'utilisais le réglage unicode, le nom de la fonction diffère pour unicode.

+0

Pas si vous utilisez le bon typedef. Le compilateur insérera automatiquement le nom correct pour la fonction (généralement en ajoutant un A ou un W à la fin du nom de la fonction). –

+0

@Cody: le compilateur ne fait pas cela (j'aurais aimé qu'il le fasse), le préprocesseur le fait, ce qui peut conduire à des problèmes ici et là. – Necrolis

+0

@Necrolis: Oui, vous avez raison. Je ne suis pas sûr de savoir à quel point c'est pertinent. ce n'était pas vraiment le point de mon commentaire. S'appuyer sur le préprocesseur * en général * peut entraîner des problèmes, mais je n'ai * jamais * vu cela créer un problème. Il soulage certainement plus de problèmes que d'ajouter l'A ou W vous-même. –

Questions connexes