[wdmaudiodev] Re: Create an object of an APO in a win32 APP

  • From: Abhinav Singh <abhinav4ever@xxxxxxxxxxx>
  • To: "wdmaudiodev@xxxxxxxxxxxxx" <wdmaudiodev@xxxxxxxxxxxxx>
  • Date: Tue, 30 Dec 2014 23:48:15 +0530

I am creating a deskband(taskbar toolbar, just a simple button) to provide 
quick access to the user to turn on/off the APO effect.From: 
Matthew.van.Eerde@xxxxxxxxxxxxx
To: wdmaudiodev@xxxxxxxxxxxxx
Subject: [wdmaudiodev] Re: Create an object of an APO in a win32 APP
Date: Mon, 29 Dec 2014 17:00:04 +0000









Interesting… why are you instantiating an APO from an Explorer plugin?
 


From: wdmaudiodev-bounce@xxxxxxxxxxxxx [mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx]
On Behalf Of Abhinav Singh

Sent: Wednesday, December 24, 2014 7:04 AM

To: wdmaudiodev@xxxxxxxxxxxxx

Subject: [wdmaudiodev] Re: Create an object of an APO in a win32 APP


 


thanks…I was running trying to create the APO object from a 32 bit app which 
was causing this problem..I actually encountered this problem when trying to 
create an APO instance from a dll
 loaded in explorer.exe but somehow it always failed so I decided to check it 
on a simple win32 app…a restart fixed the issue with the dll loaded in the 
explorer as well.



 


Sent from Windows Mail


 




From: Matthew.van.Eerde@xxxxxxxxxxxxx

Sent: ‎Monday‎, ‎December‎ ‎22‎, ‎2014 ‎1‎:‎33‎ ‎PM

To: wdmaudiodev@xxxxxxxxxxxxx



 



If you’re running a 32-bit app on a 64-bit version of Windows, this is 
expected; APOs are typically native-only.
 
If you’re running native, check to see that the CLSID in question is registered 
under HKEY_CLASSES_ROOT\CLSID\{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx} and that
 the hosting .dll exists.
 


From:
wdmaudiodev-bounce@xxxxxxxxxxxxx [mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx]
On Behalf Of Abhinav Singh

Sent: Monday, December 22, 2014 1:24 PM

To: wdmaudiodev@xxxxxxxxxxxxx

Subject: [wdmaudiodev] Create an object of an APO in a win32 APP


 


 


I am using the code below to create an object of an APO from a  normal win32 
app. The intention is to check whether the APO is installed in the PC. However 
i get a Class Not Registered error
 every time i execute the below piece of code. 


 



HRESULT isExistAPO(CLSID CLSID_ClassID, IID IID_InterfaceID)


           
{


                 // CLSID_ClassID is the class GUID of the APO


                //IID_InterfaceID is the interface ID of the APO


 


                       
//CoInitialize(NULL);


 


                       
CoInitializeEx(NULL, COINIT_APARTMENTTHREADED);


 


                       
HRESULT hr = S_OK;


 


                       
IUnknown *pAPO = NULL;


 


                       
hr = CoCreateInstance(CLSID_ClassID,


                                   
NULL,


                                   
CLSCTX_INPROC_SERVER,


                                   
IID_InterfaceID,


                                   
(void**)&pAPO);


                       
if (SUCCEEDED(hr))


                       
{


                                   
//APO found


                                   
pAPO->Release();


                       
}


                       
else


                       
{


                                   
//Failed


                       
}


                       
CoUninitialize();


                       
return hr;


           
}






                                          

Other related posts: