* include/objbase.h (STGOPTIONS): Correct pwcsTemplateFile type. * include/aclui.h: Remove '\r', throughout. * include/msacm.h: Likewise. * lib/aclui.def: Likewise.
		
			
				
	
	
		
			187 lines
		
	
	
		
			6.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			187 lines
		
	
	
		
			6.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/*author: Adrian Sandor
 | 
						|
  written for MinGW*/
 | 
						|
#ifndef _MSACM_H
 | 
						|
#define _MSACM_H
 | 
						|
 | 
						|
#if __GNUC__ >= 3
 | 
						|
#pragma GCC system_header
 | 
						|
#endif
 | 
						|
 | 
						|
#ifdef __cplusplus
 | 
						|
extern "C" {
 | 
						|
#endif
 | 
						|
 | 
						|
typedef HANDLE HACMDRIVERID, HACMDRIVER, *LPHACMDRIVER; /*they're handles, right?*/
 | 
						|
 | 
						|
/*found through experimentation*/
 | 
						|
#define ACMDRIVERDETAILS_SHORTNAME_CHARS 32
 | 
						|
#define ACMDRIVERDETAILS_LONGNAME_CHARS 128
 | 
						|
#define ACMDRIVERDETAILS_COPYRIGHT_CHARS 80
 | 
						|
#define ACMDRIVERDETAILS_LICENSING_CHARS 128
 | 
						|
 | 
						|
/*I don't know the right values for these macros*/
 | 
						|
#define ACMFORMATDETAILS_FORMAT_CHARS 256
 | 
						|
#define ACMFORMATTAGDETAILS_FORMATTAG_CHARS 256
 | 
						|
#define ACMDRIVERDETAILS_FEATURES_CHARS 256
 | 
						|
 | 
						|
/*msdn.microsoft.com/library/default.asp?url=/library/en-us/multimed/htm/_win32_acmformatdetails_str.asp*/
 | 
						|
typedef struct {
 | 
						|
	DWORD          cbStruct;
 | 
						|
	DWORD          dwFormatIndex;
 | 
						|
	DWORD          dwFormatTag;
 | 
						|
	DWORD          fdwSupport;
 | 
						|
	LPWAVEFORMATEX pwfx;
 | 
						|
	DWORD          cbwfx;
 | 
						|
	char szFormat[ACMFORMATDETAILS_FORMAT_CHARS];
 | 
						|
} ACMFORMATDETAILSA, *LPACMFORMATDETAILSA;
 | 
						|
typedef struct {
 | 
						|
	DWORD          cbStruct;
 | 
						|
	DWORD          dwFormatIndex;
 | 
						|
	DWORD          dwFormatTag;
 | 
						|
	DWORD          fdwSupport;
 | 
						|
	LPWAVEFORMATEX pwfx;
 | 
						|
	DWORD          cbwfx;
 | 
						|
	WCHAR szFormat[ACMFORMATDETAILS_FORMAT_CHARS];
 | 
						|
} ACMFORMATDETAILSW, *LPACMFORMATDETAILSW;
 | 
						|
 | 
						|
/*msdn.microsoft.com/library/default.asp?url=/library/en-us/multimed/htm/_win32_acmformattagdetails_str.asp*/
 | 
						|
typedef struct {
 | 
						|
	DWORD cbStruct;
 | 
						|
	DWORD dwFormatTagIndex;
 | 
						|
	DWORD dwFormatTag;
 | 
						|
	DWORD cbFormatSize;
 | 
						|
	DWORD fdwSupport;
 | 
						|
	DWORD cStandardFormats;
 | 
						|
	char szFormatTag[ACMFORMATTAGDETAILS_FORMATTAG_CHARS];
 | 
						|
} ACMFORMATTAGDETAILSA, *LPACMFORMATTAGDETAILSA;
 | 
						|
typedef struct {
 | 
						|
	DWORD cbStruct;
 | 
						|
	DWORD dwFormatTagIndex;
 | 
						|
	DWORD dwFormatTag;
 | 
						|
	DWORD cbFormatSize;
 | 
						|
	DWORD fdwSupport;
 | 
						|
	DWORD cStandardFormats;
 | 
						|
	WCHAR szFormatTag[ACMFORMATTAGDETAILS_FORMATTAG_CHARS];
 | 
						|
} ACMFORMATTAGDETAILSW, *LPACMFORMATTAGDETAILSW;
 | 
						|
 | 
						|
/*msdn.microsoft.com/library/default.asp?url=/library/en-us/multimed/htm/_win32_acmdriverdetails_str.asp*/
 | 
						|
typedef struct {
 | 
						|
	DWORD  cbStruct;
 | 
						|
	FOURCC fccType;
 | 
						|
	FOURCC fccComp;
 | 
						|
	WORD   wMid;
 | 
						|
	WORD   wPid;
 | 
						|
	DWORD  vdwACM;
 | 
						|
	DWORD  vdwDriver;
 | 
						|
	DWORD  fdwSupport;
 | 
						|
	DWORD  cFormatTags;
 | 
						|
	DWORD  cFilterTags;
 | 
						|
	HICON  hicon;
 | 
						|
	char  szShortName[ACMDRIVERDETAILS_SHORTNAME_CHARS];
 | 
						|
	char  szLongName[ACMDRIVERDETAILS_LONGNAME_CHARS];
 | 
						|
	char  szCopyright[ACMDRIVERDETAILS_COPYRIGHT_CHARS];
 | 
						|
	char  szLicensing[ACMDRIVERDETAILS_LICENSING_CHARS];
 | 
						|
	char  szFeatures[ACMDRIVERDETAILS_FEATURES_CHARS];
 | 
						|
} ACMDRIVERDETAILSA, *LPACMDRIVERDETAILSA;
 | 
						|
typedef struct {
 | 
						|
	DWORD  cbStruct;
 | 
						|
	FOURCC fccType;
 | 
						|
	FOURCC fccComp;
 | 
						|
	WORD   wMid;
 | 
						|
	WORD   wPid;
 | 
						|
	DWORD  vdwACM;
 | 
						|
	DWORD  vdwDriver;
 | 
						|
	DWORD  fdwSupport;
 | 
						|
	DWORD  cFormatTags;
 | 
						|
	DWORD  cFilterTags;
 | 
						|
	HICON  hicon;
 | 
						|
	WCHAR  szShortName[ACMDRIVERDETAILS_SHORTNAME_CHARS];
 | 
						|
	WCHAR  szLongName[ACMDRIVERDETAILS_LONGNAME_CHARS];
 | 
						|
	WCHAR  szCopyright[ACMDRIVERDETAILS_COPYRIGHT_CHARS];
 | 
						|
	WCHAR  szLicensing[ACMDRIVERDETAILS_LICENSING_CHARS];
 | 
						|
	WCHAR  szFeatures[ACMDRIVERDETAILS_FEATURES_CHARS];
 | 
						|
} ACMDRIVERDETAILSW, *LPACMDRIVERDETAILSW;
 | 
						|
 | 
						|
/*msdn.microsoft.com/library/default.asp?url=/library/en-us/multimed/htm/_win32_acmformatenumcallback.asp*/
 | 
						|
typedef BOOL (CALLBACK *ACMFORMATENUMCBA) (
 | 
						|
	HACMDRIVERID        hadid,
 | 
						|
	LPACMFORMATDETAILSA pafd,
 | 
						|
	DWORD_PTR           dwInstance,
 | 
						|
	DWORD               fdwSupport
 | 
						|
);
 | 
						|
typedef BOOL (CALLBACK *ACMFORMATENUMCBW) (
 | 
						|
	HACMDRIVERID        hadid,
 | 
						|
	LPACMFORMATDETAILSW pafd,
 | 
						|
	DWORD_PTR           dwInstance,
 | 
						|
	DWORD               fdwSupport
 | 
						|
);
 | 
						|
 | 
						|
/*msdn.microsoft.com/library/default.asp?url=/library/en-us/multimed/htm/_win32_acmformattagenumcallback.asp*/
 | 
						|
typedef BOOL (CALLBACK *ACMFORMATTAGENUMCBA) (
 | 
						|
	HACMDRIVERID           hadid,
 | 
						|
	LPACMFORMATTAGDETAILSA paftd,
 | 
						|
	DWORD_PTR              dwInstance,
 | 
						|
	DWORD                  fdwSupport
 | 
						|
);
 | 
						|
typedef BOOL (CALLBACK *ACMFORMATTAGENUMCBW) (
 | 
						|
	HACMDRIVERID           hadid,
 | 
						|
	LPACMFORMATTAGDETAILSW paftd,
 | 
						|
	DWORD_PTR              dwInstance,
 | 
						|
	DWORD                  fdwSupport
 | 
						|
);
 | 
						|
 | 
						|
/*msdn.microsoft.com/library/default.asp?url=/library/en-us/multimed/htm/_win32_acmdriverenumcallback.asp*/
 | 
						|
typedef BOOL (CALLBACK *ACMDRIVERENUMCB) (
 | 
						|
	HACMDRIVERID hadid,
 | 
						|
	DWORD_PTR    dwInstance,
 | 
						|
	DWORD        fdwSupport
 | 
						|
);
 | 
						|
 | 
						|
/*and now the functions...*/
 | 
						|
 | 
						|
/*msdn.microsoft.com/library/default.asp?url=/library/en-us/multimed/htm/_win32_acmdriveropen.asp*/
 | 
						|
MMRESULT WINAPI acmDriverOpen(LPHACMDRIVER phad, HACMDRIVERID hadid, DWORD fdwOpen);
 | 
						|
/*msdn.microsoft.com/library/default.asp?url=/library/en-us/multimed/htm/_win32_acmdriverenum.asp*/
 | 
						|
MMRESULT WINAPI acmDriverEnum(ACMDRIVERENUMCB fnCallback, DWORD_PTR dwInstance, DWORD fdwEnum);
 | 
						|
/*msdn.microsoft.com/library/default.asp?url=/library/en-us/multimed/htm/_win32_acmformatenum.asp*/
 | 
						|
MMRESULT WINAPI acmFormatEnumA(HACMDRIVER had, LPACMFORMATDETAILSA pafd, ACMFORMATENUMCBA fnCallback, DWORD_PTR dwInstance, DWORD fdwEnum);
 | 
						|
MMRESULT WINAPI acmFormatEnumW(HACMDRIVER had, LPACMFORMATDETAILSW pafd, ACMFORMATENUMCBW fnCallback, DWORD_PTR dwInstance, DWORD fdwEnum);
 | 
						|
/*msdn.microsoft.com/library/default.asp?url=/library/en-us/multimed/htm/_win32_acmdriverclose.asp*/
 | 
						|
MMRESULT WINAPI acmDriverClose(HACMDRIVER had, DWORD fdwClose);
 | 
						|
/*msdn.microsoft.com/library/default.asp?url=/library/en-us/multimed/htm/_win32_acmdriverdetails.asp*/
 | 
						|
MMRESULT WINAPI acmDriverDetailsA(HACMDRIVERID hadid, LPACMDRIVERDETAILSA padd, DWORD fdwDetails);
 | 
						|
MMRESULT WINAPI acmDriverDetailsW(HACMDRIVERID hadid, LPACMDRIVERDETAILSW padd, DWORD fdwDetails);
 | 
						|
/*msdn.microsoft.com/library/default.asp?url=/library/en-us/multimed/htm/_win32_acmformattagenum.asp*/
 | 
						|
MMRESULT WINAPI acmFormatTagEnumA(HACMDRIVER had, LPACMFORMATTAGDETAILSA paftd, ACMFORMATTAGENUMCBA fnCallback, DWORD_PTR dwInstance, DWORD fdwEnum);
 | 
						|
MMRESULT WINAPI acmFormatTagEnumW(HACMDRIVER had, LPACMFORMATTAGDETAILSW paftd, ACMFORMATTAGENUMCBW fnCallback, DWORD_PTR dwInstance, DWORD fdwEnum);
 | 
						|
 | 
						|
#ifdef UNICODE
 | 
						|
 | 
						|
typedef ACMFORMATDETAILSW ACMFORMATDETAILS, *LPACMFORMATDETAILS;
 | 
						|
typedef ACMFORMATTAGDETAILSW ACMFORMATTAGDETAILS, *LPACMFORMATTAGDETAILS;
 | 
						|
typedef ACMDRIVERDETAILSW ACMDRIVERDETAILS, *LPACMDRIVERDETAILS;
 | 
						|
typedef ACMFORMATENUMCBW ACMFORMATENUMCB;
 | 
						|
typedef ACMFORMATTAGENUMCBW ACMFORMATTAGENUMCB;
 | 
						|
#define acmFormatEnum acmFormatEnumW
 | 
						|
#define acmDriverDetails acmDriverDetailsW
 | 
						|
#define acmFormatTagEnum acmFormatTagEnumW
 | 
						|
 | 
						|
#else /*ifdef UNICODE*/
 | 
						|
 | 
						|
typedef ACMFORMATDETAILSA ACMFORMATDETAILS, *LPACMFORMATDETAILS;
 | 
						|
typedef ACMFORMATTAGDETAILSA ACMFORMATTAGDETAILS, *LPACMFORMATTAGDETAILS;
 | 
						|
typedef ACMDRIVERDETAILSA ACMDRIVERDETAILS, *LPACMDRIVERDETAILS;
 | 
						|
typedef ACMFORMATENUMCBA ACMFORMATENUMCB;
 | 
						|
typedef ACMFORMATTAGENUMCBA ACMFORMATTAGENUMCB;
 | 
						|
#define acmFormatEnum acmFormatEnumA
 | 
						|
#define acmDriverDetails acmDriverDetailsA
 | 
						|
#define acmFormatTagEnum acmFormatTagEnumA
 | 
						|
 | 
						|
#endif /*ifdef UNICODE*/
 | 
						|
 | 
						|
#ifdef __cplusplus
 | 
						|
}
 | 
						|
#endif
 | 
						|
 | 
						|
#endif
 |