2016-08-19 73 views
0

我正在嘗試爲Windows應用程序製作一個簡單的啓動程序。特別針對郵件應用程序無法在Windows 10週年更新中使用進程啓動Windows應用程序

public static void Main() 
{ 
     Process proc = new Process(); 
     proc.StartInfo.FileName = "explorer.exe"; 
     proc.StartInfo.Arguments = @"shell:Appsfolder\microsoft.windowscommunicationsapps_8wekyb3d8bbwe!microsoft.windowslive.mail"; 
     proc.Start(); 

     // Short code 
     //Process.Start("explorer", @"shell:Appsfolder\microsoft.windowscommunicationsapps_8wekyb3d8bbwe!microsoft.windowslive.mail"); 
} 

此代碼在安裝了週年紀念更新後無法使用。 它與以前版本的Windows一起工作。 有人可以測試它嗎? 我需要添加一些東西嗎?

如果我運行這個命令通過運行它的工作雖然。

+0

假設郵件應用程序是您的默認郵件處理程序,您可以運行'mailto://'(將proc.StartInfo.UseShellExecute設置爲True)來打開默認郵件應用程序。 –

+0

這不是我想要的結果。我只想打開郵件應用程序。如果我使用您的建議(mailto://),結果是它會嘗試創建新的電子郵件。此外,我有更多的一個帳戶,當應用程序啓動時,它會要求我選擇電子郵件發送的帳戶。 – zdzdz

+0

https://powertoe.wordpress.com/2012/11/02/get-a-list-of-metro-apps-and-launch-them-in-windows-8-using-powershell/ –

回答

0

我已經在我身邊測試過了,它實際上並沒有打開電子郵件,只是打開我的文檔文件夾。 但我不認爲你需要使用如此複雜的代碼來啓動郵件應用程序。 只需使用下面的代碼(由烏里ms-unistore-email啓動電子郵件):

Process proc = new Process(); 
proc.StartInfo.FileName = "explorer.exe"; 
proc.StartInfo.Arguments = "ms-unistore-email://"; 
proc.Start(); 

使用URI推出一個應用程序是在代碼中流行。您可以參考以下鏈接:How can I launch the Alarms App through a Universal Windows App

0

首先,我想驗證一下,Windows 10週年的變化使得啓動Windows應用程序變得更加棘手。我遇到了同樣的問題(我使用java代替C#)。 我已經取代

「資源管理器外殼:AppsFolder \ Microsoft.WindowsCamera_8wekyb3d8bbwe應用」

通過

「探險microsoft.windows.camera:」

使其工作(在這種情況下相機)。 請注意,這兩個命令在從Windows直接執行時都有效,但從第三方程序啓動時,只有第二個命令可以正常工作。

+0

謝謝你的解決方案。不幸的是,我回到了1151年。當它變得更好時,我會嘗試週年紀念更新。我還有一個問題。我有一個Windows窗體應用程序不能用於週年紀念更新。只是我還是還有別的改變? – zdzdz

相關問題