Я получаю System.Runtime.InteropServices.COMException
при запуске нижеуказанного метода от main()
Я хочу получить true
и позже получить доступ к листу, если Excel открыт в системе. Я уверен, что Excel открыт и sheet1
есть, но я получаю false
и ошибка выше.
using Excel = Microsoft.Office.Interop.Excel;
public static bool IsExcelOpened(string sheet1)
{
bool isOpened = true;
Excel.Application exApp;
exApp = (Excel.Application)System.Runtime.InteropServices.Marshal.GetActiveObject("Excel.Application");
try
{
Excel.Worksheet xlWorksheet;
xlWorksheet = (Excel.Worksheet)exApp.Workbooks.get_Item(sheet1);
}
catch (Exception)
{
isOpened = false;
}
return isOpened;
}
РЕДАКТИРОВАТЬ: когда я запускаю VS2019 от имени администратора, я получил больше информации об ошибке
Operation unavailable (Exception from HRESULT: 0x800401E3 (MK_E_UNAVAILABLE))