HP OpenVMS Systems Documentation  | 
    
[ 前のページ ] [ 次のページ ] [ 目次 ] [ 索引 ]
アプリケーションでDECTERM PORTルーチンを使用すると,ローカルまたはリモートのいずれのノードでも, 漢字端末エミュレータのウィンドウを作成できます。CREATE/TERMINAL コマンドを生成して,漢字端末エミュレータのウィンドウを作成することもできますが,DECTERM PORT ルーチンを使用したほうが性能は高くなります( ユーザはセッション・マネージャの「アプリケーション」メニューから, またはDCLでCREATE/TERMINALコマンドを使用することによって, 漢字端末エミュレータを作成できます)。
例 A-1は,DECTERM PORTルーチンを使用して, リモート・システム上に漢字端末エミュレータを作成する方法を示しています。
#include descrip     /* descriptor definitions */
#include ssdef       /* system status codes */
#include prcdef      /* stsflg bits for creating process */
main( )
{
  int status, stsflg;
  short device_length;
【1】
  char device_name[50];
  $DESCRIPTOR( command, "SYS$SYSTEM:LOGINOUT.EXE" );
  $DESCRIPTOR( input_file, "" );
  $DESCRIPTOR( output_file, "" );
/* send the message to the controller */
【2】
  status = DECwTermPort( 0, 0, 0, device_name, &device_length );
  if ( status != SS$_NORMAL )
     printf( "DECterm creation failed, status is %x\n", status );
  else
  {
     /* create a process that is already logged in */
     /* input from TWn: */
【3】input_file.dsc$w_length = device_length;
     input_file.dsc$a_pointer = device_name;
     /* output to TWn: */
     output_file.dsc$w_length = device_length;
     output_file.dsc$a_pointer = device_name;
     /* make it detached, interactive, logged in */
     stsflg = PRC$M_DETACH | PRC$M_INTER | PRC$M_NOPASSWORD;
     /* create the process */
【4】status = sys$creprc( 0, &command, &input_file,
                          &output_file, 0, 0, 0, 0, 4, 0, 0, stsflg );
     if ( status != SS$_NORMAL )
        printf( "Could not run LOGINOUT.EXE, status is %x\n", status );
   }
}
DECTERM PORTルーチンは4番めの引数device_nameに,仮想端末装置の名前を返します。DECTERM PORT ルーチンは最後の引数 device_lengthに,仮想端末装置の名前の長さを書き込みます。
例 A-2はこのサンプル・プログラムをコンパイル, リンク,および実行するためのコマンド・プロシージャです。
【1】 $ cc create_decterm 【2】 $ link create_decterm, sys$input/opt sys$share:decw$xlibshr/share sys$share:decw$dwtlibshr/share sys$share:vaxcrtl/share sys$share:decw$terminalshr/share 【3】 $ set display/create/node=mynode 【4】 $ run create_decterm