標籤:bin mvc src invalid win bsp ocs pos host
按照官網教程
https://docs.microsoft.com/zh-cn/aspnet/core/host-and-deploy/windows-service?view=aspnetcore-2.1&tabs=aspnetcore2x
複製官方DEMO代碼,
https://github.com/aspnet/Docs/tree/master/aspnetcore/host-and-deploy/windows-service/sample
建立Asp.Net Core MVC項目。以release發布到d:\svc。
然後開啟PowerShell,輸入命令,報錯
sc create MyService binPath="D:\svc\MvcService.exe"
Set-Content : 找不到接受實際參數“binPath=D:\svc\MvcService.exe”的位置形式參數。
所在位置 行:1 字元: 1
+ sc create MyService binPath="D:\svc\MvcService.exe"
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (:) [Set-Content],ParameterBindingException
+ FullyQualifiedErrorId : PositionalParameterNotFound,Microsoft.PowerShell.Commands.SetContentCommand
覺得匪夷所思,命令跟官網一模一樣,怎麼就不對呢?各種折騰都搞不定。
考慮到官網用的工具是傳統的命令提示字元,所以換一下。最新版的Win10,右鍵點擊開始菜單,已經沒有命令提示字元。左鍵點開始菜單,鍵盤打cmd,可以找到命令提示字元工具,此時還要用右鍵,以管理員身份運行,非常麻煩。
然而竟然成功安裝了服務!
訪問http://localhost:5000可以看到網頁。
真是無語了,我一直認為PowerShell就是CMD的升級版,向前相容的,沒想到還有這種坑。
最後用sc delete MyService刪除服務,探索服務還在,只是停止和禁用了。也不知道對不對。
在Windows服務中託管 ASP.NET Core的坑