Проблема в следующем. Поставщик, для работы с оборудованием, предоставляет dll в которой был замечен баг, а именно то, что при выгрузке dll не закрывает поток, открытый при инициализации, и это приводит к фатальным ошибкам всего приложения. Задача проста завершить то, что должна делать dll, а именно закрыть все созданные ею потоки. Перебор всех потоков в процессе я организовал но вот как определить какой поток мой, а кокой dll я не знаю.
К примеру:
В Process Explorer`е на закладке "Threads" в поле "Start Address" указаны <имя модуля>!<функция>+<адрес>. <адрес> я получаю, а вот с <имя модуля> беда.