使用crontab或daemon运行C#.exe?

时间:2011-03-08 17:22:12

标签: c# macos mono cron crontab

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

thx:)

- 编辑 -

好吧,它可以是.exe。我在mac和linux上查看守护进程,你认为我可以运行.exe作为守护进程。

2 个答案:

答案 0 :(得分:3)

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

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

答案 1 :(得分:3)

您可能想查看最新的单声道版本和C#Shell(虽然我个人会创建一个从DLL调用所需函数的exe文件。)

http://www.mono-project.com/CsharpRepl

  

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

     

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

     

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

然后你可以做以下事情:

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