我意识到我必须DllImport
使用永久方法
perl_parse
perl_alloc
perl_free
ETC。,
但不确定如何将函数参数与方法一起使用,DLLImport
尤其是与perl_parse
方法一起使用。
我也意识到已经存在一个相关的问题,它几乎就在那里,但 OP 仍然通过创建一个 C 包装器然后在 C# 中使用它来解决。
他说他无法 DLLimport PERL_SYS_INIT3。
所以我的问题是如何仅使用 C# 正确包装它们并使用它?
看这个; 我希望它会有所帮助(它在早期版本中被调用)
我从这里得到这个(perl)
要在 C# 程序中嵌入 Perl 解释器,请添加对 COM 对象“Microsoft Script Control 1.0”的引用并编写如下代码:
MSScriptControl.ScriptControlClass Interpreter;
Interpreter = new MSScriptControl.ScriptControlClass();
Interpreter.Language = @"PerlScript";
string Program = @"reverse 'abcde'";
string Results = (string)Interpreter.Eval(Program);
以上等价于以下 Perl 脚本,它将 Perl 解释器嵌入到 Perl 解释器中:
use Win32::OLE;
my $Interpreter;
$Interpreter = Win32::OLE->new('ScriptControl');
$Interpreter->{Language} = 'PerlScript';
my $Program = "reverse 'abcde'";
my $Results = $Interpreter->Eval($Program);