using Silk Performer; // C# imports Silk Performer // VB.NET
例:
Bdl.Print("This is a message from within a .NET Assembly");
BDL クラスによって定義される関数は、.NET アセンブリを仮想ユーザーで実行する場合にのみ使用できます。 これは、perfrun.exe 関数 (仮想ユーザー プロセス) が呼び出されるためです。 Bdf スクリプト例
dcltrans
transaction TMain
var
hObject, hObject2 : number;
hReturn : number;
begin
DotNetSetString(hObject, "ConstrValue1");
hObject := DotNetLoadObject("bin\\Release\\TestDriver.dll", "TestDriver.TestClass");
hObject2 := DotNetLoadObject("bin\\Release\\TestDriver.dll", "TestDriver.ParamClass");
DotNetSetFloat(hObject, 1.23);
DotNetSetInt(hObject, 123);
DotNetCallMethod(hObject,"TestMethod");
DotNetGetObject(hObject, hReturnValue);
DotNetFreeObject(hObject);
DotNetFreeObject(hObject2);
DotNetFreeObject(hReturn);
end TMain; .NET コード (C#) 例
using System;
using Silk Performer;
namespace TestDriver
{
public class TestClass
{
public TestClass(string sConstrValue)
{
Bdl.Print("Constructor called with param" + sConstrValue);
}
public TestClass()
{
Bdl.Print("Default Constructor called!");
}
public ParamClass TestMethod(double fParam, int nParam)
{
return new ParamClass(fParam, nParam);
}
}
public class ParamClass
{
public double mfMember;
public int mnMember;
public ParamClass(double fParam, int nParam)
{
mfMember = fParam;
mnMember = nParam;
}
public ParamClass()
{
mfMember = 0.0;
mnMember = 0;
}
}
}