Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用crontab或守护进程运行C#.exe?_C#_Macos_Mono_Cron_Crontab - Fatal编程技术网

使用crontab或守护进程运行C#.exe?

使用crontab或守护进程运行C#.exe?,c#,macos,mono,cron,crontab,C#,Macos,Mono,Cron,Crontab,我想知道是否可以用crontab运行dll(c#)?dll是用mono编译的 thx:) --编辑-- 它可以是一个.exe。我正在研究mac和linux上的守护程序,你认为我可以将.exe作为守护程序运行吗。为什么不编写一个以DLL路径和入口点方法为参数的基于mono的exe?然后exe将使用反射加载DLL并执行指定的方法。(您可以通过在DLL中指定类似DllMain的方法来选择约定而不是配置,exe将知道如何自动调用该方法。这样,只需要一个参数,代码的意图就更加明显了。) 实现这样一个app

我想知道是否可以用crontab运行dll(c#)?dll是用mono编译的

thx:)

--编辑--


它可以是一个.exe。我正在研究mac和linux上的守护程序,你认为我可以将.exe作为守护程序运行吗。

为什么不编写一个以DLL路径和入口点方法为参数的基于mono的exe?然后exe将使用反射加载DLL并执行指定的方法。(您可以通过在DLL中指定类似DllMain的方法来选择约定而不是配置,exe将知道如何自动调用该方法。这样,只需要一个参数,代码的意图就更加明显了。)


实现这样一个applet将为您提供一个类似于Windows中RunDll的实用程序,并允许您从cron运行mono-DLL。

您可能需要查看最新的mono版本和C#Shell(尽管我个人会制作一个exe,从DLL调用您想要的函数)

“启动时,csharp shell将加载位于~/.config/csharp目录中的所有C#脚本文件和预编译库(以.dll结尾)(在Windows上,这是Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)的值)

首先加载程序集,然后执行脚本。这允许脚本依赖于程序集中定义的代码

C#脚本文件仅仅是包含语句和表达式的文件,它们不能包含完整的类定义,应该存储在DLL文件中并进行预编译。”

然后你可以做如下事情:

 csharp> using System;   
 csharp> Console.WriteLine ("hello");    
 hello   
 csharp>   

我会编写一个使用dll的小型控制台应用程序,然后计划通过crontab运行。有谁对守护进程方法有好的想法吗?