mono linux c 服务,使用mono-service在Linux上包装Windows服务
嗨,我正在嘗試使用mono-service2從visual studio運行一個股票Windows服務項目 . 我正在使用mono 2.0和編譯器在debian上運行它 .
gmcs *.cs -pkg:dotnet
我嘗試從這開始(我嘗試使用-d設置為dir與app和-n,-m設置)
mono-service2 -l:service.lock --debug Program.exe
唯一的代碼更改是添加用于測試的writelines
Service1.cs
using System;
using System.ServiceProcess;
namespace spikes
{
public partial class Service1 : ServiceBase
{
public Service1()
{
InitializeComponent();
}
protected override void OnStart(string[] args)
{
Console.WriteLine("starting...");
}
protected override void OnStop()
{
Console.WriteLine("stopping....");
}
}
}
結果是這個錯誤
Unhandled Exception: System.TypeInitializationException: An exception was thrown by the type initializer for Mono.Unix.Native.Syscall ---> System.DllNotFoundException: libMonoPosixHelper.so
at (wrapper managed-to-native) Mono.Unix.Native.Syscall:_L_ctermid ()
at Mono.Unix.Native.Syscall..cctor () [0x00000]
--- End of inner exception stack trace ---
at MonoServiceRunner.Main (System.String[] args) [0x00000]
謝謝你的幫助
Answer
我錯過了LD____LIBRARY____PATH env變量,因此我將其添加到csh中進行測試
#!/bin/csh
setenv LD_LIBRARY_PATH .:/usr/local/lib
mono-service2 -l:service.lock --debug Program.exe
總結
以上是生活随笔為你收集整理的mono linux c 服务,使用mono-service在Linux上包装Windows服务的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: AMD 承认罕见的 Radeon 显卡驱
- 下一篇: linux修改ip广播地址,Linux设