VSTO: как заставить Visual Studio запустить новый экземпляр Excel - PullRequest
3 голосов
/ 09 января 2011

Visual Studio необходимо запустить экземпляр EXCEL.EXE, чтобы включить редактирование листов Excel в режиме разработки из Visual Studio.К сожалению, вместо того, чтобы всегда запускать свой собственный, если он находит тот, который уже работает, он будет использовать тот.Если этот экземпляр работал или запускает макрос, например, макрос иногда падает.И если по какой-то причине мне нужно убить его (что я часто и делаю), он, очевидно, перестанет работать и в VS.

Решение - закрыть ВСЕ EXCEL.EXE экземпляры, запустить VS, открыть проект VSTOЗатем VS не найдет запущенных экземпляров Excel и запустит свой собственный, а затем я смогу снова открыть свои предыдущие экземпляры.Это не всегда возможно, поэтому я хотел бы найти способ заставить VS открывать новый экземпляр каждый раз.

1 Ответ

0 голосов
/ 10 января 2011

Я парень на VB, поэтому мой код может отсутствовать (хотя он просто скопирован с здесь ).

Сначала вы хотите объявить переменную для хранения нового экземпляра Excel:

Excel.Application oXL;

Затем вам нужно установить переменную для нового экземпляра и сделать ее видимой:

oXL = new Excel.Application();
oXL.Visible = true;

Затем ссылаться только на этот экземпляр в вашем коде, например,

oXL.Workbooks.Open ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...