L'appel de DeleteIpForwardEntry() fonctionne parfaitement sous Windows XP et Windows 7. Sur Windows Vista, cependant, il échoue avec ERROR_ACCESS_DENIED. La documentation indique que "l'utilisateur n'a pas les privilèges administratifs requis sur l'ordinateur local ou l'application n'est pas exécutée dans un shell amélioré en tant qu'administrateur intégré (administrateur RunAs)". Eh bien, dans mon cas, l'utilisateur est l'administrateur sur l'ordinateur local et l'application est exécutée à l'ouverture de session via SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Run, donc je ne peux pas lui dire de fonctionner dans un "shell amélioré" ".DeleteIpForwardEntry Accès refusé sur Vista
Existe-t-il un moyen de résoudre cette situation "Catch 22" dans Vista?
Steve, merci et +1 pour votre réponse. Je dois vérifier votre question sur les utilisateurs, mais je suis presque sûr que dans Vista et 7 ils sont simplement les administrateurs par défaut créés par le programme d'installation ("Power Users" dans XP ...). En ce qui concerne la ré-implémentation en tant que service Windows, j'ai pensé à cette option, mais cela demandera certainement beaucoup plus de travail de ma part. –
C'est déroutant, parce que le comportement devrait être le même, à première vue. Gardez les dernières informations mises à jour ici, n'importe où. –
oui le comportement devrait être le même mais, si je ne me trompe pas, Windows 7 * est * différent de Vista dans la gestion UAC. Ma compréhension est que ce qui a apporté à Windows 7 la renommée et les louanges de ceux qui ont critiqué Vista. Peut-être qu'il me manque quelque chose sur ce front. –