У меня есть приложение, которое читает файлы Excel и конвертирует их в текстовые файлы (разделенные табуляцией).Сначала он копирует файл из исходного каталога во временную папку на том же компьютере (либо на моем ноутбуке, либо на сервере, где он находится).Локально приложение работает так, как должно.Я перенес приложение на сервер Windows 2012R2 и протестировал его с моей учетной записью, и оно также работает так, как и должно. Когда я планирую его, у приложений нет доступа к файлу c: \ temp \ tmp.xls.Информация об исключении:
An exception occurred in class ExcelWorkbook, method SaveAsText_Tab. Exception info below:
Microsoft Excel cannot access the file C:\TEMP\LUXINTRANET_JET_CUSTOMERS.xlsx. There are multiple reasons:
• The name of the file or path does not exist.
• The file is in use by another program.
• The workbook you are trying to save has the same name as a workbook that is opened already.
at Microsoft.Office.Interop.Excel.Workbooks.Open(String Filename, Object UpdateLinks, Object ReadOnly, Object Format, Object Password, Object WriteResPassword, Object IgnoreReadOnlyRecommended, Object Origin, Object Delimiter, Object Editable, Object Notify, Object Converter, Object AddToMru, Object Local, Object CorruptLoad)
at ExcelHandler.Concrete.ExcelWorkbook.SaveAsText_Tab(String filename)
Я обнаружил точку исключения, и она находится в этой строке:
clsWorkbook = clsExcel.Workbooks.Open(filename);
Странно, что это происходит только при запуске приложения через планировщик задача не через мою учетную запись.
Расписание составлено с учетом моих полномочий, высоких привилегий.
Я оборачиваюсь вокруг этого несколько дней, но это не кажется логичным, потому что яиспользуйте того же пользователя, который запускает его локально, на сервере и через планировщик задач.
Любые предложения?