Lamentablemente, no existe una función MDL específica que te permita detectar directamente si un archivo está siendo utilizado por otra persona o si se ha abierto como solo lectura. Sin embargo, puedes intentar abordar este problema de la siguiente manera:
1.
Verificar el modo de apertura:
- Puedes utilizar la función mdlFile_getOpenMode para obtener información sobre el modo en que se abrió el archivo. Si el archivo se abrió en modo de solo lectura, es posible que esté siendo utilizado por otra persona.
2.
Intentar abrir en modo de escritura:
- Usa mdlFile_open con la opción WRITE para intentar abrir el archivo en modo de escritura. Si el archivo está siendo utilizado por otra persona en modo de solo lectura, esta operación fallará.
Aquí tienes un ejemplo básico en pseudocódigo:
Recuerda que esta es una aproximación y puede no ser completamente precisa en todos los casos. La detección de si un archivo está siendo utilizado por otra persona generalmente se maneja a nivel del sistema operativo y no siempre es accesible directamente desde MicroStation MDL.
Espero que esto te sea de ayuda, Carlos.