You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

48 lines
847 B
C++

// exif.h : Declaration of the Cexif
#pragma once
#include "resource.h" // main symbols
#include "exiv2com.h"
// Cexif
class ATL_NO_VTABLE Cexif :
public CComObjectRootEx<CComSingleThreadModel>,
public CComCoClass<Cexif, &CLSID_exif>,
public IDispatchImpl<Iexif, &IID_Iexif, &LIBID_exiv2comLib, /*wMajor =*/ 1, /*wMinor =*/ 0>
{
public:
Cexif()
{
}
DECLARE_REGISTRY_RESOURCEID(IDR_EXIF)
BEGIN_COM_MAP(Cexif)
COM_INTERFACE_ENTRY(Iexif)
COM_INTERFACE_ENTRY(IDispatch)
END_COM_MAP()
DECLARE_PROTECT_FINAL_CONSTRUCT()
HRESULT FinalConstruct()
{
return S_OK;
}
void FinalRelease()
{
}
public:
STDMETHOD(GetExif)(BSTR FileName, BSTR Tag, VARIANT* OutVal);
STDMETHOD(GetExifInterpreted)(BSTR FileName, VARIANT* OutVal);
};
OBJECT_ENTRY_AUTO(__uuidof(exif), Cexif)