2017-05-02 73 views
0

我正在嘗試編寫一些C#.NET應用程序來在Nano服務器上執行它。這是源代碼。納米服務器C#應用程序依賴項

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 

namespace ConsoleApp1 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      Console.WriteLine("Hello hello world"); 
     } 
    } 
} 

很明顯,這段代碼在Windows 10系統上運行成功。

PS C:\Users\roza\Documents\Visual Studio 2017\Projects\ConsoleApp1\ConsoleApp1\bin\Debug> .\ConsoleApp1.exe 
Hello hello world 

我的理解,也就是默認情況下,納米服務器上安裝了.NET的核心,所以我想這是可能的納米服務器上莫名其妙地執行該代碼。

當我複製編譯的* .exe文件,以納米服務器,並試圖執行它那裏,我第一次得到這個錯誤:

[Nano1X]: PS C:\Users\Administrator\Documents> .\ConsoleApp1.exe 
Program 'ConsoleApp1.exe' failed to run: The subsystem needed to support the image type is not present. 
    + CategoryInfo   : ResourceUnavailable: (:) [], ApplicationFailedException 
    + FullyQualifiedErrorId : NativeCommandFailed 
[Nano1X]: PS C:\Users\Administrator\Documents> 

這時我才意識到,納米服務器只支持x64體系結構,所以我通過「Project-> ConsoleApp1 Properties-> Build-> Platform Target:x64」並在Nano Server上執行我的應用程序一次。

[Nano1X]: PS C:\Users\Administrator\Documents> .\ConsoleApp1.exe 
[Nano1X]: PS C:\Users\Administrator\Documents> 

我什麼都沒有印:沒有錯誤,沒有任何結果。它的原因是什麼,如果我真的希望我的C#.NET應用程序被Nano Server成功執行,該怎麼辦?

+0

如果您確實檢查了Microsoft文檔,那麼.NET Framework應用程序在Nana上顯然不受支持。 .NET Core應用程序很特別,請在http://dot.net上學習它們。 –

回答

0

您將看不到任何輸出,因爲您正在遠程啓動控制檯應用程序。在納米服務器上啓動應用程序,顯示「Hello hello world」,然後關閉。沒有什麼可以像在Windows 10機器上進行調試時那樣將輸出綁定到PowerShell窗口。

您希望看到應用程序正在運行,您可以使其在文件系統上寫入文本文件並驗證文件是否已創建。或者更改應用程序以託管Web服務器like Kestrel,並從您的開發機器遠程訪問它。

相關問題