Définir par programmation DLL chemin de recherche en macro VBA

Le problème

  • J'ai un modèle word qui utilise VBA Declare déclaration de lien d'une dll, dont le chemin d'accès peut être déterminé à l'intérieur de la macro VBA
  • Je veux delploy ce pour les utilisateurs de %APPDATA%\Microsoft\Word\STARTUP répertoire
  • Je NE veux PAS changer de façon permanente à l'utilisateur de la variable d'environnement PATH (temporairement serait OK, mais cela ne semble pas fonctionner comme ils ne reçoivent pas actualisé jusqu'au redémarrage de l'application)

Tentative de solution

J'ai essayé d'ajouter dynamiquement le code avec le Declare instructions à l'aide de ThisDocument.VBProject.CodeModule.AddFromString(code) qui fonctionne lors du chargement du modèle à partir d'un répertoire normal, mais lorsque le modèle est à l'intérieur de Word\STARTUP, il donne l'erreur suivante:

Erreur d'exécution '50289':

Ne pouvez pas effectuer l'opération depuis le
le projet est protégé.

Et le réglage de la clé de registre "HKEY___LOCAL_MACHINE\Software\Microsoft\Office\11.0\Word\Security\AccessVBOM" à 1 ne résout pas ce problème lorsque le modèle est en Word\STARTUP


J'ai vraiment du mal à trouver une solution. Si quelqu'un connaît un moyen de le faire, ce serait génial.

InformationsquelleAutor Steve Ridout | 2009-01-16