Если вы хотите ограничить количество экземпляров браузера в текущем сеансе пользователя, вы можете использовать мьютекс вместо файла. попробуйте получить мьютекс при запуске BHO (в вызове SetSite) с разумным временем ожидания и снова отпустите в последнем вызове SetSite.
Если результатом является WAIT_OBJECT_0 или WAIT_ABANDONED, другого экземпляра BHO, содержащего мьютекс, не существует, тогда как WAIT_ABANDONED возникает, когда другой поток завершает работу, удерживая мьютекс. Если результатом является WAIT_TIMEOUT, мьютекс уже занят другим экземпляром BHO, и вы не должны позволять пользователю использовать ваш веб-сайт в соответствии с вашими требованиями.
Но если я настроенный пользователь, я могу запустить XP Mode и получить доступ к веб-сайту оттуда ...