Mam małą aplikację .NET, którą uruchamiam pod Windows 2008 Server za pomocą Harmonogramu zadań. Ta aplikacja musi otworzyć plik Excela, a następnie zapisać go jako plik CSV. Zadanie kończy się niepowodzeniem, gdy próbuję otworzyć skoroszyt. Jeśli uruchomię go ręcznie bez uruchamiania programu do planowania zadań, aplikacja będzie działać poprawnie.Jak uruchomić zadanie Windows 2008 z programu planującego za pomocą "interakcji z pulpitem"
Mam to ustawione na "Uruchom z najwyższymi uprawnieniami" i zaznacz "Uruchom użytkownika pogody jest zalogowany lub nie".
Domyślam się, że ten proces wymaga interakcji z komputerem, podobnie jak zaznaczenie flagi "interakcja z komputerem" w usłudze. Ale nie byłem w stanie znaleźć czegoś podobnego do zaplanowanych zadań.
Oto kod, który się niepowodzeniem (nie jest on na workbook.open rozmowy)
public static void ConvertExcelToCsv(string source, string destination)
{
if (File.Exists(destination)) File.Delete(destination);
Application xl = new Application();
try
{
Workbook workbook = xl.Workbooks.Open(source, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
Worksheet ws = (Worksheet)workbook.Sheets[1];
ws.SaveAs(destination, XlFileFormat.xlCSV, Type.Missing, Type.Missing, false, false, Type.Missing, Type.Missing, Type.Missing,true);
Marshal.ReleaseComObject(ws);
}
finally
{
xl.DisplayAlerts = false;
xl.Quit();
Marshal.ReleaseComObject(xl);
}
}
Działa! To szalone, nigdy bym tego nie znalazł. Również powyższy link jest niepoprawny, możesz znaleźć artykuł opisany tutaj: http://social.msdn.microsoft.com/Forums/en-US/innovateonoffice/thread/b81a3c4e-62db-488b-af06-44421818ef91 – Kelly
Możesz również trzeba wyłączyć UAC dla konta użytkownika sterującego automatyką Office na serwerze - to było dla mnie ostateczne załamanie. –
Podążyłem za rozwiązaniami, które nie sprawdziły się u mnie. Wprowadziłem kilka zmian w tożsamości Dcom "aplikacji Microsoft Excel", która zadziałała dla mnie. Zmieniłem tożsamość na "Ten użytkownik" i podałem dane uwierzytelniające konta administratora. To działało dobrze dla mnie i nasza Sharepoint Webpart zaczęła działać tak, jak powinna. –