System.ComponentModel.Win32Exception при запуске процесса - файл не найден, но файл существует

Я пытаюсь создать менеджер для моих автозапусков. Он должен прочитать файл XML, а затем запустить мои программы с произвольной задержкой. Например:

<startup id="0">
    <name>Realtek Audio Manager</name>
    <process arguments="-s">C:\Program Files\Realtek\Audio\HDA\RtkNGUI64.exe</process>
    <delay>5</delay>
</startup>

Это запускает указанный процесс (C:\Program Files\...\RtkNGUI64.exe -s) через 5 секунд.

Теперь три программы не запускаются, давая мнеSystem.ComponentModel.Win32Exception: "Das System kann die angegebene Datei nicht finden." («Системе не удалось найти указанный файл.»)

Но XML анализируется правильно, и файл, который я хочу запустить, находится в месте, указанном в файле XML.

Проблема касается только этих трех файлов:
Intel HotkeysCmd - C: \ Windows \ System32 \ hkcmd.exe
Лоток Intel GFX - C: \ Windows \ System32 \ igfxtray.exe
Intel Persistance - C: \ Windows \ System32 \ igfxpers.exe

Я думаю, что проблема связана с расположением файлов: все они находятся в C: \ Windows \ System32, а все остальные работающие программы расположены вне (C: \ Program Files, C: \ Program Files (x86) , D: \ Program Files,%AppData%)

Нужно ли давать моей программе какие-то права доступа для запуска программ в C: \ Windows \ System32? Как бы я это сделал?

Если нет, то по какой причине я получаю ошибки в этих программах?

РЕДАКТИРОВАТЬ - мой код:

delegate(object o)
{
    var s = (Startup) o;
    var p = new System.Diagnostics.Process
                {
                    StartInfo =
                        new System.Diagnostics.ProcessStartInfo(s.Process, s.Arguments)
                };
    try
    {
        s.Process = @"C:\Windows\System32\igfxtray.exe"; // For debugging purposes
        System.Diagnostics.Process.Start(s.Process);
        icon.ShowBalloonTip(2000, "StartupManager",
                            "\"" + s.Name + "\" has been started.",
                            System.Windows.Forms.ToolTipIcon.Info);
    }
    catch (System.ComponentModel.Win32Exception)
    {
        icon.ShowBalloonTip(2000, "StartupManager",
                            "\"" + s.Name + "\" could not be found.",
                            System.Windows.Forms.ToolTipIcon.Error);
    }
}

Ответы на вопрос(1)

Ваш ответ на вопрос