Ik heb een macro gemaakt die de SmartProperty start en valideert op elk mechanisch gelast item (dat dus ronddraait voor de tijd die nodig is om alle items te maken).
Ik wil graag dat deze macro wordt uitgevoerd wanneer de SmartProperties op het onderdeel is gevalideerd.
De macro werkt heel goed als ik hem alleen start.
Maar hij vertelt me shit omdat de Smart a priori al gelanceerd is...
Om te zien of het uw macro start, voegt u helemaal aan het begin een MSGBOX toe, met bijvoorbeeld "Macro gelanceerd", zodat u zeker weet of deze is gestart of niet.
"-> "Na het sluiten van SmartProperties" - geeft aan dat de actie wordt geactiveerd zodra men het hulpprogramma SmartProperties verlaat. U kunt de informatie inderdaad valideren door op (groene validatieknop) te drukken, maar als het venster is vastgezet, wordt deze actie alleen in aanmerking genomen door op het rode kruis te drukken.
Heb je het geprobeerd met het raam vastgezet of niet?
Door "na sluiting" te gebruiken, wordt de macro gestart zodra de PropertyManager is gesloten.
Maar wanneer u een macro start met de SoldiWorks-API's, wacht de code tot de macro is voltooid om te worden overgedragen, zodat SmartProperties open blijft totdat uw macro eindigt.
De enige oplossing zou zijn om via een uitvoerbaar bestand te gaan en niet langer via een macro. In dit geval wordt het programma asynchroon gestart en wordt SmartProperties gesloten na het starten van de applicatie.