2012-06-22 56 views
3

我需要使用C++(WINRT/Metro)在我的應用程序中生成唯一的臨時文件名。正如我所看到的,Win32 API GetTempFileName標記爲僅在桌面上使用。地鐵應用的GetTempFileName

什麼是它的地鐵風格的應用程序等值?

+0

爲什麼要調用Win32 API而不是可能用於此配置文件的C#方法。 http://msdn.microsoft.com/en-us/library/system.io.path.gettempfilename(v=vs.110).aspx –

+0

WinRT .NET Profile中不存在System.IO.GetTempFileName。在這個線程中提出了一個替代方案http://social.msdn.microsoft.com/Forums/en-US/winappswithcsharp/thread/1c053a5d-83f0-4e61-aed1-c2c6cadcb30a/ –

+0

你也應該閱讀這個:http:/ /msdn.microsoft.com/en-us/library/windows/apps/xaml/Hh758319%28v=win.10%29.aspx –

回答

0

呦可以通過將文件保存在臨時存儲中並通過GUID命名來實現此目的。示例:

// Get temporary storage folder  
var tempFolder = Windows.Storage.ApplicationData.Current.TemporaryFolder; 

// generate unique filename 
var filename = Guid.NewGuid().ToString(); 
StorageFile myFile = await tempFolder.CreateFileAsync(filename, CreationCollisionOption.ReplaceExisting);