DownloadMicrostation-Bentley

Romper o contrasinal de VBA Microstation macro

Visual Basic para aplicacións é unha serie de bibliotecas que Microsoft puxo a disposición, algo anticuadas pero moi potentes, especialmente nas versións de Office anteriores a 2010. Aínda que segue existindo, agora hai moitos desenvolvementos en .NET e noutros entornos; aínda así, para os desenvolvementos baseados en cadros, VBA é unha solución bastante práctica e caso de Microstation, bastante sinxelo. Polo menos lembro falar diso mostrando o mapa confinado e algo con XFM.

Estes son algúns dos problemas que viñeron a min esta mañá mentres corría na rotonda da Virxe nunha casa tropical:

Axuda: Cando execute o VBA, recibo a mensaxe:

"Non se atopou a información de licenza deste compoñente. Non tes suficientes dereitos con esta licenza para usar esta funcionalidade no ambiente de desenvolvemento."

Hai varias maneiras de solucionar este problema, incluíndo a instalación dun paquete de requisitos previos para a microestación como os lanzados para XM. O problema aquí é que, posiblemente, cando esteas a usar unha versión de Windows 8 ou Windows 10, moitas bibliotecas antigas non funcionan e seguramente este VBA foi construído antes de 2010.vba-xvi32-microstatin-excel

Unha saída práctica: instala Visual Basic 2010 Express, isto non cargará moito a computadora e engadirá os controis OCX que, posiblemente, un usuario experimentado xa que o depurador podería detectar e ingresar desde a consola de comandos.

Unha ruta probable de descargar Visual Basic Express é este.

No caso de querer executar desde Microstation Connect Edition, é case seguro que a aplicación ten que facer un axuste porque cambiaron algunhas rutas da biblioteca.

Para executar un microstación VBA marcro, no caso de V8i e anteriores faise con Utilities / Marcro / Project Manager. No caso de Microstation Connect, tes que escoller a pestana Utilidades da cinta.

Como se pode ver, a macro execútase pero se queremos tocar o código mostrará a xanela de protección.

¿É posible romper a contraseña que ten un VBA?

vba-xvi32-microstatin-excel

A funcionalidade de protección de contrasinal de Visual Basic para aplicacións busca xerar control e seguridade para os desenvolvementos, polo que non debería ser correcto preguntar sobre estas cousas nun sitio web. Non obstante, supoñendo que a solución se debe a que esquecemos o contrasinal ou que o técnico de desenvolvemento deu a chikungunya e colgou o rato, aquí tes unha solución práctica usando un editor hexadecimal.

VBA é adoptado polas empresas desenvolvedoras, polo que o acrónimo utilizado dentro do código para indicar cando se introduce o contrasinal cambia dunha aplicación a outra. Por exemplo, para eliminar o contrasinal dunha macro VBA de Excel normalmente o acrónimo é DBP=”contrasinal”, para o acceso o contrasinal é DPX=”contrasinal”. Se atopamos esa cadea e a cambiamos a algo como DBR en lugar de DBP, ou DPR en lugar de DPX, cando se garda, o comando de tecla protect deixará de escribirse correctamente e o vba abrirase sen protección.

No Hex Editor, na opción Editar / Busca, a cadea que buscamos, por exemplo, BDP, escríbese coa opción Cadea de texto e mantén o caso activo activo, como se mostra na seguinte imaxe.

macro-vba-contrasinal

Usando un editor Hexadecimal (Hex Editor), é probable que abra a macro de extensión .mvba de microestación e faga ese cambio seguindo estes pasos:

1. Descargar XVI32

Pode descargarse desde este enderezo; no meu caso estou descargando a versión 2.55, baixa comprimida en zip, tes que descomprimir e executar o arquivo xvi32.exe.

vba-xvi32-microstatino

2. Abre a aplicación mvba.

Recoméndase facer unha copia antes de abrir o VBA. Mira que por moi protexido que estea, aquí podes ver as súas entrañas. Ben, o único que queda é buscar ese acrónimo, unha vez atopado, unha das tres letras cambia por un X e gárdase. Con isto, o VBA xa está desprotexido.

Ao pechar a aplicación preguntaralles se gardan os cambios, é necesario indicar que si.

vba-xvi32-microstatin-excel

Unha vez gardado, vexa que cando abre o VBA xa non solicita unha clave, polo que é probable que lle asigne unha nova. Se o usuario que esquecera o contrasinal segue traballando na empresa, ten que ir a darlle algúns golpes na cabeza ou polo menos obrigalo a pagar as cervexas o venres; se morreu coa chikungunya, temos outro minuto de silencio.

vba-xvi32-microstatin-excel

Atopar o acrónimo de Microstation VBA (mvba) parece ser o seguinte enigma. Non é o mesmo para Excel ou Access, pero cun esforzo de sentido común e paciencia podes atopalo.

Polo aforro que supón non poder coñecer o contrasinal, darémosche a cadea de siglas a cambio dunha colaboración simbólica. Por suposto, sempre hai un culpable ou un gañador, ese debe cobrarse XD. Para iso tes que mercar a descarga con Tarxeta de crédito ou PayPal.

Golgi Álvarez

Escritor, investigador, especialista en Modelos de Ordenación do Territorio. Participou na conceptualización e implantación de modelos como: Sistema Nacional de Administración de Patrimonio SINAP en Honduras, Modelo de Xestión de Municipios Mancomunados en Honduras, Modelo Integrado de Xestión Catastral - Rexistro en Nicaragua, Sistema de Administración do Territorio SAT en Colombia. . Editor do blog de coñecemento Geofumadas dende 2007 e creador da Academia AulAGEO que inclúe máis de 100 cursos sobre temas SIX - CAD - BIM - Xemelgos Dixitais.

artigos relacionados

2 Comentarios

  1. lembranzas
    No meu caso, non quero romper, eliminar ou destruír a palabra contrasinal vba, o que quero é avisarme ou recordar o contrasinal. ¿Sabes cal sería o modo?

Deixe un comentario

Enderezo de correo electrónico non será publicado. Os campos obrigatorios están marcados con *

Polo tanto, comproba
preto
Botón de volta ao principio