DescàrreguesMicrostation-Bentley

Trencar el password d'una macro VBA de Microstation

Visual Basic for Applications és una sèrie de llibreries que Microsoft va posar a disposició, una mica a l'antiga però molt potents sobretot en versions d'Office abans del 2010. Si bé continua existint, molts desenvolupaments ara es fan en .NET i altres entorns; tot i així, per desarollos basats en marcros, VBA és una solució bastant pràctica i en el cas de Microstation, força senzilla. A el menys recordo haver parlat d'això mostrant el mapa acotat i alguna cosa amb XFM.

Aquests són alguns dels problemes que m'han arribat a aquest matí, mentre corria a la rotonda de la Verge, en una llar tropical:

Auxili: Quan va executar la VBA, m'apareix el missatge:

“Licensing information for this component not found. No teniu prou rights with this license to use this functionality in the development environment.”

Hi ha diverses formes de solucionar aquest problema, entre ells, instal·lar un paquet de prerequisits de MicroStation tal com els que van sortir per XM. El problema aquí està que, possiblement a l'estar usant una versió de Windows 8 o Windows 10, moltes llibreries a l'antiga no funcionen i segurament aquesta VBA va ser construïda abans de 2010.VBA-xvi32-microstatin-excel

Una sortida pràctica: Instal·lar Visual Basic 2010 Express, això no carregarà molt l'ordinador i afegirà els controls OCX que posiblmente teniu experiència des del debugger podria detectar i ingressar des de la consola de comandaments.

Una ruta probable d' descarregar Visual Basic Express és aquesta.

En cas que s'estigui volent executar des Microstation Connect Edition, és gairebé segur que a l'aplicació cal fer-li un ajust ja que algunes rutes de llibreries van canviar.

Per executar una marcro VBA de Microstation, en el cas de V8i i anteriors es fa amb Utilities / Marcro / Project Manager. En el cas de Microstation Connect cal triar la pestanya Utilities de l'Ribbon.

Com poden veure, la macro s'executa però si volem tocar el codi ens mostrarà la finestra de protecció.

És possible trencar el password que té una VBA?

VBA-xvi32-microstatin-excel

La funcionalitat de protecció mitjançant contrasenya de Visual Basic for Applications busca generar control i seguretat als desenvolupaments, per la qual cosa no hauria de ser correcte preguntar per aquestes coses en un web. No obstant això, suposant que la solució és perquè se'ns va oblidar la clau o que a l'tècnic desenvolupador li va donar el chikungunya i va penjar el ratolí, aquí va una solució pràctica usant un editor hexadecimal.

VBA és adoptada per les empreses desenvolupadores, així que l'acrònim usat dins del codi per indicar quan es posa el password canvia d'una apliació a una altra. Per exemple, per treure la clau d'una macro VBA d'Excel normalment l'acrònim és DBP=”password”, per a l'Access la clau és DPX=”password”. Si trobem aquesta cadena, i canviem a alguna cosa com DBR en lloc de DBP, o DPR en lloc de DPX, en guardar-se, l'ordre de protecció de clau ja no estarà ben escrit i la vba s'obrirà sense protecció.

Això, usant Hex Editor, en l'opció Edit / Search, s'escriu la cadena que busquem, per exemple BDP, amb l'opció Text string i mantenint actiu Casi sensitive, tal com es mostra a la imatge següent.

macro-VBA-password

Usant un editor Hexadecimal (Hex Editor), és probable obrir la macro d'extensió .mvba de MicroStation i fer aquest canvi seguint aquests passos:

1. descarregar XVI32

Aquest es pot baixar de aquesta direcció; en el meu cas estic baixant la versió 2.55, baixa comprimida en zip, cal descomprimir i executar el fitxer xvi32.exe.

VBA-xvi32-microstatino

2. Obrir l'aplicació mvba.

És recomanable, abans d'obrir la VBA fer una còpia. Vegin que per protegit que estigui, aquí se li poden veure els budells. Bé, doncs l'única cosa que queda és buscar aquest acrònim, una vegada trobat es canvia una de les tres lletres per una X, i es guarda. Amb això, l'VBA ja està desprotegida.

En tancar l'aplicació preguntarà si guarden els canvis, cal indicar que sí.

VBA-xvi32-microstatin-excel

Una vegada que s'ha guardat, vegin que a l'obrir la VBA ja no sol·licita clau, de manera que és probable assignar-li una nova. Si l'usuari que havia oblidat la clau encara està treballant a l'empresa, cal anar a donar-li uns calbots al cap o almenys obligar-lo a pagar les cerveses de divendres; si va morir amb el chikungunya, fem un altre minut de silenci.

VBA-xvi32-microstatin-excel

Trobar l'acrònim per a VBA de Microstation (mvba), semblés ser el següent endevinalla. No és el mateix per Excel o Access però amb un esforç de sentit comú i paciència el podràs trobar.

Per l'estalvi que significa no poder saber el password, et donarem la cadena acrònim a canvi d'una col·laboració simbòlica. Per descomptat, sempre hi ha un culpable o un guanyador, a aquest cal saben que els recobraran XD. Per això cal comprar la descàrrega amb targeta de crèdit o Paypal.

Golgi Alvarez

Escriptor, investigador, especialista en Models de Gestió del Territori. Ha participat en la conceptualització i implementació de models com: Sistema Nacional d'Administració de la Propietat SINAP a Hondures, Model de Gestió de municipis Mancomunats a Hondures, Model Integrat de Gestió Cadastre - Registre a Nicaragua, Sistema d'Administració del Territori SAT a Colòmbia. Editor del bloc de coneixement Geofumades des de l'any 2007 i creador de l'Acadèmia AulaGEO que inclou més de 100 cursos sobre temàtiques GIS – CAD – BIM – Digital Twins.

Articles Relacionats

2 Comentaris

  1. Salutacions
    En el meu cas, no vull trencar, eliminar o destruir, la contrasenya de l'VBA de word, el que vull és em permeti saber o recordar la contrasenya. Saps com seria la manera ??

Deixa un comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

Torna al botó superior