Aller au contenu

FICHIER ( . mnu)


Messages recommandés

Posté(e)

bonjour à tous

 

Voilà, j'ai un menu personnalisé avec (mes menu de ma bibliothèques; création des calques, couleurs , epaisseurs de ligne... etc) que je charge dans mon groupe de menus. Ce fichier (.mnu) me génére 3 autres fichiers (.mnc) (.mnr) et (.mns) , les 2 premiers ne sont pas accessible, on ne peut les ouvrir, par contre le dernier fichier en (.mns) est exploitable sous bloc note.

 

Ma question est : peut-on compiler ou obtenir une autre méthode de chargement sans générer ces 3 fichiers et le criptage du fichier ( . mnu), pour que personne ne puisse y accéder et le modifier, (actuellement si, car je travail en réseau, et presque tout le personnel à acces à mon fichier)

 

pour info. je travail sous la version 2002 et 2005

 

merci

Posté(e)

Ton message n'a rien à voir ave le lisp mais on peut tenter d'y répondre.

 

Le MNC est le seul fichier compilé du lot qui contienne les menus mais malheureusement, il ne peut être chargé seul. Il y aura toujours un MNS, éditable.

 

Le MNR contient juste les boutons BMP compilés.

 

Personnellement, je ne vois pas de solution mais je peux me tromper.

Bureau d'études dessin.

Spécialiste Escaliers

Développement - Formation

 

./__\.
(.°=°.)
Posté(e)

Je vais dans le même sens qur Tramber.

 

Je rajouterais juste que tu peux déplacer ton MNU dans un endroit sûr, car il n'est pas indispensable pour que le reste soit chargé.

Donc ton menu source sera ainsi préservé et facilement réimplantable en cas de problème.

 

Un fichier batch pourrait même être envisagé à chaque ouverture d'autocad.

On efface le mns et mnc et on recopie le mnu en mns.

Ainsi le menu sera recompilé à chaque ouverture de session.

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Posté(e)

Pour le moment, j'opte pour la solution de bonuscad

c'est + sur, simple et + rapide à faire.

 

Tramber merci pour ton compilateur et tes conseils, je fairai 1 essai ce week-end (pas assez de tps. pendant la semaine...)

 

j'essaie ta solution aujourd'hui bonuscad (merci)

 

a+

 

[Edité le 28/7/2006 par JUJUZAZA]

Posté(e)

re-moi

bonuscad, comment fais-tu? pour créer 1 fichier BATCH compilé.

merci de me detailler ta procedure et les etapes à suivre

 

si, j'ai bien compris, je vais me retrouver avec uniquement 1 fichier BATCH et le MNR , j'aurai + besoin des 2 fichiers MNU et MNS , enfin pas besion d'avoir le MNU et MNS dans mon dossier, il suffit juste de charger le fichier BATCH ...

 

a+

 

[Edité le 28/7/2006 par JUJUZAZA]

Posté(e)
Tramber merci pour ton compilateur et tes conseils, je fairai 1 essai ce week-end (pas assez de tps. pendant la semaine...)

 

Attention, il est revêche, mais si tu es rigoureux dans la synthaxe, il te rendra de bons services.

 

Surtout, n'hésites pas à poser des questions dans le fil de discussion, je t'aiderai sans problème.

 

Et ca marche même pour les AutoCAD les + récents.

 

Pour ta question, tu ne peux pas te passer d'un MNS ou d'un MNU (si AutoCAD

Bureau d'études dessin.

Spécialiste Escaliers

Développement - Formation

 

./__\.
(.°=°.)
Posté(e)

Une procédure possible!

 

Pour l'exemple les fichiers menu s'appellent "bonuscad", il te faudra adapter les noms pour toi.

Le fichier MNU source est placé ici à la racine, à modifier aussi en conséquence.

 

Tout d'abord tu vas créer un fichier lisp supplémentaire dans ton dossier ou sont tes menus

 

Le fichier "reinit-mnu.lsp" qui va contenir:

(defun reinit-mnu ( / my_mnu where_mnu)
(setq my_mnu '("bonuscad.mnc" "bonuscad.mnr" "bonuscad.mns"))
(cond
	((and (setq where_mnu (findfile (car my_mnu))) (not flag_mnu))
		(setq where_mnu (vl-string-right-trim (car my_mnu) where_mnu))
		(command "_.menuunload" "bonuscad")
		(foreach n my_mnu
			(vl-file-delete (strcat where_mnu n))
		)
		(vl-file-copy "c:/bonuscad.mnu" (strcat where_mnu "bonuscad.mns"))
		(command "_.menuload" "bonuscad")
		(setq flag_mnu T)
	)
	(T
		(if (not flag_mnu)
			(princ "\nEchec de la procédure")
		)
	)
)
)

 

Puis rajouter dans ton fichier menu.mnl ou le créer s'il n'existe pas. Ici pour l'exemple c'est aussi "bonuscad.mnl".

Y placer les lignes suivante:

(load "reinit-mnu.lsp")
(reinit-mnu)
(princ)

 

En faisant comme ceci, les menus seront réinitialisés à chaque ouverture de dessin si ton fichier menu était chargé par défaut auparavant.

 

Il y a peut être encore des ajustements à faire, ou tourner la chose différemment.

 

Mon exemple n'est pas un fichier batch :(

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Posté(e)

Bonjour

Il existe egalement une possibilité de proteger tes menus

En fait , tu renommes tes fichiers *.mnr, mns et mnc en fichiers par ex *.gsr, gss, gsc et que tu copies dans un repertoire non accessible au reseau.

 

tu creer un fichier .bat dans windows\command qui renomme et deplace tes fichiers gss,gsr,gsc en mnr,mns,mnc au bon endroit (programs files\autoCAD 2002) et tu creer un fichier scr(script) qui te lance la commande chargmnu et qui te charge ton mnu, unraccourci pour le script dans le fichier pgp et le tour est joué

 

J'utilise cette methode pour charger des menus personnalisés sur lt 2000

 

je te donne des exemples de mes menus

 

ligne à rajouter au pgp

------------------------

COPYCROMNU, "C:\Windows\Command\COPYCROMNU.bat", 1,,

CROQUIS, "C:\Program Files\AutoCAD LT 2000\script.exe" bocroquis, 5,,

 

 

 

 

fichier bat

------------

ECHO O|XCOPY "C:\program files\autocad lt 2000\support\croaclt.*" "c:\program files\autocad lt 2000"

ECHO 0|DEL "C:\program files\autocad lt 2000\croquis.mnc"

ECHO 0|DEL "C:\program files\autocad lt 2000\croquis.mnr"

ECHO 0|DEL "C:\program files\autocad lt 2000\croquis.mns"

ECHO O|REN "C:\program files\autocad lt 2000\"croaclt.gsc croquis.mnc

ECHO O|REN "C:\program files\autocad lt 2000\"croaclt.gsr croquis.mnr

ECHO O|REN "C:\program files\autocad lt 2000\"croaclt.gss croquis.mns

 

 

fichier scr

------------

_MODEMACRO Patientez_Perso_Croquis_(Mise_à_jour)_en_cours_de_chargement_...!

COPYCROMNU

_DELAI 3000

_MENUECHO 3

_CMDDIA 0

_FILEDIA 0

DECHARGMNU CROQUIS

CHARGMNU CROQUIS

-BAROUTIL

TOUTES

c

_BAROUTIL

Barre_d'outils_HH

h

0,0

_BAROUTIL

Barre_d'outils_VD

d

0,0

_BAROUTIL

Barre_d'outils_VG

g

0,0

_CMDDIA 1

_FILEDIA 1

_MODEMACRO .

 

(croaclt.gss, .gsr, .gsc sont les fichiers renommés)

Bon courage

Posté(e)

Bonsoir à tous...

 

Je ne comprend pas très bien le "but final" JUJUZAZA, tu demande une protection contre les fautes et les erreures de manipulation ou pour que ton menu ne soit pas "piraté" ?

 

Car chaque problème a sa solution... Mais il faut connaître le problème...

 

MNU = Fichier créer par l'utilisateur pour les "menus déroulants"

MNS = Fichier MNU compilé + barres d'outils créés dans AutoCAD

MNR = Compilation des BMP (format bizard d'AutoCAD)

 

Si je me trompe.... Recifiez....

 

Bon courage....

 

Denis...

Windows 11 / AutoCAD 2024

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
Davantage d'avantages, avantagent davantage (Bobby Lapointe).
La connaissance s'accroît quand on la partage (Socrate).
Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)

Posté(e)
MNU = Fichier créer par l'utilisateur pour les "menus déroulants"

MNS = Fichier MNU compilé + barres d'outils créés dans AutoCAD

MNR = Compilation des BMP (format bizard d'AutoCAD)

 

En fait MNS et MNU font barres et menus.

L'un est la sauvegarde de l'autre par AutoCAD

Pour le MNR, c'est bon. On peut le supprimer avant de lancer le logiciel pour qu'il soit recompilé proprement (avec le répertoire dans les répertoires de support).

Bureau d'études dessin.

Spécialiste Escaliers

Développement - Formation

 

./__\.
(.°=°.)
Posté(e)

bonjour à tous et merci d'avoir repondu,

 

voila ce week-end j'ai testé la solution de GEOTOTOR, pour le fichier (bat) ça fonctionne, impecablemant :D

par contre pour le reste j'ai eu 1 gd. rattage, j'ai perdu tous mes menus, mes chemins de recherche ds le menu option, ainsi que toutes mes applicatios lancées au demarrage d'autocad.

 

j'étais obligé de remettre le CMDDIA à 1 ainsi que FILEDIA, et de réinitialiser mon profils que j'avais préalablement sauvegardé (heuresement !!!), par contre toutes mes applications lancées au démarrage, et bien, obliger de reprendre toutes ma liste ... (quel galère).

 

Enfin bref, mon problème n'est pas résolu, puisqu'on peut tjs. avoir accés au fichier MNU et MNS sur mon poste de travail !!

 

DenisH, ma demande est de proteger mon menu contre des erreurs de manipulation, et la meilleur protection est de verrouiller ces fichiers MNU et MNS ( en les criptants ou les compiler ....) :casstet:

 

merci

 

si qq'1 à 1 vrai solution, et bien qu'il se dévoue

a+

  • 2 mois après...
Posté(e)

D'après ce que j'ai compris... Le MNS est indissociable des fichiers "menu" ? Non ? Mais apparament, tu es en réseau...

Donc, tu peux placer tes fichier "éditables" dans un répertoire commun (lecture/écriture autorisée) et placer ton MNS (réservé à la lecture/ écriture interdite) dans un répertoire protégé dont tu as le mot de passe.

Seul la lecture est possible... Mais là, je ne sais pas comment réagira AutoCAD si on ajoute un icone dans ce menu... Le sauvegardera-t'il ? Le recompilera-t'il ? , Seul les "GRAND" de ce site, j'ai nommé : "Les grands"

 

Denis...

Windows 11 / AutoCAD 2024

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
Davantage d'avantages, avantagent davantage (Bobby Lapointe).
La connaissance s'accroît quand on la partage (Socrate).
Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)

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é