Configuration Active à l'ouverture

Bonjour;

Je travail encore sous Solidworks 2022, mais je pense que ma question n’est pas limitée par la version logiciel.
Dans nos assemblages nous travaillons en priorité sur la configuration « Defaut ».
A cours de l’avancement de nos travaux, d’autres configurations sont crées sur ces assemblages (configuration « Transport » la plupart du temps.

Sauriez-vous me dire s’il est possible d’ouvrir en priorité la configuration « Defaut » même si d’autres configurations ont été crées entre-temps.

Actuellement Solidworks ouvre nos assemblages sur la dernière configuration active mais ce n’est pas forcément la configuration la plus « lisible »…

PS : Oui, il serait possible de créer une macro pour l’ouverture (ou à la fermeture) des assemblages mais je n’aime pas trop le coté « macro intégrée aux arbres de conceptions » que cela imposerait.

PS2 : A l’aide des outils Mycad, je peux aussi utiliser « intégration » pour forcer la configuration active des assemblages mais, là aussi, ce n’est pas vraiment une solution pérenne.

Cordialement.

Bonsoir,

A ma connaissance pas possible, SW rouvre sur la dernière configuration active au moment de la fermeture/enregistrement.
C’est un peu le même comportement sur PDM qui affiche les données de la conf active (typiquement une absurdité dans le cadre des mises en plan qui n’ont pas de config)

Une macro peut-elle le faire? étant donné qu’il y a un choix possible lors de l’ouverture d’un document solidwokrs ?

J’ai posé la question à une vieille amie intelligente IA

"Pour que cette ouverture sur la configuration « Défaut » soit systématique sans devoir lancer la macro à la main à chaque fois, la méthode la plus efficace consiste à intercepter l’événement d’ouverture de fichier de SolidWorks via une macro complémentaire ou un script de démarrage. "

Bonsoir,

Tu peux éventuellement faire une macro d’enregistrement qui sélectionne ‹ défaut › et enregistre.
Après tu te fais une icône perso qui appelle cette macro et tu places l’icône à coté de l’icône enregistrer classique.

A l’époque j’en avais fait une pour faire une zoom tout avant l’enregistrement (ce qui te permet d’avoir une icone SW qui ressemble à quelque chose).

2 « J'aime »

Bonjour;

Entre faire une macro et penser à activer la configuration addoc avant l’enregistrement c’est quand même kif/kif.
Je vais regarder du coté du registre, on ne sais jamais…

Bonjour,

Oui c’est faisable mais l’interception des Events SW, faut modifier la ligne de commande qui lance SW pour ajouter le fait de lancer cette macro à l’ouverture de celui-ci.
Autre inconvénient faut bétonner el code pour ne pas se retrouver dans des cas non gérés.
La proposition de @froussel est la plus « simple » et c’est celle que j’utilise de mon côté (j’étais même à deux doigts de virer l’icône d’enregistrement classique, je me suis contenté de la déplacer après toutes les macros que l’on a développé).
@Maclane , dans le registre je ne pense pas que ça gère. A mon sens c’est dans le code principal de SW (et comme il n’y a rien dans les options à mon avis c’est foutu)

2 « J'aime »

Le problème c’est le fait d’y penser :slight_smile: En fonction des utilisateurs ça peut être la loterie.
Une macro à la place de l’icône d’enregistrement (voir pour être plus vicieux récupérer l’icône de SW et l’appliquer au bouton de macro) permet de s’affranchir du bon vouloir des utilisateurs à respecter les « règles » de gestion des CAO.

@Cyril_f

Une icone une boite de dialogue (Comme quand vous ouvrez via SW) aller chercher le modèle le modèle s’ouvre et se met automatiquement sur la config default.

Ou lancer une macro la nuit qui réalise cette tâche :thinking:

Ca c’est le fonctionnement de base de SW quand tu ouvre un fichier via l’explorateur


Le problème c’est quand on effectue un double clic sur le fichier ou qu’on l’ouvre directement depuis la liste des derniers ouverts.
Pour les macros qui tournent la nuit c’est faisable mais mieux vaut passer par le planificateur de tâche qui sera je pense plus robuste sur le côté fermeture des fichiers.
Le plus efficace à mon sens reste tout de même d’avoir quelque chose qui permet de le faire en systématique sans passer par une phase de correction massive par jours/semaines/mois/années.

1 « J'aime »

bonjour;

En passant par le registre, on doit pouvoir modifier la clef:

HKEY_CLASSES_ROOT\SldAssem.Document\shell\open\command\

et le forcer à exécuter un script PowerShell (*.ps1) du type :

Start-Process "C:\...\SLDWORKS.exe" -ArgumentList "/config ""NomDeLaConfiguration"" ""C:\Chemin\...\Fichier.sldasm"""

Je vais fouiner de ce coté … mais je suis ouvert à toutes propositions.

Je regarde aussi si on ne pourrait pas ajouter un petit script sur la clic-droit de l’explorer Windows pour ajouter la fonction « Ouvrir la Configuration… »
Parfois c’est plus simple que l’on crois (parfois)… :sweat_smile:

2 « J'aime »

Bonjour,

Le plus simple et plus propre est un petit add-in en vbnet ou C# de préférence avec interception de l’évènement FileOpenPreNotifyEventHandler :

Ensuite on peut ne prendre que les assemblages par exemple, vérifier la config, ne pas ouvrir le fichier si la config n’est pas celle souhaitée et le rouvrir avec la bonne.

L’équivalent est possible en vba, mais là il faut passer par un srcipt batch qui ouvrira solidworks ou modifier le raccourci de lancement de solidworks pour lancer la macro :

"C:\Program Files\SOLIDWORKS Corp\SOLIDWORKS\SLDWORKS.exe" /m "C:\Macros\EcouteurEvents.swp"

Apprendre un peu le C# vaut vraiment le coup quand on voit tout ce qu’on peut faire dans un addin :wink:

1 « J'aime »