Hallo, ich versuche Mono-Service2 zu verwenden, um ein Lager Windows-Service-Projekt von Visual Studio zu betreiben. Ich mache das auf Debian mit Mono 2.0 und kompiliere mit.Verwenden von Mono-Service, um einen Windows-Dienst auf Linux zu wickeln
gmcs *.cs -pkg:dotnet
Ich versuche, und starten Sie mit diesem (Ich habe versucht, mit -d Set zum dir mit der App und -n, -m-Set)
mono-service2 -l:service.lock --debug Program.exe
Die einzige Codeänderung ist hinzuzufügen writelines zum Testen
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....");
}
}
}
Das resultierende i s dieser Fehler
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]
Danke für Ihre Hilfe
Antwort
ich die LD____LIBRARY____PATH env Variable fehlt, so dass ich hinzugefügt, um es in einem csh für einen Test
#!/bin/csh
setenv LD_LIBRARY_PATH .:/usr/local/lib
mono-service2 -l:service.lock --debug Program.exe
ya das war an der Spitze, debian, mono-2.0 –
Gelöschte mein erster Kommentar seit nicht mehr relevant. Überschaute diese Information, sorry. ;-) – Tomalak
und danke nochmal –