我似乎需要一些帮助(有些人,我的意思是很多)。
我正在尝试制作一个 C 程序(或者 c++,如果我让它工作,语言并不是很重要)来连接到 HASP USB。 HASP 基本上是一个具有一些独特代码的 USB 驱动器。 HASP 的目的基本上只是“保护”另一个程序,以便它仅在 HASP 连接到计算机时运行。
首先,让我说一下,我实际上是在努力让它发挥作用,而不是攻击另一个。尽管我有一个主 key ,但目前我正在使用演示 key 进行开发。
这个 HASP 程序有一个工具箱,它应该生成 C 代码,准备好复制粘贴并让它工作。但是,它实际上并没有起作用,或者至少,它不仅仅是复制粘贴。
不幸的是,我没有任何类型的 C 或 C++ 编码经验,所以我在尝试解决这个问题时遇到了几个问题。我只在 Director 中编写了另一部分(类似于 Flash)。
它为我提供的用于登录(读取、连接)HASP 的代码如下:
const hasp_feature_t feature = HASP_DEFAULT_FID;
hasp_handle_t handle = HASP_INVALID_HANDLE_VALUE;
hasp_status_t status;
//This is a code needed to login, its just the demo code for now, but it matches
//the HASP i'm using
unsigned char vendor_code[] =
"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";
status = hasp_login(feature, vendor_code, &handle);
/* check if operation was successful */
if (status != HASP_STATUS_OK)
{
switch (status)
{
case HASP_FEATURE_NOT_FOUND:
break;
case HASP_HASP_NOT_FOUND:
break;
case HASP_OLD_DRIVER:
break;
case HASP_NO_DRIVER:
break;
case HASP_INV_VCODE:
break;
case HASP_FEATURE_TYPE_NOT_IMPL:
break;
case HASP_TMOF:
break;
case HASP_TS_DETECTED:
break;
default:
break;
}
}
错误:
hasp_demo.cpp|44|error: expected constructor, destructor, or type conversion before '=' token|
hasp_demo.cpp|47|error: expected unqualified-id before 'if'|
||=== Build finished: 2 errors, 0 warnings ===|
我知道这是一个非常具体的帮助请求,但我现在完全迷失了,不知道从现在开始该做什么。我试着玩弄代码,但它总是让我出错。
此外,我在 Windows 上使用 Codeblocks IDE 中的 GNU GCC 编译器。
最佳答案
您粘贴的代码似乎是一个如何使用 API 的示例,而不是一个工作程序本身。它看起来不像是为了编译。
所以我猜你需要学习 C/C++,或者在你的工作中找到可以提供帮助的人。
关于c++ - 使用 C/C++ 获取 HASP key (问题),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4489604/