Xin chào, tôi đang cố gắng sử dụng mono-service2 để chạy một dự án Dịch vụ Windows từ kho trực quan. Tôi đang chạy trên debian với mono 2.0 và biên dịch với.sử dụng dịch vụ đơn nhất để gói dịch vụ cửa sổ trên linux
gmcs *.cs -pkg:dotnet
tôi cố gắng và bắt đầu với điều này (tôi đã thử với bộ -d vào thư mục với ứng dụng và -n, bộ -m)
mono-service2 -l:service.lock --debug Program.exe
Sự thay đổi mã chỉ là thêm writelines để thử nghiệm
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....");
}
}
}
Kết quả là tôi s lỗi này
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]
Nhờ sự giúp đỡ của bạn
trả lời
tôi nhớ da diết biến LD____LIBRARY____PATH env, vì vậy tôi đã thêm nó trong một csh cho một thử nghiệm
#!/bin/csh
setenv LD_LIBRARY_PATH .:/usr/local/lib
mono-service2 -l:service.lock --debug Program.exe
ya ở trên cùng, debian, mono-2.0 –
Đã xóa nhận xét đầu tiên của tôi vì không còn liên quan nữa. Đã nhìn thấy thông tin đó, xin lỗi. ;-) – Tomalak
và cảm ơn một lần nữa –