I'm a web developer with very little background in COM programming; I want to develop a property sheet to allow another department to change thumbnail photos via ADUC.
So far I have made all the scripts to register the DLL and add it to ADUC which I tested with a pre-compiled DLL I had found, so the only thing left is to actually make the DLL itself.
Through research I've found out that I need to implement the IShellExtInit and IShellPropSheetExt classes if I use C++; I'd really like to know how to do it in C# but which ever is easier to learn first would be preferable then I can try to learn the other language on my own.
Can anyone point me in the direction of some working code samples or tutorials? All I have found is more theory and I learn a lot better off of following tutorials, so it would be a great help!
I made the following shell so far please let me know if it's off but with my limited COM knowledge it's all I've written as of now.
#include "stdafx.h"
#include <ShObjIdl.h>
class PropPage : IShellExtInit, IShellPropSheetExt
{
/////////////////////////
//IShellExtInit methods//
/////////////////////////
HRESULT Initialize(PCIDLIST_ABSOLUTE pidlFolder, IDataObject *pdtobj, HKEY hkeyProgID)
{
return S_OK;
}
//////////////////////////////
//IShellPropSheetExt methods//
//////////////////////////////
HRESULT AddPages(LPFNADDPROPSHEETPAGE pfnAddPage, LPARAM lParam)
{
return S_OK;
}
HRESULT ReplacePage(UINT uPageID, LPFNADDPROPSHEETPAGE pfnReplacePage, LPARAM lParam)
{
return S_OK;
}
/////////////////
//Misc. methods//
/////////////////
};
P.S. I will split it up into a cpp and header when I have more but while I have no idea what I'm doing it's easier to contain it all in the cpp