var path64 = Path.Combine(Directory.GetDirectories(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Windows), "winsxs"), "amd64_microsoft-windows-osk_*")[0], "osk.exe"); var path32 = @"C:\windows\system32\osk.exe"; var path = (Environment.Is64BitOperatingSystem) ? path64 : path32; if(File.Exists(path)) { Process.Start(path); }