1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
import kotlin.reflect.full.functions import kotlin.reflect.full.createInstance import java.io.File fun main() { try { // Ruta completa de la DLL val dllPath = "C:\\Users\\pepitogrillo\\ejemplo.dll" // Verifica que el archivo DLL exista antes de cargarlo val dllFile = File(dllPath) if (!dllFile.exists()) { println("La DLL no se encontró en la ubicación especificada.") return } val assembly = ClassLoader.getSystemClassLoader().loadClass("Hola.Hola") val obj = assembly.kotlin.createInstance() val mainMethod = assembly.kotlin.functions.find { it.name == "Main" } if (mainMethod != null) { mainMethod.call(obj) } else { println("No se encontró un método Main en la clase Hola.Hola") } } catch (e: ClassNotFoundException) { println("No se pudo cargar la DLL o la clase Hola.Hola") } } |