【发布时间】:2015-12-30 13:10:48
【问题描述】:
我创建了一个针对 .Net Framework 4.5.2 的简单 C# 类库,其中一个类使用 Visual Studio 2015 企业版。
示例代码:
namespace PwdEncryptor
{
public class Class1
{
public string Encrypt (string actualPassword)
{
return String.Concat(actualPassword, "Encrypt");
}
}
}
我想在 另一个系统上从我的 powerbuilder 代码中使用它。
这样做的目的是为了获得密码加密的通用代码。
问题:
我在我的 powerbuilder 代码中使用它,在全局实例变量中声明如下:
函数字符串加密(字符串实际密码)库“PwdEncryptor.dll”
在我写的应用程序的打开事件中:
string pwd
pwd = Encrypt("XYZ")
当我运行代码时,我收到一条消息说“未知函数名”
为了克服这个问题,我尝试了here 中提到的解决方案。我采取的一个小偏差是,而不是在同一系统上执行 powerbuilder,我导出了创建并导入到存在 powerbuilder 代码的其他系统的注册表。在这种情况下,我得到的错误是 Application 对象的 Open 事件中的错误运行时函数引用。
有没有办法可以使用我创建的 DLL?我错过了什么吗?请指教。
【问题讨论】:
-
DLL 是否在您运行 PowerBuilder 代码的系统上注册?
-
@MattBalent:是的,它已在注册表中注册。它从我在问题中提到的链接中的示例解决方案中注册为我系统上构建的一部分。仅供参考,它在 HKEY_CLASSES_ROOT 下注册。我导入此注册表,然后将其导出到具有 PowerBuilder 代码的系统上。
标签: c# .net visual-studio-2015 powerbuilder password-encryption