Оглядываясь вокруг, я обнаружил, что причина, по которой Visual Studio нужен новый источник, заключается в том, что он хранит их внутренний список, и они похожи на представление текстового файла, хранящегося в редакторе.
Я пришелк выводу, что закрытые файлы не нуждаются в IVsTextLines или не должны быть включены во внутренний список исходных файлов VS, потому что я не выполняю никаких операций непосредственно над ними, все, что меня волнует в этом случае, - это создать таблицу символови соответствующий им TextSpan.Поэтому вместо этого я создал новый API для моего парсера, который просто взял строку и построил мой AST вместо того, чтобы извлекать текст из ParseRequest, и беспокоился только о конкретных типах символов, которые мне нужно было записать.Затем я запихнул это в BackgroundWorker.
Так что, думаю, я решил проблему неправильно.Хотя это кажется странным, я не могу просто запустить файл для открытия в списке источников.
Интересно, что я задал этот вопрос Microsoft на их форумах поддержки, и они посоветовали мне приобрести некоторые услуги и поддержку.планирую, чтобы они ответили на мой вопрос.