3

我想尝试使用 hasp api 来构建我的自定义安全行为,但是当我使用 Sentinel HASP ToolBox 生成的代码时它不起作用。我将此代码从 Toolbox 粘贴到 onLoad Form 方法:

HaspFeature feature = HaspFeature.Default;

string vendorCode = 
"AzIceaqfA1hX5wS+M8cGnYh5ceevUnOZIzJBbXFD6dgf3tBkb9cvUF/Tkd/iKu2fsg9wAysYKw7RMAsV" + 
"vIp4KcXle/v1RaXrLVnNBJ2H2DmrbUMOZbQUFXe698qmJsqNpLXRA367xpZ54i8kC5DTXwDhfxWTOZrB" + 
"rh5sRKHcoVLumztIQjgWh37AzmSd1bLOfUGI0xjAL9zJWO3fRaeB0NS2KlmoKaVT5Y04zZEc06waU2r6" + 
"AU2Dc4uipJqJmObqKM+tfNKAS0rZr5IudRiC7pUwnmtaHRe5fgSI8M7yvypvm+13Wm4Gwd4VnYiZvSxf" + 
"8ImN3ZOG9wEzfyMIlH2+rKPUVHI+igsqla0Wd9m7ZUR9vFotj1uYV0OzG7hX0+huN2E/IdgLDjbiapj1" + 
"e2fKHrMmGFaIvI6xzzJIQJF9GiRZ7+0jNFLKSyzX/K3JAyFrIPObfwM+y+zAgE1sWcZ1YnuBhICyRHBh" + 
"aJDKIZL8MywrEfB2yF+R3k9wFG1oN48gSLyfrfEKuB/qgNp+BeTruWUk0AwRE9XVMUuRbjpxa4YA67SK" + 
"unFEgFGgUfHBeHJTivvUl0u4Dki1UKAT973P+nXy2O0u239If/kRpNUVhMg8kpk7s8i6Arp7l/705/bL" + 
"Cx4kN5hHHSXIqkiG9tHdeNV8VYo5+72hgaCx3/uVoVLmtvxbOIvo120uTJbuLVTvT8KtsOlb3DxwUrwL" + 
"zaEMoAQAFk6Q9bNipHxfkRQER4kR7IYTMzSoW5mxh3H9O8Ge5BqVeYMEW36q9wnOYfxOLNw6yQMf8f9s" + 
"JN4KhZty02xm707S7VEfJJ1KNq7b5pP/3RjE0IKtB2gE6vAPRvRLzEohu0m7q1aUp8wAvSiqjZy7FLaT" + 
"tLEApXYvLvz6PEJdj4TegCZugj7c8bIOEqLXmloZ6EgVnjQ7/ttys7VFITB3mazzFiyQuKf4J6+b/a/Y";

Hasp hasp = new Hasp(feature);
HaspStatus status = hasp.Login(vendorCode);

if (HaspStatus.StatusOk != status)
{
    //handle error
    Application.Exit();
}

接下来我插入了演示 HASP HL Net key 10 进行试用。在 Visual Studio 示例项目中使用此代码时,我总是会出错,但是当我在 ToolBox 中尝试时,我会收到正确的答案(HASP_STATUS_OK)。当然,我包括了对 hasp .net 程序集的引用并添加了命名空间。

是什么原因,它无法从 c# 中的运行时 api 登录到 hasp hl 密钥?

4

1 回答 1

2

我找到了解决方案。首先,我必须包含对 hasp_windows_demo.dll 的引用,因为 hasp_net_windows.dll 只是 hasp_windows_demo.dll 的包装库。第二:我使用 VirtualBox 进行测试,所以当我将加密狗插入 USB 端口时,usb virtualbox 驱动程序崩溃 - 需要重新安装(仅限 Mac/Linux 问题)。

于 2012-05-09T18:49:12.670 回答