bea ホーム | 製品 | dev2dev | support | askBEA
BEA Logo Tuxedo
 ドキュメントのダウンロード   サイトマップ   用語集 
検索
0

Tuxedo C リファレンス

 Previous Next Contents View as PDF  

AEOaddtypesw(3c)

名前

AEOaddtypesw()−実行時にユーザ定義のバッファ・タイプをインストールまたはリプレースします。

形式

#include <atmi.h>  
#include <tmtypes.h>

int FAR PASCAL AEOaddtypesw(TMTYPESW *newtype)

機能説明

AEOaddtypesw() は、OS/2 クライアントが実行時に、新しいユーザ定義のバッファ・タイプをインストールするか、既存のユーザ定義のバッファ・タイプをリプレースするための、「OS/2 の ATMI 拡張機能」です。この関数の引数は、インストールするバッファ・タイプに関する情報を含む、TMTYPESW 構造体を指すポインタです。

type()subtype() がすでにインストールされているバッファ・タイプと一致する場合は、すべての情報が新しいバッファ・タイプにリプレースされます。情報が type() フィールドおよび subtype() フィールドと一致しない場合は、BEA Tuxedo ATMI システムによって登録された既存のバッファ・タイプに、新しいバッファ・タイプが追加されます。新しいバッファ・タイプの場合は、呼び出し処理に含まれる WSH および他の BEA Tuxedo ATMI システムのプロセスが新しいバッファ・タイプで作成されているようにします。

TMTYPESW 配列内の関数ポインタは、EXPORTS セクションにあるアプリケーションのモジュール定義ファイルに表示されていなければなりません。

アプリケーションでは、BEA Tuxedo ATMI システム定義のバッファ・タイプのルーチンも使用できます。また、アプリケーションおよび BEA Tuxedo ATMI システム・バッファ・ルーチンを、あるユーザ定義のバッファ・タイプ内で混在させることができます。

戻り値

AEOaddtypesw() は、正常終了時には、システム内のユーザ・バッファ・タイプの数を返します。異常終了時には -1 を返し、tperrno を設定してエラー条件を示します。

エラー

異常終了時には、AEOaddtypesw()tperrno を次のいずれかの値に設定します。

[TPEINVAL]

AEOaddtypesw() が呼び出され、type パラメータは NULL でした。

[TPESYSTEM]

BEA Tuxedo システムのエラーが発生しました。エラーの正確な内容がログ・ファイルに書き込まれます。

移植性

このインターフェイスは、Windows クライアントでのみサポートされます。タイプ・スイッチをインストールする場合は、BEA Tuxedo ATMI システム・タイプスイッチ DLL に追加することをお勧めします。詳細については、『BEA Tuxedo アプリケーションの設定』を参照してください。

注意事項

FAR PASCAL は、16 ビット OS/2 環境でのみ使用します。

使用例

  #include <os2.h>
#include <atmi.h>
#include <tmtypes.h>

int FAR PASCAL Nfinit(char FAR *, long);
int (FAR PASCAL * lpFinit)(char FAR *, long);
int FAR PASCAL Nfreinit(char FAR *, long);
int (FAR PASCAL * lpFreinit)(char FAR *, long);
int FAR PASCAL Nfuninit(char FAR *, long);
int (FAR PASCAL * lpFuninit)(char FAR *, long);

TMTYPESW newtype =
{
“MYFML”, ““, 1024, NULL, NULL,
NULL, _fpresend, _fpostsend, _fpostrecv, _fencdec,
_froute
};

newtype.initbuf = Nfinit;
newtype.reinitbuf = Nfreinit;
newtype.uninitbuf = Nfuninit;

if(AEOaddtypesw(newtype) == -1) {
userlog(“AEOaddtypesw failed %s”, tpstrerror(tperrno));
}
int
FAR PASCAL
Nfinit(char FAR *ptr, long len)
{
......
return(1);
}

int
FAR PASCAL
Nfreinit(char FAR *ptr, long len)
{
......
return(1);
}

int
FAR PASCAL
Nfuninit(char FAR *ptr, long mdlen)
{
......
return(1);
}

アプリケーション・モジュール定義ファイル:

  ; EXAMPLE.DEF file

NAME EXAMPLE

DESCRIPTION 'EXAMPLE for OS/2'

EXETYPE OS/2


EXPORTS
Nfinit
Nfreinit
Nfuninit
....

関連項目

buildwsh(1)buffer(3c)typesw(5)

 

Back to Top Previous Next
Contact e-docsContact BEAwebmasterprivacy