Jak uruchomić zadanie systemu Windows 2008 z harmonogramu za pomocą „interakcji z pulpitem”

Mam małą aplikację .NET, która działa pod Windows 2008 Server za pośrednictwem Harmonogramu zadań. Ta aplikacja musi otworzyć plik programu Excel, 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 harmonogramu zadań, aplikacja działa poprawnie.

Ustawiam go na „Uruchom z najwyższymi uprawnieniami” i mam zaznaczoną opcję „Użytkownik jest zalogowany lub nie”.

Domyślam się, że proces ten musi współdziałać z pulpitem, podobnie jak sprawdzić flagę „interakcji z komputerem” w usłudze. Ale nie mogłem znaleźć podobnej rzeczy dla zaplanowanych zadań.

Oto kod, który zawodzi: (nie działa w wywołaniu workbook.open)

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);                
    }

}

questionAnswers(1)

yourAnswerToTheQuestion