(gile) Posté(e) le 18 juin 2011 Posté(e) le 18 juin 2011 Salut, Suite à ce sujet, j'ai voulu essayer une nouvelle API .NET d'AutoCAD 2011 qui permet de créer de véritables variables système. LAYLOCKSEL est une véritable variable système qui permet de rendre les objets sur les calques verrouillés non sélectionnables.Valeurs :- 0 : les objets sur les calques verrouillés sont sélectionnables (défaut).- 1 : les objets sur les calques verrouillés ne sont pas sélectionnables.La variable est accessible et modifiable en entrant son nom en ligne de commande ou en LISP avec les fonctions getvar et setvar. Comme dit ci-dessus, ça ne fonctionnera que sur les versions 2011 et postérieures. Nouvelle version. Un installeur : LayLockSel.msi crée la variable système LAYLOCKSEL pour toutes les versions d'AutoCAD (>= 2011) installée sur le poste (y compris 2015). Pour désinstaller, ré-exécuter LayLockSel.msi ou passer par le Panneau de configuration > Ajout et suppression de programmes. Télécharger LayLockSel.zip Plus d'informations et les codes source sur AcadLabs Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
lili2006 Posté(e) le 19 juin 2011 Posté(e) le 19 juin 2011 Bonjour à toutes et tous, Merci Gilles, PS: Comment fais-tu pour créer des exécutables ? Merci d'avance, Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
(gile) Posté(e) le 19 juin 2011 Auteur Posté(e) le 19 juin 2011 Comment fais-tu pour créer des exécutables ? Ce sont des 'Applications Windows" écrites en .NET, les codes sont visibles sur AcadLabs. Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
lili2006 Posté(e) le 19 juin 2011 Posté(e) le 19 juin 2011 Re, Ok ! Merci pour la réponse, Autre question, puisque j'utilise MAP V 12 et AutoCAD 2008, je vais charger la.dll comme dis sur ton message plus haut, mais ne risque t-il pas d'y avoir un conflit avec Autoloader (Page N° 2 Réponse N° 6) sur ma V12 ? Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
(gile) Posté(e) le 19 juin 2011 Auteur Posté(e) le 19 juin 2011 Autre question, puisque j'utilise MAP V 12 et AutoCAD 2008, je vais charger la.dll comme dis sur ton message plus haut, mais ne risque t-il pas d'y avoir un conflit avec Autoloader (Page N° 2 Réponse N° 6) sur ma V12 ? Oui, il y a un risque de "conflit" entre les deux plug-in , les deux agissent sur le même évènement. Mais ceci n'a rien à voir avec le mode chargement, on ne peut pas utiliser l'Autoloader pour cette application qui, à l'installation, doit créer la variable système dans la base de registre. Mais pourquoi multiplier les fonctions qui font la même chose ? Petit récapitulatif : - LayerSelectionHandler (ici) définit deux simples commandes LAYSELON et LAYSELOFF qui ne sont actives que dans le dessin pendant la session. - LayLockSelectVariable (ici) définit une commande : LAYLOCKSELECT qui fonctionne comme une variable système, la valeur enregistrée dans la base de registre elle est passée d'un dessin à l'autre, d'une session à l'autre. - LayLockSel (premier message de ce post) est une véritable variable système AutoCAD, son comportement est sensiblement le même que celui de LAYLOCKSELECT à ceci près que c'est AutoCAD et non le programme qui s'occupe de conserver la valeur et que cette est directement accessible en programmation (avec getvar et setvar en LISP par exemple). Donc, il faut n'en choisir qu'une :- soit on préfère une simple commande et c'est LayerSelectionHandler.dll qu'il faut utiliser ;- soit on préfère une variable système et, à mon avis, si on a AutoCAD 2011 ou 2012, il vaut mieux utiliser LAYLOCKSEL, sinon, se "contenter" de LAYLOCKSELECT. Dans tous les cas, le mode de chargement n'est qu'accessoire... Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
lili2006 Posté(e) le 19 juin 2011 Posté(e) le 19 juin 2011 Re, Ok ! Merci pour ce complément d'info, @+, Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
Steven Posté(e) le 24 juin 2011 Posté(e) le 24 juin 2011 C'est tout à fait génial :D Ca fonctionne nickel sur AA2011 :D J'essayerai sur AA2012 lorsque je serai au bureau. Steven________________________________________ Pour le taf; Windows (et ses emmerdes) sinon pas d'AutoCAD. Pour le perso Linux Mint et pas de problèmes. Mais pas d'AutoCAD. En rêve; AutoCAD sous Linux.
LUDWIG Posté(e) le 2 novembre 2011 Posté(e) le 2 novembre 2011 (modifié) Bah, et pourquoi ça n'existe pas de base sur cacad ?Par contre, je n'arrive pas à télécharger le fichier joint, on me dit "Vous n’êtes pas autorisé à télécharger cette pièce jointe". Suis-je un paria ? edit : ah oui j'avais pas vu, je suppose qu'il faut s'inscrire... Modifié le 2 novembre 2011 par LUDWIG Autocad 2021 - Revit 2022 - Windows 10
LUDWIG Posté(e) le 2 novembre 2011 Posté(e) le 2 novembre 2011 question bête : elle est enregistrée dans le dessin ou dans la base de registre ? Autocad 2021 - Revit 2022 - Windows 10
LUDWIG Posté(e) le 2 novembre 2011 Posté(e) le 2 novembre 2011 Oups, ça ne fonctionne pas chez moi (ou alors j'ai pas compris le but de la variable).J'ai bien fermer et rouvert autocad (2 fois même).La variable existe mais j'ai beau changer la valeur, le comportement reste le même : l'objet sur le calque verrouillé reste sélectionnable mais non modifiable... Autocad 2021 - Revit 2022 - Windows 10
(gile) Posté(e) le 2 novembre 2011 Auteur Posté(e) le 2 novembre 2011 LUDWIG, La variable est enregistrée dans le registre. Quelle version as tu chargé ? Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
LUDWIG Posté(e) le 2 novembre 2011 Posté(e) le 2 novembre 2011 Je l'ai téléchargé aujourd'hui, je pense que c'est la dernière version.Je suis sur autocad 2012.Est-qu'une autre variable pourrait poser problème ? Dans le comportement, l'objet sur calque verrouillé est sélectionné dans le sens ou il est grisé à l'écran (sélection) et que la palette de propriéré affiche les propriété de cet objet. J'imagine que ce n'est pas le comportement voulu par cette variable. Je ressayerais demain, ça ira peut-être mieux après un redémarrage... Autocad 2021 - Revit 2022 - Windows 10
(gile) Posté(e) le 2 novembre 2011 Auteur Posté(e) le 2 novembre 2011 Par quelle version, je faisais référence à la réponse 5. - LayerSelectionHandler (ici) définit deux simples commandes LAYSELON et LAYSELOFF qui ne sont actives que dans le dessin pendant la session. - LayLockSelectVariable (ici) définit une commande : LAYLOCKSELECT qui fonctionne comme une variable système, la valeur enregistrée dans la base de registre elle est passée d'un dessin à l'autre, d'une session à l'autre. - LayLockSel (premier message de ce post) est une véritable variable système AutoCAD, son comportement est sensiblement le même que celui de LAYLOCKSELECT à ceci près que c'est AutoCAD et non le programme qui s'occupe de conserver la valeur et que cette est directement accessible en programmation (avec getvar et setvar en LISP par exemple). Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
lili2006 Posté(e) le 2 novembre 2011 Posté(e) le 2 novembre 2011 Bonsoir à toutes et tous, Pour info, fonctionne parfaitement bien sur un MAP3D 2012,... Commande: LAYLOCKSEL Entrez une nouvelle valeur pour LAYLOCKSEL : 0 Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
LUDWIG Posté(e) le 3 novembre 2011 Posté(e) le 3 novembre 2011 Je n'utilise ni LayerSelectionHandler ni LayLockSelectVariable. Toujours pas de changement ce matin. J'ai bien la variable créée et la possibilité de changer le valeur, mais sans effet. OU alors je n'ai pas compris et je dois charger quelque chose d'autre ? Autocad 2021 - Revit 2022 - Windows 10
(gile) Posté(e) le 3 novembre 2011 Auteur Posté(e) le 3 novembre 2011 Je ne sais que te dire...Essaye de désinstaller avec LaylockSel_Uninstall.exe et de réinstaller. Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
Steven Posté(e) le 3 novembre 2011 Posté(e) le 3 novembre 2011 Salut Gile J'ai installé laylockselec mais ça ne fonctionne pas même en changeant la valeur de la variable. J'ai désinstallé avec LaylockSel_Uninstall.exe puis réinstallé, le tout en quittant et relaçant AutoCAD mais ça ne fonctionne toujours pas :( Steven________________________________________ Pour le taf; Windows (et ses emmerdes) sinon pas d'AutoCAD. Pour le perso Linux Mint et pas de problèmes. Mais pas d'AutoCAD. En rêve; AutoCAD sous Linux.
fredbross Posté(e) le 3 novembre 2011 Posté(e) le 3 novembre 2011 Bonjour Gile, mais même problème que steven!Win 7 + map3D2012 32bits + covadis 12.Ne faut il pas charger la dll dans autocad ? Salutations.
lili2006 Posté(e) le 3 novembre 2011 Posté(e) le 3 novembre 2011 Re, Pour info : (Fonctionne parfaitement chez moi suite à la manip dictée par Gilles) Vista -1 + map3D2012 32bits + covadis 12G. Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
(gile) Posté(e) le 3 novembre 2011 Auteur Posté(e) le 3 novembre 2011 Salut, Franchement, je ne vois pas où peut être le problème, je viens de refaire des tests avec succès... Rappel de la procédure d'installation. - Extraire les fichier (exe et dll) dans le même répertoire (en local), c'est indispensable parce que l'installeur inscrit dans la base de registre le chemin vers ce répertoire qui servira à retrouver la dll.- Fermer AutoCAD- Lancer l'installeur (LaylockSel_Install.exe)- Une boite de dialogue doit vous confirmer que l'installation s'est bien passée- Sous Windows 7, il se peut qu'une autre boite de dialogue (Windows) vous raconte que l'installation ne s'est peut-être pas bien passé. N'en tenez pas compte.- À la réouverture d'AutoCAD la variable système devrait être opérationnelle. Ce que fait l'installeur :Création de deux clés dans le registre, un pour définir la variable :HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\AutoCAD\R18.1\ACAD-9001:40C\Variables\LAYLOCKSELet une autre pour le chargement automatique :HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\AutoCAD\R18.1\ACAD-9001:40C\Applications\LAYLOCKSEL PS: pour ceux qui ont plusieurs AutoCAD sur leur poste, l'installation ne se fait que pour la "version courante" à savoir la dernière à avoir été lancée. PPS: il me semble que steven avait utilisé avec succès les versions précédentes (LayerSelectionHandle et/ou LayLockSelectVariable) qui utilisent exactement le même gestionnaire d'évènement... Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
Dinosor Posté(e) le 4 novembre 2011 Posté(e) le 4 novembre 2011 Hello, Ca a l'air bien pratique ce truc là ! Mais il ne fonctionne pas chez moi non plus... :huh: Ah, ben j'ai relancé la bécane, et mainteneant c'est bon ! Cool, merci ! :D Juste un petit plus, il n'y a pas moyen de faire que l'accrochage aux objets ne soit pas actif sur les calques gelés ? Se serait parfait ! Seuls nous allons vite, ensemble nous allons plus loin... CPU Intel 3,5Go / Nvidia RTX-3090 AutoCad (Architecture) 2022 - Lumion PRO BMW R-1200-RT, c'est moche, oui... je sais... www.neda.ch
LUDWIG Posté(e) le 4 novembre 2011 Posté(e) le 4 novembre 2011 Bon, je crois avoir trouver le problème : quand j'installe depuis un emplacement "extérieur" (réseau), ça ne fonctionne pas. Quand j'installe depuis un emplacement en local (disque dur), ça fonctionne. Nickel même ! Voilà, je ne sais pas s'il y a quelque chose à changer, en attendant, je le laisse en local ! Autocad 2021 - Revit 2022 - Windows 10
Steven Posté(e) le 4 novembre 2011 Posté(e) le 4 novembre 2011 Salut, Franchement, je ne vois pas où peut être le problème, je viens de refaire des tests avec succès... Rappel de la procédure d'installation. - Extraire les fichier (exe et dll) dans le même répertoire (en local), c'est indispensable parce que l'installeur inscrit dans la base de registre le chemin vers ce répertoire qui servira à retrouver la dll.- Fermer AutoCAD- Lancer l'installeur (LaylockSel_Install.exe)- Une boite de dialogue doit vous confirmer que l'installation s'est bien passée- Sous Windows 7, il se peut qu'une autre boite de dialogue (Windows) vous raconte que l'installation ne s'est peut-être pas bien passé. N'en tenez pas compte.- À la réouverture d'AutoCAD la variable système devrait être opérationnelle. Ce que fait l'installeur :Création de deux clés dans le registre, un pour définir la variable :HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\AutoCAD\R18.1\ACAD-9001:40C\Variables\LAYLOCKSELet une autre pour le chargement automatique :HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\AutoCAD\R18.1\ACAD-9001:40C\Applications\LAYLOCKSEL PS: pour ceux qui ont plusieurs AutoCAD sur leur poste, l'installation ne se fait que pour la "version courante" à savoir la dernière à avoir été lancée. PPS: il me semble que steven avait utilisé avec succès les versions précédentes (LayerSelectionHandle et/ou LayLockSelectVariable) qui utilisent exactement le même gestionnaire d'évènement... Salut Gile, LayerSelectionHandle fonctionne bien sous AA2011 mais pas sur AA2012. Pour ce qui est de Laylocksel, je ne comprends pas, je suis bien la procédure, la variable est bien là mais que je la mette à 0 ou 1, je peux toujours sélectionner les objets vérouillés. J'ai bien mis tous les fichiers en local sur mon C, j'ai relancé AA2012, j'ai même redémarrer mon PC mais sans résultat :( Steven________________________________________ Pour le taf; Windows (et ses emmerdes) sinon pas d'AutoCAD. Pour le perso Linux Mint et pas de problèmes. Mais pas d'AutoCAD. En rêve; AutoCAD sous Linux.
Steven Posté(e) le 4 novembre 2011 Posté(e) le 4 novembre 2011 Ca y est, ça fonctionne enfin :D J'ai redésinstallé avec LaylockSel_Uninstall.exe. j'ai reinstallé, j'ai relancé AA2012 qu lui ne voulais polus se lancé. Il y avait bien le splachscreen qui s'affichait puis qui disparaissait mais pas de AA2012. Je me suis déconnecté de ma session Windows puis reconnecté et maintenant, ça fonctionne.Merci à toi pour cette variable ;) Steven________________________________________ Pour le taf; Windows (et ses emmerdes) sinon pas d'AutoCAD. Pour le perso Linux Mint et pas de problèmes. Mais pas d'AutoCAD. En rêve; AutoCAD sous Linux.
(gile) Posté(e) le 4 novembre 2011 Auteur Posté(e) le 4 novembre 2011 Bon, je crois avoir trouver le problème : quand j'installe depuis un emplacement "extérieur" (réseau), ça ne fonctionne pas. Quand j'installe depuis un emplacement en local (disque dur), ça fonctionne. Nickel même ! Voilà, je ne sais pas s'il y a quelque chose à changer, en attendant, je le laisse en local ! Il est plus simple d'enregistrer les assemblies .NET (exe ou dll) en local, mais il est possible de les installer sur un serveur à condition de modifier les autorisations, voir ce sujet. Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant