.Net環境で’Selenium Type Library’への参照を追加できませんでした。と表示されてしまうときの回避方法

Microsoft Visual Studio 2017 で、Selenium BasicのCOM参照をすると、

 

’Selenium Type Library’への参照を追加できませんでした。

ActiveX タイプライブラリ

‘C:\Users\・・・\AppData\Local\SeleniumBasic\Selenium32.tlb’が
.NETアセンブリからエクスポートされましたが、参照として追加できせん。

.NETアセンブリへの参照を追加してください。

 

と表示されて参照追加ができないときの対処法です。

image

 

image

 

using System;
using System.Windows;

namespace WpfApp1
{ 
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private void Button_Click(object sender, RoutedEventArgs e)
        {
            //Seleniumインスタンス生成
            dynamic driver = Activator.CreateInstance(Type.GetTypeFromProgID("Selenium.ChromeDriver"));

            driver.start();
            driver.get("http://www.yahoo.co.jp/");
            driver.wait(10 * 1000);
            driver.quit();
            
            //インスタンス解放
            System.Runtime.InteropServices.Marshal.ReleaseComObject(driver); 
        }
    }
}

 

いわゆるレイトバインディングを使用することで意外と簡単に回避できました。

コメント

タイトルとURLをコピーしました