Vytisknout stránku | Zavřít okno

Heslo pro editaci iLogic pravidla

Vytištěno z: CAD Fórum
Kategorie: Autodesk - stavebnictví, strojírenství, CAD/GIS
Název fóra: iLogic a ETO
Popis fóra: Funkce a makra iLogic, Inventor Engineering to Order (ETO), automatizace a konfigurace výrobků
URL: https://www.cadforum.cz/forum/forum_posts.asp?TID=34369
Datum vytištění: 30.kvě.2026 v 21:55


Téma: Heslo pro editaci iLogic pravidla
Odeslal: PopelkaM
Předmět: Heslo pro editaci iLogic pravidla
Datum odeslání: 24.kvě.2023 v 08:36
Dobrý den,
lze iLogic pravidlo a iLogic formulář zaheslovat proti jeho editaci ?

Podobně jako to lze u maker ve VBA ...

Děkuji s pozdravem Popelka



Odpovědi:
Odeslal: Vladimír Michl
Datum odeslání: 24.kvě.2023 v 10:23
Ne, to nejde, ale můžete si převést iLogic makro na VBA makro.

-------------
Vladimír Michl (moderátor)
ARKANCE CZ - https://arkance.world - arkance.world
(podpora viz emea.support.arkance.world)


Odeslal: Navara
Datum odeslání: 24.kvě.2023 v 10:47
Zaheslovat pravidlo se sice nedá, ale máte několik možností

1) Vytvořit DLL knihovnu, která bude obsahovat kód a ten spouštět z pravidla pomocí 
AddReference "C:\Path\To\file.dll"

2) Zkomplikovat lidem život, aby je přešla chuť Smile

'Original rule source code
'MsgBox(ThisDoc.Document.DisplayName, Title:="Crypted rule")

'source code crypted to Base64 string
Dim base64code = "TXNnQm94KFRoaXNEb2MuRG9jdW1lbnQuRGlzcGxheU5hbWUsIFRpdGxlOj0iQ3J5cHRlZCBydWxlIik="

'Rule execution
Dim bytes = Convert.FromBase64String(base64code)
Dim ruleText = System.Text.Encoding.UTF8.GetString(bytes)
iLogicVb.Automation.AddRule(ThisDoc.Document, "tempRule", ruleText)
iLogicVb.Automation.DeleteRule(ThisDoc.Document, "tempRule")


Odeslal: PopelkaM
Datum odeslání: 24.kvě.2023 v 11:15
Dobrý den,
děkuji ...
Rozumím tomu dobře , že např. ve Visual Studiu vytvořím *.dll knihovnu
a ta bude  uložená např. v C:\Cesta...
Musím knihovnu dll zaregistrovat v Inventoru?
V iLogic pravidlech ,které budu chtít "ochránit " dopíšu odkaz na *.dll knihovnu.
Teď jenom chybí kód v dll knihovně....Smile

Popelka


Odeslal: Navara
Datum odeslání: 24.kvě.2023 v 11:23
Je to tak. Vytvoříte DLL knihovnu ve VisualStudiu
Musíte si doplnit referenci na AutodeskInventor.Interop.dll (Inventor API bez iLogicu)
Pokud chcete používat i funkce iLogic (jako GoExcel, logger, atd.) je potřeba si ještě doplnit další reference.

Registrovat se nic nemusí

Jak napsat ten kód je potom už na vás

Příklad podobného řešení je k dispozici tady:  https://github.com/CSmichaelnavara/iLogic4VisualStudio" rel="nofollow - https://github.com/CSmichaelnavara/iLogic4VisualStudio
Jenom to spouštění je výrazně jednodušší. Tady se řeší i možnost rekompilace za běhu.



Vytisknout stránku | Zavřít okno