Click here to Skip to main content
15,917,875 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
GeneralRe: link error Pin
RocardoS13-Aug-02 10:16
sussRocardoS13-Aug-02 10:16 
Generalmultiple recordsets Pin
danag13-Aug-02 9:30
danag13-Aug-02 9:30 
GeneralRe: multiple recordsets Pin
Bill Wilson13-Aug-02 13:09
Bill Wilson13-Aug-02 13:09 
GeneralRe: multiple recordsets Pin
danag13-Aug-02 13:35
danag13-Aug-02 13:35 
GeneralRe: multiple recordsets Pin
Alexander Wiseman13-Aug-02 14:54
Alexander Wiseman13-Aug-02 14:54 
Generalmodeless dialog-Resizing Pin
udayGovekar13-Aug-02 9:23
udayGovekar13-Aug-02 9:23 
GeneralRe: modeless dialog-Resizing Pin
Tomasz Sowinski13-Aug-02 9:26
Tomasz Sowinski13-Aug-02 9:26 
QuestionHow do i use acmFormatEnum? All help is appreciated! Pin
redeemer13-Aug-02 9:10
redeemer13-Aug-02 9:10 
I'm trying to enumerate all the different formats of a specific driver but acmFormatEnum keeps returning MMSYSERR_INVALPARAM (At least one parameter is invalid.). Anyone have an example of how to do this? Here's my code (id is a valid driver identifier of a driver):
ACMFORMATTAGDETAILS acmTagDetails;
<br>
void StartEnum()
{
	HACMDRIVER hAcm;

	acmDriverOpen(&hAcm, id, 0);
	
	acmTagDetails.cbStruct = sizeof(ACMFORMATTAGDETAILS);
	acmFormatTagEnum(hAcm, &acmTagDetails, acmTagCallback, NULL, 0);

	acmDriverClose(hAcm, 0);
}
<br>

BOOL WINAPI acmTagCallback(HACMDRIVERID hadid, LPACMFORMATTAGDETAILS paftd, DWORD dwInstance,DWORD fdwSupport)
{
	ACMFORMATDETAILS acmFormat;
	HACMDRIVER hAcm;

	memset(&acmFormat, 0, sizeof acmFormat);
	acmFormat.cbStruct = sizeof(ACMFORMATDETAILS);
	acmMetrics(NULL, ACM_METRIC_MAX_SIZE_FORMAT, &acmFormat.cbwfx);
	acmFormat.pwfx = (WAVEFORMATEX *)malloc(acmFormat.cbwfx);

	acmDriverOpen(&hAcm, hadid, 0);
	acmFormatEnum(hAcm, &acmFormat, formatCallback, NULL, ACM_FORMATENUMF_WFORMATTAG);
	acmDriverClose(hAcm, 0);

	return TRUE;
}
<br>

BOOL WINAPI formatCallback(HACMDRIVERID hadid, LPACMFORMATDETAILS pafd, DWORD dwInstance, DWORD fdwSupport)
{
	ACMDRIVERDETAILS details;

	details.cbStruct = sizeof(details);

	acmDriverDetails(hadid, &details, NULL);

	SendMessage(GetDlgItem(ghWnd, IDC_FORMATS), LB_INSERTSTRING, 0, (LPARAM)details.szLongName);

	return TRUE;
}


Thanks for your help!

-Rune Svendsen
AnswerRe: How do i use acmFormatEnum? All help is appreciated! Pin
Ernest Laurentin13-Aug-02 10:46
Ernest Laurentin13-Aug-02 10:46 
AnswerRe: How do i use acmFormatEnum? All help is appreciated! Pin
Ernest Laurentin14-Aug-02 17:40
Ernest Laurentin14-Aug-02 17:40 
GeneralCOleSafeArray Pin
Mazdak13-Aug-02 9:08
Mazdak13-Aug-02 9:08 
GeneralRe: COleSafeArray Pin
Ernest Laurentin13-Aug-02 10:06
Ernest Laurentin13-Aug-02 10:06 
Generalchar representation of a double Pin
senorbuckwheat13-Aug-02 8:22
senorbuckwheat13-Aug-02 8:22 
GeneralRe: char representation of a double Pin
Chris Losinger13-Aug-02 8:30
professionalChris Losinger13-Aug-02 8:30 
GeneralRe: char representation of a double Pin
Tomasz Sowinski13-Aug-02 8:31
Tomasz Sowinski13-Aug-02 8:31 
Generalmodal dialog range checking Pin
jimNLX13-Aug-02 8:19
jimNLX13-Aug-02 8:19 
GeneralRe: modal dialog range checking Pin
Tomasz Sowinski13-Aug-02 8:21
Tomasz Sowinski13-Aug-02 8:21 
GeneralRe: modal dialog range checking Pin
jimNLX13-Aug-02 8:23
jimNLX13-Aug-02 8:23 
GeneralRe: modal dialog range checking Pin
Tomasz Sowinski13-Aug-02 8:28
Tomasz Sowinski13-Aug-02 8:28 
GeneralRe: modal dialog range checking Pin
jimNLX13-Aug-02 8:43
jimNLX13-Aug-02 8:43 
GeneralRe: modal dialog range checking Pin
Tomasz Sowinski13-Aug-02 9:13
Tomasz Sowinski13-Aug-02 9:13 
GeneralRe: modal dialog range checking Pin
jimNLX13-Aug-02 9:28
jimNLX13-Aug-02 9:28 
GeneralRe: modal dialog range checking Pin
Tomasz Sowinski13-Aug-02 9:30
Tomasz Sowinski13-Aug-02 9:30 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.