線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1686
推到 Plurk!
推到 Facebook!

要怎麼在專案中使用沒有.h檔的DLL函式庫

尚未結案
wei0510
一般會員


發表:9
回覆:2
積分:2
註冊:2009-05-19

發送簡訊給我
#1 引用回覆 回覆 發表時間:2010-08-26 16:32:05 IP:203.67.xxx.xxx 訂閱
大家好,最近在寫USB HID的應用程式,過程中會用到windows目錄下的HID.DLL這個函式庫,我看了一些文章大致歸類出下面的作法:

1. 在命令提示字元下執行impdef hid.def hid.dll,會產生hid.def檔,裡面紀錄了hid.dll中定義的函式名稱。
2. 在命令提示字元下執行implib hid.lib hid.def,會產生hid.lib檔。
3.在我的專案中點選Project->Add To Project,把hid.def、hid.dll、hid.lib加入目前的專案。

然後我試著在程式中引用hid.dll中的函式:

[code cpp]
//---------------------------------------------------------------------------
#include
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
GUID HidGuid;
HidD_GetHidGuid(&HidGuid);
}
//---------------------------------------------------------------------------

[/code]

可是在build的時候,編譯器反應我使用了未定義的函式"HidD_GetHidGuid" ([BCC32 Error] Unit1.cpp(19): E2268 Call to undefined function 'HidD_GetHidGuid')
,從hid.def可以得知這個函式確實是存在於hid.dll中,請問是我的操作過程中有所錯誤嗎?


編輯記錄
wei0510 重新編輯於 2010-08-26 16:32:58, 註解 無‧
foreman
高階會員


發表:3
回覆:124
積分:190
註冊:2004-09-10

發送簡訊給我
#2 引用回覆 回覆 發表時間:2010-08-27 13:59:41 IP:114.27.xxx.xxx 訂閱
編輯記錄
foreman 重新編輯於 2010-08-28 16:59:58, 註解 無‧
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#3 引用回覆 回覆 發表時間:2010-08-27 17:00:27 IP:122.116.xxx.xxx 訂閱
壓縮後可以上傳到
會員作品發表區(限本人創作發表)


===================引 用 foreman 文 章===================
大大:
我曾寫過USB HID DEVICE是PIC18F的單晶片程式, 為完工領錢我用BCB6寫了測試程式. 想與大大分享, 但我不會上傳請給我您的e-mail
foreman
高階會員


發表:3
回覆:124
積分:190
註冊:2004-09-10

發送簡訊給我
#4 引用回覆 回覆 發表時間:2010-08-28 17:06:21 IP:114.38.xxx.xxx 訂閱
大大:
我曾寫過USB HID DEVICE PIC18F的程式, 為了完工領錢用BCB6寫測試程式, 想與您分享但不會上傳請給E-mail
系統時間:2024-03-29 17:03:10
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!