设为首页 - 加入收藏 焦点技术网
热搜:java
当前位置:首页 >

[原创]如何在Delphi中调用.Net编写的DLL中的函数(Function)、过程(Procedure)

导读:标题:如何在Delphi中调用.Net编写的DLL中的函数(Function)、过程(Procedure)关键字:Delphi 调用 .Net DLL  函数(Function)、过程(Procedure)Author:丁报圣,Arthur(阿胜)QQ:34334055,EMAIL:yzdbs@msn.com正文:    最近因公司群发邮件程式需要给注册一段时间没有激活的用户发激活邮件  邮件中有...。。。


标题:如何在Delphi中调用.Net编写的DLL中的函数(Function)、过程(Procedure)

关键字:Delphi 调用 .Net DLL  函数(Function)、过程(Procedure)

Author:丁报圣,Arthur(阿胜)QQ:34334055,EMAIL:yzdbs@msn.com

正文:

    最近因公司群发邮件程式需要给注册一段时间没有激活的用户发激活邮件
 
邮件中有注册密码 需要还原发给用户 但由于密码加密是用C# 中的TripleDES

完成 手头上又没有现成Delphi的实现 时间紧急 现翻译是来不及了

于是经过查资料反复实施 终于成功实现在Delphi中调用 C# 封装的DLL

中的方法(Function)和过程(Procedure)现把实施步骤写下

以供有需要的XDJM分享:

1、建立:DotNetFunc.cs 封装要使用的Function、Procedure。
 
2、生成密钥文件,用于给程序集强名称签名
sn -k key.snk

3、使用强名称签名,编译成类库
csc /t:library DotNetFunc.cs

4、生成类型库
tlbexp DotNetFunc.dll /out:DotNetFunc.tlb

5、注册dll
regasm DotNetFunc.dll

6、移入gac全局程序集缓存
gacutil -i DotNetFunc.dll

7、Delphi中的调用测试

uses  Variants, COMOBJ, OleCtnrs, Activex;
 
procedure TForm1.Button1Click(Sender: TObject);
var
  SharpObject: Variant; 
  TestValue: string;
begin
  try
    try

      SharpObject := CreateOleObject('CSharpServer.SharpObject');
      TestValue := SharpObject.DecryptTripleDES(Edit1.Text);
      Edit2.Text :=TestValue;
    except
      on e: exception do
      begin
        ShowMessage(e.Message);
      end;
    end;

  finally
    SharpObject := Unassigned;
  end;
end;


procedure TForm1.Button2Click(Sender: TObject);
var
  SharpObject: Variant;
  TestValue: string;
begin
  try
    try

      SharpObject := CreateOleObject('CSharpServer.SharpObject');
      TestValue := SharpObject.EncryptTripleDES(Edit2.Text);
      Edit1.Text :=TestValue;
    except
      on e: exception do
      begin
        ShowMessage(e.Message);
      end;
    end;
  finally

    SharpObject := Unassigned;
  end;
end;


initialization
  CoInitialize(nil);

finalization
  CoUninitialize;

end.  

运行图片











2006-11-09, 今天在网上发现 文章给人转载了,地址如下:
http://www.98exe.net/Article/c/200610/2023.html

转载时居然把作者信息删除了

强烈鄙视 网站转载人 打倒!

(编辑: dingbaosheng)

网友评论
相关文章