2010-11-05 26 views
0

Je voulais automatiser ce processus: http://www.blogsdna.com/2698/you-can-customize-windows-7-logon-background-officially.htmcréation de dossier dans Windows dir

Registery n'était pas un problème. Mais quand je voulais créer le dossier d'arrière-plans dans Windows \ System32 \ oobe \ info, cela ne fonctionnait tout simplement pas. Il ne créera tout simplement pas le répertoire que j'essaie.

Je suppose que c'est quelque chose avec un accès non autorisé? Mais même avec l'UAC désactivé, je n'arrive toujours pas à créer le dossier.

Quelqu'un a une idée de comment cela se fait?

Répondre

1

Allez simplement avec l'Explorateur Windows et modifiez les permissions sur le dossier où vous essayez de créer votre sous-dossier pour donner à votre compte utilisateur des possibilités d'écriture.

+0

Pourriez-vous donner ces permissions depuis .net? –

+0

@Elias: En théorie oui, regardez simplement FileSystemSecurity.AddAccessRule (http://msdn.microsoft.com/fr-fr/library/system.security.accesscontrol.filesystemsecurity.addaccessrule.aspx). Mais dans la pratique cela finirait probablement par être la même chose dans la mesure où votre application aurait besoin d'avoir la permission de vous donner la permission d'accéder au dossier. Essayez de lancer votre application en tant qu'administrateur (soit en utilisant RunAs ou via un manifeste comme dans cette question http://stackoverflow.com/questions/2737196/setting-uac-settings-of-a-file-in-c) et voir si cela fonctionne. –

0

Vous devez demander des droits d'administration pour l'application. changer les droits pour le répertoire Windows est mauvais car il a des fichiers système. Recherche le sur Google.

Pour tester correctement, cliquez sur le programme et cliquez sur Exécuter en tant qu'administrateur. En vb il y a un paramétrage xml dans lequel vous définissez des permissions, je suppose qu'il y aura un moyen dans C#

+0

J'ai essayé cela, n'a pas fonctionné. –

+0

J'ai également essayé d'éteindre l'UAC, ne fonctionnait toujours pas. –