Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
In Configuration Manager la CreateSMSStatusMessage funzione alloca un oggetto messaggio di stato, lo inizializza e vi recupera un handle.
Sintassi
[C/C++]
typedef DWORD (WINAPI *PROC_CREATESMSSTATUSMESSAGE)
(
PHANDLE phStatusMessageObject,
LPCSTR pszModuleName,
DWORD dwID,
DWORD dwWin32Error,
LPCSTR pszInsStr1,
LPCSTR pszInsStr2,
LPCSTR pszInsStr3,
LPCSTR pszInsStr4,
LPCSTR pszInsStr5,
LPCSTR pszInsStr6,
LPCSTR pszInsStr7,
LPCSTR pszInsStr8,
LPCSTR pszInsStr9,
LPCSTR pszInsStr10
);
Parametri
phStatusMessageObject Tipo di dati: PHANDLE
Qualificatori: [in, out]
Puntatore all'handle dell'oggetto. All'input, specificare un handle per il messaggio di stato da creare. Al termine della restituzione da questa funzione, il parametro indica l'oggetto creato. Se la funzione non riesce, il valore di input rimane invariato.
pszModuleName Tipo di dati: LPCSTR
Qualificatori: [in]
Puntatore al nome del modulo del messaggio di stato, una stringa ASCII con terminazione Null che rappresenta la DLL che contiene la stringa di visualizzazione per i messaggi dell'applicazione. Il nome del modulo viene visualizzato in Visualizzatore messaggi di stato e in Windows NT Visualizzatore eventi come origine del messaggio di stato.
dwID Tipo di dati: DWORD
Qualificatori: [in]
ID messaggio di stato.
dwWin32Error Tipo di dati: DWORD
Qualificatori: [in]
Facoltativo. Codice di errore Win32 restituito dalla funzione Win32 GetLastError.
pszInsStr1 Tipo di dati: LPCSTR
Qualificatori: [in]
Puntatore alla stringa di inserimento del messaggio di stato 1 o a null per nessuna stringa.
pszInsStr2 Tipo di dati: LPCSTR
Qualificatori: [in]
Puntatore alla stringa di inserimento del messaggio di stato 2 o a null per nessuna stringa.
pszInsStr3 Tipo di dati: LPCSTR
Qualificazioni: [in]
Puntatore alla stringa di inserimento del messaggio di stato 3 o a null per nessuna stringa.
pszInsStr4 Tipo di dati: LPCSTR
Qualificatori: [in]
Puntatore alla stringa di inserimento del messaggio di stato 4 o a null per nessuna stringa.
pszInsStr5 Tipo di dati: LPCSTR
Qualificatori: [in]
Puntatore alla stringa di inserimento del messaggio di stato 5 o a null per nessuna stringa.
pszInsStr6 Tipo di dati: LPCSTR
Qualificatori: [in]
Puntatore alla stringa di inserimento del messaggio di stato 6 o a null per nessuna stringa.
pszInsStr7 Tipo di dati: LPCSTR
Qualificatori: [in]
Puntatore alla stringa di inserimento del messaggio di stato 7 o a null per nessuna stringa.
pszInsStr8 Tipo di dati: LPCSTR
Qualificatori: [in]
Puntatore alla stringa di inserimento del messaggio di stato 8 o a null per nessuna stringa.
pszInsStr9 Tipo di dati: LPCSTR
Qualificatori: [in]
Puntatore alla stringa di inserimento del messaggio di stato 9 o a null per nessuna stringa.
pszInsStr10 Tipo di dati: LPCSTR
Qualificatori: [in]
Puntatore alla stringa di inserimento del messaggio di stato 10 o a null per nessuna stringa.
Valori restituiti
Questa funzione restituisce uno dei valori nella tabella seguente.
| Valore | Descrizione |
|---|---|
| SMSSTATMSG_SUCCESS | L'oggetto è stato creato correttamente. |
| SMSSTATMSG_OUT_OF_MEMORY | La funzione non è riuscita ad allocare memoria sufficiente per creare l'oggetto. |
| SMSSTATMSG_ERROR_INVALID_MODULE_NAME | Il chiamante fornito null o una stringa che ha superato SMSSTATMSG_MAX_MODULE_NAME_LENGTH caratteri di lunghezza per il pszModuleName parametro. |
| STATMSG_ERROR_INVALID_INSSTR | Il chiamante ha fornito una stringa che ha superato SMSSTATMSG_MAX_INSSTR_LENGTH caratteri di lunghezza per uno dei parametri della stringa di inserimento. |
| SMSSTATMSG_ERROR_UNKNOWN | La funzione ha rilevato un errore sconosciuto durante il tentativo di creare l'oggetto. |
Osservazioni
Smscstat.h include le #define seguenti per la chiamata CreateSMSStatusMessage tramite la funzione GetProcAddressWin32 .
#define PROCNAME_CREATESMSSTATUSMESSAGE "CreateSMSStatusMessage"
Per chiamare questa funzione sono necessari privilegi di amministratore.
È consigliabile chiamare CreateSMSStatusMessage solo nel momento esatto in cui è necessario segnalare un messaggio di stato. Il motivo di questa regola è che il messaggio di stato contiene un timestamp impostato in fase di creazione.
Quando si chiama questa funzione, usare phStatusMessageObject per fornire un oggetto che verrà usato quando si chiamano le altre funzioni di segnalazione dei messaggi di stato. Si noti che l'unico modo per deallocare l'oggetto associato all'handle consiste nel chiamare la funzione ReportSMSStatusMessage, che invia il messaggio di stato al sistema di stato Configuration Manager. Non passare questo handle alla funzione CloseHandle Win32 o a qualsiasi altra funzione simile.
Il nome del modulo specificato per il pszModuleName parametro non è il nome della DLL, ma il nome di un modulo Configuration Manager. Il server del sito Configuration Manager contiene un mapping dei nomi dei moduli ai nomi DLL. Ad esempio, i componenti client segnalano i messaggi di stato usando il nome del modulo client Configuration Manager. Il server del sito è consapevole del fatto che il client Configuration Manager corrisponde al file Climsgs.dll.
Il nome del modulo non può essere localizzato in altre lingue, perché l'amministratore Configuration Manager crea query e filtra regole basate sul nome del componente. Ciò consente all'amministratore di recuperare rapidamente i messaggi di stato specifici e di configurare Configuration Manager per gestire questi messaggi di stato in modi speciali.
Nelle chiamate a questa funzione usare il dwID parametro per fornire un ID messaggio di stato. Come parte della procedura per preparare l'applicazione a segnalare Configuration Manager messaggi di stato, creare un file con estensione mc che definisce tutti i messaggi. La compilazione di questo file produce un file con estensione h contenente un #define per ogni messaggio di stato definito. È necessario specificare il simbolo #define come ID messaggio. Quando visualizzatore messaggi di stato o Windows NT Visualizzatore eventi visualizza il messaggio, usa l'ID messaggio specificato per cercare il testo del messaggio nella DLL correlata.
dwWin32Error Nel parametro è possibile specificare un codice di errore Win32 facoltativo restituito da una chiamata a Win32 GetLastError. Quando Visualizzatore messaggi di stato o Windows NT Visualizzatore eventi visualizza il messaggio di stato, sostituisce la stringa di inserimento 12 (%12) nel messaggio di stato con il testo seguente: Errore X: Y segnalato dal sistema operativo. Dove X è il codice di errore fornito qui e Y è il testo di errore Win32 associato a tale codice di errore. Ad esempio, il codice di errore 5 è "Accesso negato".
In genere si specifica un codice di errore Win32 quando si segnala un messaggio di stato immediatamente dopo un errore di funzione Win32. Specificare 0 per indicare al sistema di stato che al messaggio di stato non è associato alcun codice di errore Win32, nel qual caso la stringa di inserimento 12 è vuota.
La chiamata a CreateSMSStatusMessage può fornire da zero a 10 stringhe di inserimento ASCII con terminazione Null. Queste stringhe corrispondono alle sequenze di escape %1, %2, %3 e così via nella definizione del messaggio di stato. Quando visualizzatore messaggi di stato o Windows NT Visualizzatore eventi visualizza il messaggio di stato, sostituisce le sequenze di escape con i valori forniti a questa funzione.
Requisiti
Smscstat.dll.
Requisiti di runtime
Per altre informazioni, vedere requisiti di runtime del client Configuration Manager.
Requisiti di sviluppo
Per altre informazioni, vedere Configuration Manager Requisiti di sviluppo client.