проблема со шрифтом в Firefox

Excel не выходит, потому что Ваше приложение все еще содержит ссылки на COM-объекты.

я предполагаю, что Вы вызываете по крайней мере одного члена COM-объекта, не присваивая его переменной.

Для меня это было excelApp. Рабочие листы объект, который я непосредственно использовал, не присваивая его переменной:

Worksheet sheet = excelApp.Worksheets.Open(...);
...
Marshal.ReleaseComObject(sheet);

я не знал, что внутренне C# создал обертку для эти Рабочие листы COM-объект, который не стал выпущенным моим кодом (потому что я не знал о нем), и была причина, почему Excel не был разгружен.

я нашел решение своей проблемы на эта страница , которая также имеет хорошее правило для использования COM-объектов в C#:

Никогда использование две точки с COM-объектами.

Так с этим знанием правильный способ сделать вышеупомянутое:

Worksheets sheets = excelApp.Worksheets; // <-- The important part
Worksheet sheet = sheets.Open(...);
...
Marshal.ReleaseComObject(sheets);
Marshal.ReleaseComObject(sheet);

ОБНОВЛЕНИЕ ПОСЛЕ СМЕРТИ:

я хочу, чтобы каждый читатель прочитал этот ответ Hans Passant очень тщательно, поскольку он объясняет прерывание I, и много других разработчиков споткнулось в. Когда я записал этот ответ несколько лет назад, я не знал об эффекте, который отладчик имеет к сборщику "мусора" и сделал неправильные выводы. Я сохраняю свой ответ неизменным ради истории, но прочитайте эту ссылку, и не делают , идут путем "двух точек": сборка "мусора" Понимания в.NET и Очищают Excel Interop Objects with IDisposable

1
задан 16.05.2020, 21:23

1 ответ

Кажется, что Вы могли бы пропускать пакет шрифта. Например, в минимальном человечностью, у меня нет дополнительных пакетов, таким образом, терминальный шрифт перекрывает друг друга. Я использовал sudo apt-get install ttf-ancient-fonts, и это добилось цели для терминала. Это может также работать на Firefox, в противном случае попробовать другие семейства шрифтов. Эти пакеты шрифта могут быть найдены здесь

Hope, которой это помогает.

0
ответ дан 16.05.2020, 21:23
  • 1
    я использовал команду, но проблема все еще там, можете Вы давать мне некоторую другую идею, – Aditya Vyas-Lakhan 16.05.2020, 21:24

Теги

Похожие вопросы