[ 前のページ ] [ 次のページ ] [ 目次 ] [ 索引 ] [ DOC Home ]

D COM Version 1.0 for OpenVMSからCOM Version 1.1 for OpenVMSへのアップグレード

D.1 COM for OpenVMSの以前のバージョンからのアップグレード

ここでは,COM for OpenVMSの以前のバージョンからアップグレードするときに必要な手順について説明します。

D.1.1 既存のCOM for OpenVMSアプリケーションの再構築

COM for OpenVMSアプリケーションに次のいずれかのAPI に対する参照が含まれる場合は,その参照を含むモジュールを再コンパイルし, アプリケーションを再リンクしなければなりません。


LoadLibraryA
LoadLibraryW
LoadLibraryExW
LoadLibraryExA
GetModuleFileNameA
GetModuleFileNameW
GetModuleHandleW
GetProcAddress
FreeLibrary

COM Version 1.0 for OpenVMSに付属している一部のサンプルCOM アプリケーションでは,REGISTYモジュールとCMPNT モジュールにこれらのAPIに対する参照が含まれています。サンプルを構築した場合や, これらのサンプルをもとに独自のCOMアプリケーションを構築した場合は, そのアプリケーションを再コンパイルし,再リンクしなければなりません。

D.1.2 Windows NTシステムの構成

COM Version 1.0 for OpenVMS (非認証COM) の場合,COM for OpenVMSのマニュアルには, 非認証COM for OpenVMSがWindows NTと相互運用できるように,Windows NT レジストリの特定の値を変更するように説明されていました。COM Version 1.1 for OpenVMSでは,認証がサポートされるようになりました。この結果,COM Version 1.0 for OpenVMS で変更が必要だったWindows NT Registry の値をデフォルトの認証設定に戻す必要があります。Windows NT Registry の値を設定するには,次の操作を行います。

  1. Windows NT Registryエディタを起動します。

  2. 次のレジストリ・キーを選択します。
         HKEY_LOCAL_MACHINE\Software\Microsoft\Ole
    

  3. 次の値名と値データを削除します。

    値名 COM Version 1.0 for OpenVMSでの推奨設定 デフォルト( 認証)値データ(COM Version 1.1 for OpenVMSの設定) レジストリの種類
    ActivationSecurity N 削除 REG_SZ
    PersonalClasses N 削除 REG_SZ

  4. Default Authentication LevelDefault Impersonation Levelを確認し,必要に応じて変更します。次の操作を行います。


    注意
    これらの設定を表示し,更新するには,Windows NT のAdministrator特権が必要です。

    1. 「スタート」メニューの「ファイル名を指定して実行... 」を選択します。

    2. 「ファイル名を指定して実行」ダイアログ・ボックスで, dcomcnfg と入力します。

      「分散COMの構成のプロパティ」シートが表示されます。

    3. 「既定のプロパティ」タブをクリックします。

      • 「既定の認証レベル」リスト・ボックスに 「接続」が表示されるはずです。表示されない場合は, リスト・ボックスの矢印をクリックし,一覧から「接続」 を選択します。

      • 「既定の偽装レベル」リスト・ボックスに 「識別」が表示されるはずです。表示されない場合は, リスト・ボックスの矢印をクリックし,「識別」を一覧から選択します。

  5. これらの変更を有効にするには,Windows NTシステムを再起動しなければなりません。

D.1.3 OpenVMSシステムの構成

OpenVMSシステムで,OpenVMS Registryの特定の値を設定またはリセットしなければなりません。Windows NT Registry エディタを使用してOpenVMS Registryを変更することができ,REG$CPユーティリティを使用することもできます。OpenVMS Registryの値を設定するには,次の操作を行います。

  1. OpenVMS Registryの次のキーを選択します。
         HKEY_LOCAL_MACHINE\Software\Microsoft\Ole
    

  2. ActivationSecurityPersonalClassesLegacyAuthenticationLevelLegacyImpersonationLevel キーを削除します。キーを削除するには, 次のコマンドを使用します。
         $ MCR REG$CP
         REG> LIST VALUE HKEY_LOCAL_MACHINE\Software\Microsoft\Ole
         REG> DELETE VALUE HKEY_LOCAL_MACHINE\Software\Microsoft\Ole
         ActivationSecurity
         REG> DELETE VALUE HKEY_LOCAL_MACHINE\Software\Microsoft\Ole PersonalClasses
         REG> DELETE VALUE HKEY_LOCAL_MACHINE\Software\Microsoft\Ole
         LegacyAuthenticationLevel
         REG> DELETE VALUE HKEY_LOCAL_MACHINE\Software\Microsoft\Ole
         LegacyImpersonationLevel
         REG> LIST VALUE HKEY_LOCAL_MACHINE\Software\Microsoft\Ole
         REG> EXIT
    

D.2 Windows NTで以前に構成されたアプリケーション

Windows NTでCOM Version 1.0 for OpenVMS (非認証COM for OpenVMS)と組み合わせて実行するようにアプリケーションを構成した場合は,COM Version 1.1 for OpenVMS ( 認証COM for OpenVMS) を利用できるように,Windows NTの設定を再構成しなければなりません。

COM Version 1.0 for OpenVMSでは,COM for OpenVMSのマニュアルに,コンポーネントを登録した後, 認証されていないユーザがイメージをアクティブにすることができるように, そのコンポーネントでセキュリティ・プロパティを確認するように説明されていました。 次の操作を行います。

  1. Windows NTの「スタート」 メニューの「ファイル名を指定して実行...」を選択します。

  2. 「ファイル名を指定して実行」ダイアログ・ボックスで, dcomcnfg と入力します。

    「分散COMの構成のプロパティ」シートが表示されます。

  3. 「アプリケーション」リストからオブジェクトの名前を選択し, 「プロパティ...」ボタンをクリックします。

    選択したオブジェクトのプロパティ・シートが表示されます。

  4. プロパティ・シートで「セキュリティ」タブをクリックします。

    COM Version 1.0 for OpenVMSでは,セキュリティ・ プロパティを設定した後,アプリケーションを実行するためにアカウントのID を設定しなければなりませんでした。

    COM Version 1.1 for OpenVMSでは,アカウントのID はオプション1または2に設定できます。

    「識別」タブをクリックして,ユーザ・アカウントの選択を表示します。 「対話ユーザー」オプションを選択します。

D.2.1 COM Version 1.1 for OpenVMSではOpenVMS Registryに情報を再登録しなければならない

COM Version 1.1 for OpenVMSでは, セキュリティ設定を含むように,OpenVMS Registryに情報を再登録しなければなりません。DCOM$SETUPコマンド・ プロシージャを使用して「OpenVMS COM Tools」メニューを表示し, オプション3を選択します。

D.2.2 OpenVMS Registryのアプリケーション・ セキュリティ設定の変更

OpenVMS V7.2に添付されていたCOM Version 1.0 for OpenVMSでは,NTLMセキュリティがサポートされませんでした。 その結果,COM Version 1.0 for OpenVMS COMアプリケーションを登録するために使用するOpenVMSアカウントが, アプリケーション登録の一部として作成されたOpenVMS Registryキーの所有者になっていました。 たとえば,COM Version 1.0 for OpenVMS を使用した場合,SYSTEM アカウントにログインして,SAMPLE1アプリケーションを登録すると,SAMPLE1 のOpenVMS RegistryキーはSYSTEM によって所有されます。

OpenVMS V7.2-1に添付されているCOM Version 1.1 for OpenVMSでは,NTLMセキュリティがサポートされるようになりました。OpenVMS Registry キーへのアクセスを制御するために, ネットワーク・アカウントが使用されるようになりました。 このような変更が行われた結果,以前のセキュリティ設定では, 特権が与えられていないユーザがアプリケーションのレジストリ・キーにアクセスできなくなることがあります。 つまり,既存のアプリケーションを使用している非特権ユーザがアプリケーションの登録や登録の解除を行うことができなくなる可能性があります。

この登録のロックアウトを防止するには,アプリケーションのアクセス権を変更しなければなりません。 アクセス権の変更は,Windows NTシステムまたはOpenVMSシステムから行うことができます。 次のいずれかの操作を行います。

D.2.2.1 COMアプリケーションのレジストリ・ キー

COMアプリケーションには複数のレジストリ・キーを関連付けることができます。 アプリケーションに関連付けられたすべてのキーを変更しなければなりません。 アプリケーションは通常,次のキーを登録します。


HKEY_CLASSES_ROOT\CLSID\{guid} とサブキー
HKEY_CLASSES_ROOT\APPID\{guid}
HKEY_CLASSES_ROOT\APPID\filename
HKEY_CLASSES_ROOT\TYPELIB\{typelib guid}
HKEY_CLASSES_ROOT\INTERFACES\{interface guid(s)} とサブキー
HKEY_CLASSES_ROOT\nameとサブキー
HKEY_CLASSES_ROOT\version independent nameとサブキー


注意
HKEY_CLASSES_ ROOTHKEY_LOCAL_MACHINE\SOFTWARE\Classes のエイリアスです。Regedt32 を使用してWindows NTからOpenVMS Registryに接続していて, HKEY_CLASSES_ROOT キーを変更する場合は, HKEY_LOCAL_MACHINE\SOFTWARE\Classes キーを変更してください。


[ 前のページ ] [ 次のページ ] [ 目次 ] [ 索引 ] [ DOC Home ]