Struttura ACMFORMATCHOOSE (msacm.h)
La struttura ACMFORMATCHOOSE contiene informazioni utilizzate da ACM per inizializzare la finestra di dialogo di selezione del formato audio waveform definita dal sistema. Dopo che l'utente chiude la finestra di dialogo, il sistema restituisce informazioni sulla selezione dell'utente in questa struttura.
Sintassi
typedef struct tACMFORMATCHOOSE {
DWORD cbStruct;
DWORD fdwStyle;
HWND hwndOwner;
LPWAVEFORMATEX pwfx;
DWORD cbwfx;
LPCSTR pszTitle;
char szFormatTag[ACMFORMATTAGDETAILS_FORMATTAG_CHARS];
char szFormat[ACMFORMATDETAILS_FORMAT_CHARS];
LPSTR pszName;
DWORD cchName;
DWORD fdwEnum;
LPWAVEFORMATEX pwfxEnum;
HINSTANCE hInstance;
LPCSTR pszTemplateName;
LPARAM lCustData;
ACMFORMATCHOOSEHOOKPROC pfnHook;
} ACMFORMATCHOOSE, *PACMFORMATCHOOSE, *LPACMFORMATCHOOSE;
Members
cbStruct
Dimensioni, in byte, della struttura ACMFORMATCHOOSE . Questo membro deve essere inizializzato prima che un'applicazione chiami la funzione acmFormatChoose . Le dimensioni specificate in questo membro devono essere sufficienti per contenere la struttura ACMFORMATCHOOSE di base.
fdwStyle
Flag di stile facoltativi per la funzione acmFormatChoose . Questo membro deve essere inizializzato in una combinazione valida dei flag seguenti prima che un'applicazione chiami la funzione acmFormatChoose :
Nome | Descrizione |
---|---|
|
La Guida sensibile al contesto sarà disponibile nella finestra di dialogo. Per usare questa funzionalità, un'applicazione deve registrare le costanti ACMHELPMSGCONTEXTMENU e ACMHELPMSGCONTEXTHELP usando la funzione RegisterWindowMessage . Quando l'utente richiama la Guida, il messaggio registrato verrà inviato alla finestra proprietaria. Il messaggio conterrà i parametri wParam e lParam dal WM_CONTEXTMENU originale o WM_CONTEXTHELP messaggio. |
|
Abilita la funzione hook a cui punta il membro pfnHook . Un'applicazione può usare funzioni hook per un'ampia gamma di personalizzazioni, tra cui la risposta al messaggio MM_ACM_FORMATCHOOSE . |
|
Determina la creazione del modello di finestra di dialogo identificato da hInstance e pszTemplateName. |
|
Il membro hInstance identifica un blocco di dati che contiene un modello di finestra di dialogo precaricato. Se questo flag viene specificato, ACM ignora il membro pszTemplateName . |
|
Il buffer a cui punta pwfx contiene una struttura WAVEFORMATEX valida che verrà usata dalla finestra di dialogo come selezione iniziale. |
|
Nella finestra di dialogo verrà visualizzato un pulsante della Guida. Per usare un file della Guida personalizzato, un'applicazione deve registrare la costante ACMHELPMSGSTRING con la funzione RegisterWindowMessage . Quando l'utente preme il pulsante della Guida, il messaggio registrato verrà inviato al proprietario. |
hwndOwner
Handle per la finestra proprietaria della finestra di dialogo. Questo membro può essere qualsiasi handle di finestra valido o NULL se la finestra di dialogo non ha proprietario. Questo membro deve essere inizializzato prima di chiamare la funzione acmFormatChoose .
pwfx
Puntatore a una struttura WAVEFORMATEX . Se il flag ACMFORMATCHOOSE_STYLEF_INITTOWFXSTRUCT viene specificato nel membro fdwStyle , questa struttura deve essere inizializzata in un formato valido. Quando viene restituita la funzione acmFormatChoose , questo buffer contiene il formato selezionato. Se l'utente annulla la finestra di dialogo, non verranno apportate modifiche al buffer.
cbwfx
Dimensioni, in byte, del buffer a cui punta pwfx. Se il buffer è troppo piccolo per contenere le informazioni sul formato, la funzione acmFormatChoose restituisce ACMERR_NOTPOSSIBLE. Inoltre, ACM copia le dimensioni necessarie in questo membro. Un'applicazione può usare le funzioni acmMetrics e acmFormatTagDetails per determinare le dimensioni maggiori necessarie per questo buffer.
pszTitle
Puntatore a una stringa da inserire nella barra del titolo della finestra di dialogo. Se questo membro è NULL, ACM usa il titolo predefinito , ovvero "Selezione audio".
szFormatTag[ACMFORMATTAGDETAILS_FORMATTAG_CHARS]
Buffer contenente una stringa con terminazione Null che descrive il tag di formato della selezione del formato quando la struttura ACMFORMATTAGDETAILS restituita dalla funzione acmFormatTagDetails . Se l'utente annulla la finestra di dialogo, questo membro conterrà una stringa con terminazione Null.
szFormat[ACMFORMATDETAILS_FORMAT_CHARS]
Buffer contenente una stringa con terminazione Null che descrive gli attributi di formato della selezione del formato quando la struttura ACMFORMATDETAILS restituita dalla funzione acmFormatDetails . Se l'utente annulla la finestra di dialogo, questo membro conterrà una stringa con terminazione Null.
pszName
Puntatore a una stringa per un nome di formato definito dall'utente. Se si tratta di una stringa senza terminazione Null, ACM tenterà di corrispondere al nome con un nome di formato definito dall'utente salvato in precedenza. Se viene trovata una corrispondenza, la finestra di dialogo viene inizializzata in tale formato. Se non viene trovata una corrispondenza o questo membro è una stringa con terminazione Null, questo membro viene ignorato nell'input. Quando viene restituita la funzione acmFormatChoose , questo buffer contiene una stringa con terminazione Null che descrive il formato definito dall'utente. Se il nome del formato è senza titolo, ovvero l'utente non ha assegnato un nome per il formato, questo membro sarà una stringa con terminazione Null al momento della restituzione. Se l'utente annulla la finestra di dialogo, non verranno apportate modifiche al buffer.
cchName
Dimensioni, in caratteri, del buffer identificato dal membro pszName . Questo buffer deve contenere almeno 128 caratteri. Se il membro pszName è NULL, questo membro viene ignorato.
fdwEnum
Flag facoltativi per limitare il tipo di formati elencati nella finestra di dialogo. Questi flag sono identici ai flag fdwEnum per la funzione acmFormatEnum . Se pwfxEnum è NULL, questo membro deve essere zero. Vengono definiti i valori seguenti:
Nome | Descrizione |
---|---|
|
La struttura WAVEFORMATEX a cui punta il membro pwfxEnum è valida. L'enumeratore enumera solo i formati di destinazione che possono essere convertiti dal formato pwfxEnum specificato. |
|
L'enumeratore deve enumerare solo i formati supportati nell'hardware da uno o più dispositivi waveform-audio installati. Questo flag consente a un'applicazione di scegliere solo formati nativi in un dispositivo audio waveform installato. |
|
L'enumeratore deve enumerare solo i formati supportati per l'input (registrazione). |
|
Il membro nChannels della struttura WAVEFORMATEX a cui punta il membro pwfxEnum è valido. L'enumeratore enumera solo un formato conforme a questo attributo. |
|
Il membro nSamplesPerSec della struttura WAVEFORMATEX a cui punta il membro pwfxEnum è valido. L'enumeratore enumera solo un formato conforme a questo attributo. |
|
L'enumeratore deve enumerare solo i formati supportati per l'output (riproduzione). |
|
La struttura WAVEFORMATEX a cui punta il membro pwfxEnum è valida. L'enumeratore enumera tutti i formati di destinazione suggeriti per il formato pwfxEnum specificato. |
|
Il membro wBitsPerSample della struttura WAVEFORMATEX a cui punta il membro pwfxEnum è valido. L'enumeratore enumera solo un formato conforme a questo attributo. |
|
Il membro wFormatTag della struttura WAVEFORMATEX a cui punta il membro pwfxEnum è valido. L'enumeratore enumera solo un formato conforme a questo attributo. |
pwfxEnum
Puntatore a una struttura WAVEFORMATEX che verrà utilizzata per limitare i formati elencati nella finestra di dialogo. Il membro fdwEnum definisce i membri della struttura a cui punta pwfxEnum che devono essere utilizzati per le restrizioni di enumerazione. Se non si desiderano restrizioni speciali, questo membro può essere NULL. Per altri requisiti associati al membro pwfxEnum , vedere la descrizione per la funzione acmFormatEnum .
hInstance
Handle in un blocco di dati contenente un modello di finestra di dialogo specificato dal membro pszTemplateName . Questo membro viene utilizzato solo se il membro fdwStyle specifica il flag ACMFORMATCHOOSE_STYLEF_ENABLETEMPLATE o ACMFORMATCHOOSE_STYLEF_ENABLETEMPLATEHANDLE; in caso contrario, questo membro deve essere NULL all'input.
pszTemplateName
Puntatore a una stringa con terminazione Null che specifica il nome del file di risorse per il modello di finestra di dialogo da sostituire con il modello di finestra di dialogo in ACM. Un'applicazione può usare la macro MAKEINTRESOURCE per le risorse della finestra di dialogo numerate. Questo membro viene utilizzato solo se il membro fdwStyle specifica il flag di ACMFORMATCHOOSE_STYLEF_ENABLETEMPLATE; in caso contrario, questo membro deve essere NULL all'input.
lCustData
Dati definiti dall'applicazione passati da ACM alla funzione hook identificata dal membro pfnHook . Il sistema passa i dati nel parametro lParam del messaggio di WM_INITDIALOG .
pfnHook
Puntatore a una funzione di callback che elabora i messaggi destinati alla finestra di dialogo. Un'applicazione deve specificare il flag ACMFORMATCHOOSE_STYLEF_ENABLEHOOK nel membro fdwStyle per abilitare l'hook; in caso contrario, questo membro deve essere NULL. La funzione hook deve restituire FALSE per passare un messaggio alla routine della finestra di dialogo standard o TRUE per ignorare il messaggio. Il tipo di funzione di callback è acmFormatChooseHookProc.
Requisiti
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Intestazione | msacm.h |