martes
ene072003
Jawin, ingegracrión Java/Windows Open Source
martes, enero 7, 2003 at 1:00AM
Jawin es un proyecto muy interesante que permite la integracrión de programas Java con sistemas Windows basados en COM y DLLs.
Se puede utilizar Jawin para interactuar fýcilmente con aplicaciones como Microsoft Office, Microsoft Powerpoint, etc. Tambrión se puede utilizar para acceder al registro de Windows, a las APIs de seguridad, etc.
De hecho, Jawin se puede utilizar para llamar a cualquier método basado en COM o DLLs sin tener que escribir nada de JNI en el código.
Por ejemplo, mostrar una MessageBox seráa algo tan sencillo como :
Otro ejemplo, instanciar PowerPoint y crear una presentacrión simple se reducirýa a :
Desde luego, parece muy intersante. ¿Qué os parece?
Se puede utilizar Jawin para interactuar fýcilmente con aplicaciones como Microsoft Office, Microsoft Powerpoint, etc. Tambrión se puede utilizar para acceder al registro de Windows, a las APIs de seguridad, etc.
De hecho, Jawin se puede utilizar para llamar a cualquier método basado en COM o DLLs sin tener que escribir nada de JNI en el código.
Por ejemplo, mostrar una MessageBox seráa algo tan sencillo como :
FuncPtr msgBox = new FuncPtr("USER32.DLL", "MessageBoxW");
msgBox.invoke(0, "Hello From a DLL", "From Jawin", 0, ReturnFlags.FAIL_ON_FALSE);
Otro ejemplo, instanciar PowerPoint y crear una presentacrión simple se reducirýa a :
try
Ole32.CoInitialize();
DispatchPtr app = new DispatchPtr("new:PowerPoint.Application");
app.put("Visible", true);
DispatchPtr preses = app.getObject("Presentations");
DispatchPtr pres = (DispatchPtr) preses.invoke("add", -1);
DispatchPtr slides = pres.getObject("Slides");
DispatchPtr slide = (DispatchPtr) slides.invoke("Add", 1, 2);
DispatchPtr shapes = slide.getObject("Shapes");
DispatchPtr shape = (DispatchPtr) shapes.invoke("Item", 1);
DispatchPtr frame = shape.getObject("TextFrame");
DispatchPtr range = frame.getObject("TextRange");
range.put("Text", "Using Jawin to call COM objects");
Ole32.CoUninitialize();
{}
catch (Exception e)
e.printStackTrace();
{}
Desde luego, parece muy intersante. ¿Qué os parece?
in
j2se
j2se 
Reader Comments