次の方法で共有


DdeCreateDataHandle 関数 (ddeml.h)

Dynamic Data Exchange (DDE) オブジェクトを作成し、指定したバッファーのデータをオブジェクトに入力します。 DDE アプリケーションは、パートナー アプリケーションにデータを渡すトランザクション中にこの関数を使用します。

構文

HDDEDATA DdeCreateDataHandle(
  [in]           DWORD  idInst,
  [in, optional] LPBYTE pSrc,
  [in]           DWORD  cb,
  [in]           DWORD  cbOff,
  [in, optional] HSZ    hszItem,
  [in]           UINT   wFmt,
  [in]           UINT   afCmd
);

パラメーター

[in] idInst

型: DWORD

DdeInitialize 関数の以前の呼び出しによって取得されたアプリケーション インスタンス識別子。

[in, optional] pSrc

種類: LPBYTE

DDE オブジェクトにコピーするデータ。 このパラメーターが NULL の場合、データはオブジェクトにコピーされません。

[in] cb

型: DWORD

pSrc が指すバッファーからコピーするメモリの量 (バイト単位)。 (データが文字列の場合は、終端の NULL を含めます)。 このパラメーターが 0 の場合、 pSrc パラメーターは無視されます。

[in] cbOff

型: DWORD

pSrc パラメーターが指すバッファーの先頭からのオフセット (バイト単位)。 このオフセットから始まるデータは、バッファーから DDE オブジェクトにコピーされます。

[in, optional] hszItem

種類: HSZ

DDE オブジェクトに対応するデータ項目を指定する文字列へのハンドル。 このハンドルは、 DdeCreateStringHandle 関数の以前の呼び出しによって作成されている必要があります。 XTYP_EXECUTE トランザクションでデータ ハンドルを使用する場合、このパラメーターは 0L である必要があります。

[in] wFmt

型: UINT

データの標準クリップボード形式。

[in] afCmd

型: UINT

作成フラグ。 このパラメーターは HDATA_APPOWNEDできます。これは、 DdeCreateDataHandle 関数を呼び出すサーバー アプリケーションが、この関数が作成するデータ ハンドルを所有することを指定します。 このフラグを使用すると、アプリケーションは、各アプリケーションに渡す別のハンドルを作成するのではなく、他の DDEML アプリケーションとデータ ハンドルを共有できます。 このフラグを指定した場合、アプリケーションは最終的に DdeFreeDataHandle 関数を使用して、ハンドルに関連付けられている共有メモリ オブジェクトを解放する必要があります。 このフラグが指定されていない場合、データ ハンドルがアプリケーションの DDE コールバック関数によって返された後、または別の DDEML 関数のパラメーターとして使用された後、ハンドルを作成したアプリケーションでハンドルが無効になります。

戻り値

種類: HDDEDATA

関数が成功した場合、戻り値はデータ ハンドルです。

関数が失敗した場合、戻り値は 0L です。

DdeGetLastError 関数を使用してエラー コードを取得できます。エラー コードは、次のいずれかの値になります。

解説

DDE オブジェクト内の入力されていない場所は未定義です。

データ ハンドルが別の DDEML 関数のパラメーターとして使用された後、または DDE コールバック関数によって返された後、ハンドルは、ハンドルによって識別される DDE オブジェクトへの読み取りアクセスにのみ使用できます。

要件

   
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー ddeml.h (Windows.h を含む)
Library User32.lib
[DLL] User32.dll

関連項目

概念

DdeAccessData

DdeCreateStringHandle

DdeFreeDataHandle

DdeGetData

DdeInitialize

動的データ交換管理ライブラリ

参照