Aller au contenu

Variable pour definir le dossier de recherche des mise en page Set env


vins13007

Messages recommandés

Bonjour,

 

Tout d'abord, merci pour ce forum qui est très utile et pleins de bons conseils.

J'ai cherché sur ce forum et sur internet mais je n'ai pas trouvé ma réponse alors j'espere que vous pourrez me l'apporter.

 

J'ai besoin lors du démarrage d'autocad grace à mon fichier .mnl de définir l'emplacement du dossier "importer une mise en page".

 

Jusqu'à maintenant j'ai défini mes chemins grace à :

 

(setenv "PrinterConfigDir" "Nom du dossier")

(setenv "PrinterDescDir" "Nom du dossier")

(setenv "PrinterStyleSheetDir" "Nom du dossier")

 

J'espere qu'il existe une variable pour ce dossier qui est par défaut "mes documents" et comme j'ai beaucoup d'autocad à parametrer j'ai besoin de le definir.

 

Cordialement,

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

 

c'est stocké en base de registre dans ton profil AutoCAD (chez moi MAP 3D 2012 + Profil COVADIS):

HKEY_CURRENT_USER\Software\Autodesk\AutoCAD\R18.2\ACAD-A002:40C\Profiles\COVADIS\Dialogs\Sélectionner la mise en page du fichier\InitialDirectory

 

Ci-joint un lien pour accéder à la base de registre et modifier des variables depuis .Net :

http://adndevblog.typepad.com/autocad/2016/02/change-profile-settings-from-net.html

 

Olivier

  • Upvote 1
Lien vers le commentaire
Partager sur d’autres sites

Merci Olivier

 

Exemple pour écrire dans la base de registre a partir de ton fichier .mnl :

 

(vl-registry-write "HKEY_CURRENT_USER\\Software\\Autodesk\\AutoCAD\\R19.1\\ACAD-D001:40C\\Profiles\\Epure\\Dialogs\\Sélectionner la mise en page du fichier\\" "InitialDirectory" "TON_DOSSIER")

 

 

Pour lire ta clé de registre :

 

(vl-registry-read "HKEY_CURRENT_USER\\Software\\Autodesk\\AutoCAD\\R19.1\\ACAD-D001:40C\\Profiles\\Epure\\Dialogs\\Sélectionner la mise en page du fichier\\InitialDirectory")

  • Upvote 1
Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

 

Un grand merci à vous deux pour vos réponses, c'est exactement ce que je voulais :D

 

Je souhaitais surtout bénéficier des mises en pages lors de la publication mais le dossier n'était pas commun. J'ai pu trouvé la clé dans le registre donc voici les commandes :

 

; Définir et lire le chemin du dossier pour "Sélectionner la mise en page du fichier"

(vl-registry-write "HKEY_CURRENT_USER\\Software\\Autodesk\\AutoCAD\\R19.0\\ACAD-B001:40C\\Profiles\\<<Profil sans nom>>\\Dialogs\\Sélectionner la mise en page du fichier" "InitialDirectory" "Mon dossier")

(vl-registry-read "HKEY_CURRENT_USER\\Software\\Autodesk\\AutoCAD\\R19.0\\ACAD-B001:40C\\Profiles\\<<Profil sans nom>>\\Dialogs\\Sélectionner la mise en page du fichier\\InitialDirectory")

 

; Définir et lire le chemin du dossier "Importer les mises en page en vue de la publication"

(vl-registry-write "HKEY_CURRENT_USER\\Software\\Autodesk\\AutoCAD\\R19.0\\ACAD-B001:40C\\Profiles\\<<Profil sans nom>>\\Dialogs\\PSETUPNavDlg" "InitialDirectory" "Mon dossier")

(vl-registry-read "HKEY_CURRENT_USER\\Software\\Autodesk\\AutoCAD\\R19.0\\ACAD-B001:40C\\Profiles\\<<Profil sans nom>>\\Dialogs\\PSETUPNavDlg\\InitialDirectory")

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

 

afin de rendre plus universel le code et de s'affranchir des soucis de changement de version ou de profil, il est bon de regarder les fonctions suivantes :

 

 

(vlax-product-key) qui renvoie la version et le produit (par exe chez moi ça renvoie : "Software\\Autodesk\\AutoCAD\\R18.2\\ACAD-a002:40c")

 

(getvar "CPROFILE") qui renvoie le nom du profil courant (chez moi "COVADIS")

ainsi en combinant ces fonctions dans un strcat on obtient une clé de registre qui est valable quelque soit la version d'AutoCAD, le produit (AutoCAD ou un produit vertical), et le profil de l'utilisateur.

Olivier

Lien vers le commentaire
Partager sur d’autres sites

Dans le genre :

 


	; Définir le chemin du dossier pour "Sélectionner la mise en page du fichier"
		(vl-registry-write 
			(strcat "HKEY_CURRENT_USER\\" (vlax-product-key) "\\Profiles\\" (getvar "CPROFILE") "\\Dialogs\\Sélectionner la mise en page du fichier") 
			"InitialDirectory" 
			"Chemin_Dossier"
		)
	; Définir le chemin du dossier "Importer les mises en page en vue de la publication"
		(vl-registry-write 
			(strcat "HKEY_CURRENT_USER\\" (vlax-product-key) "\\Profiles\\" (getvar "CPROFILE") "\\Dialogs\\PSETUPNavDlg") 
			"InitialDirectory" 
			"Chemin_Dossier"
		)

Lien vers le commentaire
Partager sur d’autres sites

Au top Olivier, je ne me serai jamais douté qu'on pouvait retrouver la version et le produit comme ça, merci beaucoup ! Merci SF.Designer de m'avoir ecrit le code je pense que ça en aidera plus d'un.

 

Je suis en train de chercher la cle pour la boite de dialogue inserer bloc mais je ne l'ai pas trouvée, si au cas ou vous avez la réponse j'en serai heureux.

Lien vers le commentaire
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité