超级狗Superdog API 示例工程问题
1. 超级狗(Super dog) Autocad demo 号换正式号
工程属性链接里加正式号的.lib, vender_code 在 dog_demo.lsp 里
2. 超级狗(Super dog)正式开发号的编译 cpp
1. 要编译一个 CPP 用的 lib, 因为离线包里面的 lib 是 c 的, 但是工程是 C++的, 所以 需要一个扩展的 lib 可以让 c++调用 c 的 lib
2. 把正式号和 c++的库都放到工程里编译
C++ api 库工程在 C:\Program Files (x86)\Gemalto\SuperDog\2.4\API\Licensing\Cpp\msvc8
配置工程属性只需要确定模式是 release_libmt, 编译后会生成一个库文件 “libdog_cpp_windows_MT_msc8.lib”这个库文件编译过一次以后所有的开发号都可以 用(包括 demo)
Sample 工程只需要把正式号的值更新到“vendor_code.h”并且把 c++的库和正式号的 库写在配置里
注意:
1. 两个库文件要写在两行
2.配置为 release libmt
3.两个工程分别在工程名字上点右键编译, 否则编译第二个工程的时候有问 题
3. 超级狗(Super dog) csharp 示例
这个示例程序是根据 DEMOMA 号编译的.
如果使用正式号的锁需要替换:
1) vendor code : dogvendorcode.cs 中 strVendorCode 的值替换为 *.hvc 里面的 值
2) 库文件(在 C:\Users\yingyan\Documents\Gemalto\SuperDog 2.4\API\Licensing\DotNet 目录下)
4. 超级狗(Super dog)java 示例工程怎么编译正式号
1) 替换 dog_demo.java & dog_update.java 里面的 vendorCode
2) 使用 build_samples.bat 重新 build 示例
3) 把 C:\Users\用户名\Documents\Gemalto\SuperDog 2.4\API\Licensing\Java 目 录下的正式号的库文件以及 DogJava.dll & DogJava_x64.dll 放在示例工程同级 目录下, 或者系统目录下
Java 的 jni 不需要重新编译, 正式号的 dog_windows_xxx.dll 和 Dogjava.dll 放在系 统目录下肯定可以找到,放在工程目录下不一定可以找到.因为有的工程太复 杂了.
eclipse 不需要在 native lib location 里面指定,直接放到系统目录下应该是可以 找到的
把"SuperDog"这个目录放在客户的工程里,不要改名字.库文件放在和 "SuperDog"同一级目录下或者系统目录下或者 path 环境变量制定的位置
5. 超级狗(Super dog) java script 编译正式号库
超级狗 JavaScript 需要客户链接自己正式号的 com 组件和 npdog 库文件。
我简单介绍 下编译流程。
关于 COM 组件的编译,和编译 cpp 程序是一样的。
1, C:\Program Files (x86)\Gemalto\SuperDog\2.4\API\Licensing\COM。下面 有 COM 组件的源代码。
2, 打开工程,需要替换 vendorcode。
3, 替换链接的 libdog_windows_正式号的 lib 库。
4, 链接 libdog_cpp_windows_MT_msc8.lib。这个库文件需要在 C:\Program Files (x86)\Gemalto\SuperDog\2.4\API\Licensing\Cpp 下根据不同的编译器 版本编译出来不同版本的库。注意的是这个库文件的编译版本和编译方式要和 最终 COM 组件编译出来的一致。
关于 npdog 的编译。
1, C:\Program Files (x86)\Gemalto\SuperDog\2.4\API\Licensing\NPAPI 下面 有 npdog 的源代码。
2, 打开工程,需要替换 vendorcode。
3, 替换链接的 libdog_windows_正式号的 lib 库。
4, 编译的时候需要使用 xulrunner-sdk,否则会报出很多变量没有定义的错误。
用 2008 编译的时候会报一个错误”
Error 3 error PRJ0019: A tool returned an error code from "Performing registration" dogcom dogcom”.
这个没有影响, 有编译出来的” dog_com_windows.dll”就 说明可以了, 这个 dll 大小约 3400k
VB6.0 直接用这个 com 组件, 需要在系统中注册一下: 用管理员权限运行 CMD, 进入 C:\Windows\SysWOW64 路径, 然后执行 regsvr32 dog_com_windows.dll (vb 还需要注册.ocx, 方法是一样的)
64 位 com 组件需要 64 位库“libdog_cpp_windows_x64_MT_msc10.lib”, vs2008 默认不支持 64 位,vs2010 支持 64 位
64 位编译选项要选 64 位