2010-10-19 3 views
2

Nous avons développé un add-in (avec add-in express) dans lequel enregistre des informations localement. (au chemin de l'application) Mais sans "exécuter en tant qu'administrateur" ou "désactiver le mode protégé", cela n'est pas autorisé.IE mode protégé problème?

Y a-t-il un moyen d'accomplir cela? Un moyen de charger le complément avec administrateur privilige? (les fichiers manifestes ne fonctionnent pas pour dll) ou n'importe quel moyen de désactiver le mode protégé avec l'approbation de l'utilisateur?

Merci!

+0

Avez-vous vraiment besoin d'écrire là-bas? Certains répertoires comme le dossier de données de l'application utilisateur locale sont accessibles en mode protégé et doivent être utilisés pour les paramètres d'application selon Microsoft. –

+0

malheureusement oui ... il ya un db intégré copié à l'application locale et etc. est-il un moyen de désactiver le mode protégé par programmation après l'approbation de l'utilisateur? –

+0

@EkinOzcicekciler N'écoutez pas les gens qui continuent à dire que les choses sont impossibles, ces gens ne comprennent pas que tout est possible. Consultez ma réponse, il devrait répondre à votre question. –

Répondre

3
+0

donc vous voulez dire qu'il est impossible pour nous de sauvegarder l'emplacement différent avec le mode protégé activé. –

+0

Ce que je veux dire, c'est qu'un processus Low Integrity ne peut écrire que sur des emplacements d'écriture Low Integrity. C'est le modèle de sécurité. Vous devez travailler en son sein. –

2

Voici la solution:

feu jusqu'à regedit et allez à cette clé:

HKEY_USERS\S-1-5-18\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones 

Sur ma machine (Windows 7) le compte système local est S-1-5-18. Cela pourrait être le même pour toutes les versions de Windows, mais je ne sais pas à ce sujet.

Dans cette clé de registre, il y a cinq autres touches 1, 2, 3, 4 et 5 - chacune représentant une zone.

Pour chaque zone, s'il existe une valeur DWORD portant le nom "2500", définissez sa valeur sur 0 pour désactiver le mode protégé. Notez que vous n'avez pas besoin de l'ajouter si ce n'est pas le cas.

La valeur "2500" est censée contrôler la case à cocher "Activer le mode protégé". Ou, si vous voulez juste modifier les paramètres du mode protégé pour l'utilisateur actuel, passez à la version HKEY_CURRENT_USER de la clé de registre ci-dessus, et je pense qu'il peut aussi y en avoir une pour HKEY_LOCAL_MACHINE (n'hésitez pas à cocher) tu préfères.

+0

J'utilise une solution similaire à ce que Erx_VB.NExT.Coder a déclaré dans sa réponse. La seule exception est que pour moi la valeur 0 vérifie la boîte et la valeur 3 décoche la case. Le code est AutoIT; Active le mode protégé pour l'utilisateur actuel dans la zone Intranet local (3 l'éteint) RegWrite ("HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Paramètres Internet \ Zones \ 1", "2500", "REG_DWORD", 0) – josephbales

+0

Seulement travaillé quand j'ai changé la version HKEY_CURRENT_USER (omettre le S-1-5-18). Sur le serveur 2003 –