DdeGetLastError 関数 (ddeml.h)
動的データ交換管理ライブラリ (DDEML) 関数の失敗によって設定された最新のエラー コードを取得し、エラー コードをDMLERR_NO_ERRORにリセットします。
構文
UINT DdeGetLastError(
[in] DWORD idInst
);
パラメーター
[in] idInst
型: DWORD
DdeInitialize 関数の前回の呼び出しによって取得されたアプリケーション インスタンス識別子。
戻り値
型: UINT
関数が成功した場合、戻り値は最後のエラー コードです。次のいずれかの値を指定できます。
リターン コード/値 | Description |
---|---|
|
同期アドバイス トランザクションの要求がタイムアウトしました。 |
|
トランザクションに対する応答により、 DDE_FBUSY フラグが設定されました。 |
|
同期データ トランザクションの要求がタイムアウトしました。 |
|
DDEML 関数が最初に DdeInitialize 関数を呼び出さずに呼び出されたか、無効なインスタンス識別子が DDEML 関数に渡されました。 |
|
APPCLASS_MONITORとして初期化されたアプリケーションが DDE トランザクションを実行しようとしたか、APPCMD_CLIENTONLYとして初期化されたアプリケーションがサーバー トランザクションを実行しようとしました。 |
|
同期実行トランザクションの要求がタイムアウトしました。 |
|
パラメーターを DDEML で検証できませんでした。 考えられる原因の一部を次に示します。 アプリケーションでは、トランザクションで必要とされたものとは異なる項目名ハンドルで初期化されたデータ ハンドルを使用しました。 アプリケーションでは、トランザクションで必要とされたものとは異なるクリップボード データ形式で初期化されたデータ ハンドルが使用されました。 アプリケーションは、サーバー側の関数を持つクライアント側の会話ハンドルを使用するか、またはその逆を使用しました。 アプリケーションでは、解放されたデータ ハンドルまたは文字列ハンドルが使用されています。 アプリケーションの複数のインスタンスが同じオブジェクトを使用しました。 |
|
DDEML アプリケーションは、長時間の競合状態 (サーバー アプリケーションがクライアントを実行し、大量のメモリが消費される) を作成しました。 |
|
メモリ割り当てに失敗しました。 |
|
クライアントが会話を確立しようとして失敗しました。 |
|
トランザクションが失敗しました。 |
|
同期 poke トランザクションの要求がタイムアウトしました。 |
|
PostMessage 関数の内部呼び出しに失敗しました。 |
|
同期トランザクションが既に進行中のアプリケーション インスタンスが別の同期トランザクションを開始しようとしたか、DDEML コールバック関数内から DdeEnableCallback 関数が呼び出されました。 |
|
サーバー側のトランザクションが、クライアントによって終了された会話、またはトランザクションを完了する前にサーバーが終了した場合に試行されました。 |
|
DDEML で内部エラーが発生しました。 |
|
アドバイス トランザクションを終了する要求がタイムアウトしました。 |
|
無効なトランザクション識別子が DDEML 関数に渡されました。 アプリケーションが XTYP_XACT_COMPLETE コールバックから戻ると、そのコールバック関数のトランザクション識別子は無効になります。 |
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | ddeml.h (Windows.h を含む) |
Library | User32.lib |
[DLL] | User32.dll |
関連項目
概念
参照