2017-07-20 192 views
0

首先,我開發了一個帶有「任何CPU」的程序。 設置是「32位優先級」和任何CPU。因爲它是默認的。安裝了NuGet包的錯誤

我完成開發後,沒有編譯錯誤。 然後,我切換平臺x64並重新編譯。 VS2017顯示很多錯誤,都安裝了NuGet包。

我試圖刪除文件夾「obj」,「bin」。但我無法解決任何問題。有28個錯誤。所有是我使用NuGet安裝的類名。

我不應該改變這個嗎?

enter image description here

爲什麼VS2017有這麼多的麻煩呢?這是正常的嗎? 當我與雙贏的形式發展,沒有煩惱,當我改變目標86,64 ...

如何解決這個未掛級? 所有必須工作...

我的Nuget包是UwpDesktop,InputSimulator。

更新1:我試圖重新安裝NuGet。但它沒有解決。

更新2:我放棄使用「x64」。但我試圖修改64位設置「AnyCPU」。現在,我成功地用64位設置再次編譯。我也禁用取消「32位優先」選項。但是..我仍然對VS2017發展感到非常痛苦,哈哈,這是真的。

我比較項目與

(A)不限CPU設定值=建立成功,輸出文件夾是BIN \調試\

在項目設定

(B)64,輸出文件夾是BIN \ 64 \調試\

兩者都是「相同的」除了輸出文件夾的名稱。 重要嗎?

我不明白爲什麼VS2017不能建立。 我想,主要原因是NuGet安裝路徑。我不知道,因爲我是第2周學習VS2017,UWP:)

現在,還有問題, 如果我切換回「64」,我不能編譯.. 但我可以編譯「AnyCPU」。

enter image description here

enter image description here

+0

x64平臺發生了哪些錯誤?我對他們毫無頭緒,請在此列出。 –

+0

有些軟件包有時沒有用於Nuget中的特定框架和平臺的程序集,請嘗試刪除nuget軟件包並再次添加它,以便在出現問題時提供。提供有關您的錯誤和設置的更多信息(框架版本,項目類型,安裝的NuGet軟件包的版本等)。 – bradbury9

+0

我更新了一些進度。謝謝 ! –

回答

0

首先,謝謝Tetsuya,Leo,bradbury9的許多暗示。

我自己解決了這個問題。

正如Leo寫的,這裏是解決方案。

  • 的NuGet將默認
  • 的DLL安裝到調試文件夾要建立與「釋放」,我們有必要從DLL「調試」,以「釋放」複製。
  • 有時候,我們也必須複製x64/Release,x86/Release文件夾。
1

看起來是必需的包中的一些手動設置。我引用https://preview.nuget.org/packages/UwpDesktop/10.0.14393.3

我們正在與最新版本更新此包的工作,同時作爲一種解決方法,請添加以下winmds到您的項目...

也許你想降低封裝安裝以前的版本,或按照這些步驟來使用它。

+0

NuGet是很棒的工具。我不想回到手動安裝....... –

+0

@KazuhikoNakayama我同意NuGet是一個很酷的工具,但你可以使用NuGet控制檯強制特定的軟件包版本。 'Install-Package [PackageName] -Version [VersionToInstall]' – bradbury9