|
Java provides JNI - java native interface. this is the only way to communicate between Java - Win32 paltfoprms. But JNI needs win32 components as pure win32 dlls and it doesnt understand COM components. So write a win32 dll wrpper over the com component and use it.
cheers..Milton KB
|
|
|
|
|
Thank you so much for your help. But I really need a simple way to call a method in a COM object from a Java application.
William
|
|
|
|
|
|
|
All,
I am currently using the Typelib wrappers for MSXML that was generated from the MFC Typelib Class wizard. I think I am using the objects incorrectly, and this is generating unhandled exception errors.
I use wizard MFC Class from Typelib to generate wrapper classes for the MSXML5 control (CXMLDOMDocument, CXMLDOMElement, CXMLDOMNode, and CXMLNodeList). The exception occurs when I pass a CXMLDOMNode reference to a function that I want it to work on by stepping down farther in the node tree. For example:
If(m_XMLDOMroot.hasChildNodes())
{
int rootchildcount = RootNodeList.get_length();
for(int i = 0; i < rootchildcount; ++i)
{
CXMLDOMElement childnode = RootNodeList.get_item(i); <- This code sometimes user breaks
SetChildNode(childnode);
}
}
PS - I did not know it this group would also apply to this message.
Robert
|
|
|
|
|
Hi,
Could anyone tell me how to detect the play of a video file (any video file like AVI, WMV, MPEG etc...)?
If any application (like RealPlayer or Windows Media Player) plays the video file, my application should recieve a notification.
Thanks in advance,
Pavan
Regards,
Pavan
|
|
|
|
|
Hi, I am trying to write a program to access messages from outlook express. I have downloaded 4 programs with source code which all work but will not compile on Bloodshed C++ Visual c++(4) nor visual studio 2005.
Is is possible to load mapi32.dll on any of these three compilers? I have writen programs to access the parrallel port / and usb ports no problem but can't find anything simple to start using mapi. MFC will not work either.
Alternatively what should I buy to make sure it will be possible to access outlook? (I have spent nearly 50 hours so far trying all combinations and no joy)
Is there an equivalent to this for mapi32.dll:
HMODULE myDll;
myDll = LoadLibrary("K8055D.DLL");
myOpenDevice = (tOpenDevice)GetProcAddress(myDll,"OpenDevice");
tWriteAllDigital myWriteAllDigital;
myWriteAllDigital = (tWriteAllDigital)GetProcAddress(myDll,"WriteAllDigital");
int j = myOpenDevice(0);
myWriteAllDigital(255-data);
if (data == 0) FreeLibrary(myDll);
Many thanks
|
|
|
|
|
Is there any downloadable book on internet to learn COM in C++ from the fundamental steps?
|
|
|
|
|
Inside COM by Dale Rogerson is a good book for beginners but I dont know u will get it as ebook
never say die
|
|
|
|
|
I have read the article "Building an Office2K COM addin with VC++/ATL"
Although I followed the steps one by one as it has been specified in the article and the registry entry for the dll was entered correctly by the code
HKCU
{
Software
{
Microsoft
{
Office
{
Outlook
{
Addins
{
'OutlookAddin.Addin'
{
val FriendlyName = s 'ADOutlook2K Addin'
val Description = s 'ATLCOM Outlook Addin'
val LoadBehavior = d '00000008'
val CommandLineSafe = d '00000000'
}
}
}
}
}
}
}
no addin is appeared in "Tools->Options, under Other tab,
Advanced Options->COM Addins "
would you help me with the matter, please
|
|
|
|
|
have u created the entries in HKEY_CLASSES_ROOT with the friendly anem and clsid?
hello
|
|
|
|
|
have u created the entries in HKEY_CLASSES_ROOT with the friendly name and clsid?
-- modified at 0:06 Wednesday 9th August, 2006
Sudeesh
|
|
|
|
|
What's the relation of ComBStr, _bstr_t, BStr??
|
|
|
|
|
|
|
|
|
In short: CComBSTR is a thin wrapper around the BSTR API, while _bstr_t is a rather thick one. By thick I mean that it wraps associated HRESULTs into exceptions.
_bstr_t is more suitable for applications, in which it's almost always possible to throw exceptions across calls. In certain scenarios however, such as in COM components, it's not advisable to do that because of threading/apartment issues (it's downright dangerous!). In such scenarios, CComBSTR is far better suitable, as it does not throw exceptions.
--
Mr. Bender's Wardrobe by ROBOTANY 500
|
|
|
|
|
|
Hi all,
i am trying to create GUID with CoCreateGuid but it is
not creating guid.
I am working on windows XP.
ole32.lib is added in link tab.
then what is the problem?
what is wrong in this code?
#include <iostream.h>
#include<objbase.h>
int main(void)
{
HRESULT Res;
GUID *pGuid=NULL;
LPVOID pIni = NULL;
if(CoInitialize(pIni) == S_OK)
{
Res = CoCreateGuid(pGuid);
if(Res == S_OK)
{
cout<<"Created";
}
CoUninitialize();
}
return 0;
}
Thanks in advance
|
|
|
|
|
Its failing because you are passing a NULL pointer into CoCreateGuid(), try this instead.
<br />
GUID guid;
LPVOID pIni = NULL;<br />
<br />
if(CoInitialize(pIni) == S_OK)<br />
{ <br />
HRESULT Res = CoCreateGuid(&guid);
if(Res == S_OK)<br />
{<br />
cout<<"Created";<br />
} <br />
CoUninitialize();<br />
}<br />
-- modified at 3:40 Friday 4th August, 2006
Darka [ Xanya]
"When you're taught to love everyone, to love your enemies, then what value does that place on love?"
|
|
|
|
|
how can i handling IHTMLElement event?
i want to process the onclick(maybe other) event in IE
|
|
|
|
|
I am trying to create an activex object using VBScript and I want to release the object after usage. I used the following to do it:
//create
Set obj = CreateObject(SomeProgId)
//code
....
....
//release
Set obj = Nothing
The last part "Set obj = Nothing" which is supposed to release the object from the IE memory does not seem to work. Can some one help me in this regard because this looks like a generic problem that someone would have faced earlier.
sunil
|
|
|
|
|
There is a delay between the last reference to an in-process COM object being released and the DLL actually being unloaded. The DLL is unloaded when IE calls CoFreeUnusedLibraries(Ex) . You have no control over when IE will call this API.
|
|
|
|
|
I have created an Activex object and registered it. I can instantiate the object in VBScript -CreateObject works fine without any problem.
However, I have noticed that if the browser (IE in this case) is not closed the object OCX file cannot be deleted and unregistered. As far as VBScript it is sufficient to set the object to "nothing" to release it, so I think there's something I need to add in the Activex code.
In the Activex object I'm also using the IObjectSafety interface the AddRef() and Release() function are added as bellow
------------------------ CODE STARTS HERE
ULONG FAR EXPORT CMyCtrl::XObjSafe::AddRef()
{
METHOD_PROLOGUE(CMyCtrl, ObjSafe)
return pThis->ExternalAddRef();
}
ULONG FAR EXPORT CMyCtrl::XObjSafe::Release()
{
METHOD_PROLOGUE(CMyCtrl, ObjSafe)
return pThis->ExternalRelease();
}
------------------------ CODE ENDS
I have a naive question: do I need to add something in the Release() function to properly delete the object? and where can I find an example of how this is done? From what I've read so far I know there is a reference count I need to maintain and check at Release() but I'm confused on where do I add this.
Any suggestions is welcome!
|
|
|
|