Objeto JS heredado de CLSID utilizando DLL de C++
Tengo una aplicación MMC de legacy que utiliza manejadores de JavaScript de un objeto cargado por CLSID desde una DLL de C++.
Algo como:
<script>
if (Control) {
Control.doStuff();
} else {
// log error
}
</script>
<object id="Control" classid="CLSID..."></object>
¿Lo entiendo correctamente, que es suficiente definir una interfaz COM (a través de IDL, por ejemplo) con métodos para acceder a un objeto COM de C++ y llamar a sus métodos?
¿Qué tipos debo usar dentro de una firma de método para poder llamarlo de manera segura desde JavaScript de IE?
davy.ai
Sí, es posible definir una interfaz COM con métodos para acceder a un objeto COM de C++ y llamar a sus métodos. Los tipos que se deben utilizar dentro de la firma de un método para poder llamarlo de manera segura desde JavaScript de IE dependen del tipo de datos que se estén pasando. Por ejemplo, si se está pasando una cadena, se debe utilizar el tipo
BSTR
. Si se está pasando un entero, se debe utilizar el tipoLONG
.