前提・実現したいこと
使用言語:C#
Type.GetTypeFromCLSIDメソッドにServer名(IP Address)を指定して外部からのdll接続を可能にしようとしたんですが、Server名を指定するとローカルと外部両方全部接続ができない状態になってしまいます。
呼び出そうとしているdllはComponetではなくregsvr32を通じて登録したdllで’A’と言うパソコンに登録されています。
※dllが登録されていないパソコンは’B’。
A側でType.GetTypeFromCLSID(Guid.Parse((string)input["confirm"]))使う場合は正しく動きますが
A、B側でType type_info = Type.GetTypeFromCLSID(Guid.Parse((string)input["confirm"]),"127.0.0.1",false);を実行するとエラーメッセージが出ます。
例)
Type type_info = Type.GetTypeFromCLSID(Guid.Parse((string)input["confirm"]),"127.0.0.1",false);
** Object co_Object = Activator.CreateInstance(type_info); ※この部分のtype_infoでエラーが発生します。**
エラーメッセージ :
[CLSID {XXXX-XXXX} を含むリモート コンポーネントの COM クラス ファクトリをコンピューター "127.0.0.1" から取得中に、次のエラーが発生しました: 80040154 127.0.0.1。]
この問題の解決方法を知っている方がいらっしゃったらぜひ解決方法を教えまてください。
発生している問題・エラーメッセージ
A側 : CLSID {XXXX-XXXX} を含むリモート コンポーネントの COM クラス ファクトリをコンピューター "127.0.0.1" から取得中に、次のエラーが発生しました: 80040154 127.0.0.1。
B側 :CLSID {XXXX-XXXX} を含むリモート コンポーネントの COM クラス ファクトリをコンピューター 192.168.0.139 から取得中に、次のエラーが発生しました: 80070005 192.168.0.139。
該当のソースコード
Type type_info = Type.GetTypeFromCLSID(Guid.Parse((string)input["confirm"]),"127.0.0.1",false);
Object co_Object = Activator.CreateInstance**(type_info)**;「エラーメッセージ出る部分」
試したこと
コードの変更
A側:
1.
Type type_info = Type.GetTypeFromCLSID(Guid.Parse((string)input["confirm"]),"localhost",false);
Object co_Object = Activator.CreateInstance(type_info);
2.
※ip_AddressはAのip_Addresです。
Type type_info = Type.GetTypeFromCLSID(Guid.Parse((string)input["confirm"]),"192.168.0.221",false);
Object co_Object = Activator.CreateInstance(type_info);
B側:
1.
※ip_AddressはAのip_Addresです。
Type type_info = Type.GetTypeFromCLSID(Guid.Parse((string)input["confirm"]),"192.168.0.221",false);
Object co_Object = Activator.CreateInstance(type_info);
ソリューションプラットフォームの変更
1.ANYCPU
2. X64
3. X84
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。

バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/08/13 01:27
2019/08/13 03:13