Aller au contenu

erreur: paramètre de la variable AutoCAD rejeté: \"OSMODE\"


Messages recommandés

Posté(e)

Bonjour,

 

Je manipule beaucoup les entités par les poignées en utilisant les entrées (espace) : étirer, déplacer, échelle, etc

 

Depuis quelques temps, j'ai ce message dès que je clic une poignée : erreur: paramètre de la variable AutoCAD rejeté: "OSMODE" (et des fois "SNAPANG", suivant la poignée cliquée).

 

A priori ça ne m'empêche pas de bosser, mais bon, ça m'intrigue... Quelqu'un a une idée ?

Autocad 2021 - Revit 2022 - Windows 10

Posté(e)

Quand j'ai ce genre de message en lisp, c'est que je me suis planté lors de la restitution de la variable.

Soit la valeur numérique fournie est hors de la fourchette permise.

Soit la valeur transmise l'a été sous forme de chaine au lieu d'un entier ou réel.

 

C'est peut être le cas ici... :exclam:

 

En tout cas la valeur transmise n'est pas adéquate.

 

[Edité le 1/8/2008 par bonuscad]

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

Posté(e)

une réponse, un peu tard... Non, mes valeurs de osmode et snapang sont bien dans la fourchette acceptable (255 et 0).

Autocad 2021 - Revit 2022 - Windows 10

Posté(e)

Je persiste :casstet:

 

la valeur transmise n'est pas adéquate

 

Pour t'en convaincre fait par exemple en ligne de commande:

(setvar "osmode" "32") ou encore (setvar "osmode" nil), tu auras exactement ce message en retour.

 

Essayes d'avoir un point d'arrêt lors de l'utilisation de setvar et d'examiner la variable à l'instant T.

 

Ce qu'il faudrait arriver à identifier, c'est si cela vient d'une fonction tierce autochargée.

 

Serge Camiré avait donné (il y a déjà quelques années) ici ou ailleurs un lisp utilisant les réacteurs qui donnait l'information sur les variables en temps réel dès lors qu'elle subissait un changement.

 

Je l'ai recherché, mais pas trouvé. Si quelqu'un d'autre s'en rappelle... cela pourrait peut être utile dans ton cas.

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

Posté(e)

Je viens de le retrouver au fin fond de mon disque dur.

 

Enfin je redonne le code (merci à serge) tel quel.

 

;;; SysvarSpy
;;; Permet d'observer et d'identifier les variables systèmes modifiées lors
;;; de simples commandes ou de routines Lisp.
;;; Note: c'est l'état initial et le premier changement qui est affiché
;;; On peut adapter très pour lister tous les changements d'une même variable
;;; en supprimant le "(if (not (member sysvar *MySysvarList*))"
;;;
;;; Compatibilité: AutoCAD R13 et plus
;;;
;;; Instructions:
;;; 1) Charger ce fichier
;;; 2) Exécuter une commande ou une routine puis observer les messages..
;;;
;;; Par Serge Camiré, CadNovation, 2005/02/04
;;; http://www.cadnovation.com/fr
;;;

(vl-load-com)

(defun MyReactorSysvarWillChange (
  data callbacks / sysvar 
  )
  (setq sysvar (car callbacks))
  (if (not (member sysvar *MySysvarList*))
  (progn
     (setq *MySysvar* (getvar sysvar))
     (setq *MySysvar* (list sysvar *MySysvar*))		; (SysVarName ValeurAvant)
  ))
)

(defun MyReactorSysVarChanged (
  data callbacks / newVal sysvar 
  )
  (if *MySysvar*
  (progn
     (setq sysvar (car callbacks))
     (setq newVal (getvar sysvar))
     (setq *MySysvar* (append *MySysvar* (list newVal)))  	; (nom ValeurAvant ValeurApres)
     (setq *MySysvarList* (cons *MySysvar* *MySysvarList*))
     (setq *MySysvar* nil)
  ))
  (princ)
)

(defun MyReactorCommandWillStart ( 
  calling-reactor command-list / 
  )
  (setq *MyCommandReactorStarted* t)
  (if (not *MyLispReactorStarted*) (setq *MySysvarList* nil))
  (princ)
)

(defun MyReactorCommandEnded (
  calling-reactor command-list / sysvar
  )
  (setq *MyCommandReactorStarted* nil)
  (if (not *MyLispReactorStarted*) (printAllSysvar))
  (princ)
)

(defun MyReactorLispWillStart (
  calling-reactor command-list / sysvar
  )
  (setq *MyLispReactorStarted* t)
)

(defun MyReactorLispEnded (
  calling-reactor command-list / sysvar
  )
  (setq *MyLispReactorStarted* nil)
  (printAllSysvar)
  (princ)
)

(defun printAllSysvar ( / sysvarType)
  (if *MySysvarList*
     (vl-sort *MySysvarList* (function (lambda (e1 e2) (< (car e1) (car e2)))))
  )
  (foreach sysvar *MySysvarList*
     (setq sysvarType (type sysvar))
     (cond
        ((= 'INT sysvarType) 
           (princ (strcat "\n" (car sysvar) " : " (itoa (cadr sysvar)) " -> " (itoa (caddr sysvar))))
        )
        ((= 'REAL sysvarType) 
           (princ (strcat "\n" (car sysvar) " : " (rtos (cadr sysvar)) " -> " (rtos (caddr sysvar))))
        )
        ((= 'STR sysvarType) 
           (princ (strcat "\n" (car sysvar) " : " (cadr sysvar) " -> " (caddr sysvar)))
        )
        ((= 'LIST sysvarType) 
           (princ (strcat "\n" (car sysvar) " : " )) (princ (cadr sysvar)) (princ " -> ") (princ (caddr sysvar))
        )
        (t
           (princ (strcat "\n" (car sysvar) " : type inconnu !" ))
        )
     )
  )
  (setq *MySysvarList* nil)
  (princ)
)

;;; Already loaded? Unload it.
(if *reactorCommand* (vlr-remove *reactorCommand*))
(setq *reactorCommand*
  (vlr-editor-reactor
     nil
     '(   (:vlr-CommandWillStart . MyReactorCommandWillStart) 
          (:vlr-CommandEnded     . MyReactorCommandEnded)
          (:vlr-CommandCancelled . MyReactorCommandEnded)
          (:vlr-CommandFailed    . MyReactorCommandEnded)
      )
  )
)
;;; Already loaded? Unload it.
(if *reactorLisp* (vlr-remove *reactorLisp*))
(setq *reactorLisp*
  (vlr-editor-reactor
     nil
     '(   (:vlr-LispWillStart . MyReactorLispWillStart) 
          (:vlr-LispEnded     . MyReactorLispEnded)
          (:vlr-LispCancelled . MyReactorLispEnded)
      )
  )
)

;;; Already loaded? Unload it.
(if *reactorSysvar* (vlr-remove *reactorSysvar*))
(setq *reactorSysvar*
  (vlr-sysvar-reactor 
     nil
     '(   (:vlr-sysVarWillChange . MyReactorSysvarWillChange) 
          (:vlr-sysVarChanged    . MyReactorSysVarChanged)
      )
  )
)
(princ)

 

Oops je m'étais trompé de code... (rectifié)

 

[Edité le 7/8/2008 par bonuscad]

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

  • 3 semaines après...
Posté(e)

moi j'ai ce genre d'erreur à chaque fois uqe je démarre autocad 2006 + l'applicatif FISACAD, mais ça ne m'empêche pas de bosser, je pense que c'est une erreur de code du coté autocad quant à la gestion des entrées de la valeur de la variable snapang et osmode ou de l'appilcatif qui tente d'entrer des valeurs non viable

ATEGIE - Bureau d'Études Fluides

http://www.ategie.fr/uploads/ategie/ategie-at%C3%A9gie-bureau-%C3%A9tudes-etudes-fluides-logo-100x56.png

Exécution, Synthèse, Conception, Maîtrise d'Oeuvre, Audit, Chiffrage

www.ategie.fr

Posté(e)

merci pour cette routine.

 

résultat :

** ETIRER **
Spécifiez le point d'étirement ou [point de Base/Copier/annUler/Quitter]: ; 
erreur: paramètre de la variable AutoCAD rejeté: "OSMODE" nil
OSMODE : 255 -> 255
*ERRNO : 0 -> 0
*ERRNO : 0 -> 0 

 

Le message d'erreur est toujours présent

Autocad 2021 - Revit 2022 - Windows 10

Posté(e)

Salut

 

Comme te l'a indiqué Bonus, cela provient peut-être d'un lisp.

Pour vérifier, tu lances Autocad sans aucun lisp et si l'erreur ne se produit plus, il reste à charger les lisps un par un, de faire la manip pour trouver celui qui provoque l'erreur.

Dès que celui-ci est trouvé, il reste plus qu'a le publier sur le forum afin que l'on puisse regarder d'où vient l'erreur.

 

@+

Les Lisps de Patrick

Le but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.

Joseph Joubert, 1754-1824

Posté(e)

Merci pour votre aide !

 

J'ai donc déchargé toutes mes applications pour confirmer qu'il s'agissait bien l'une d'elle.

 

Après recherche, il s'agit de windoor qui provoquait la chose.

 

Donc merci encore, sujet résolu.

Autocad 2021 - Revit 2022 - Windows 10

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é