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

引用 C 的DLL問題

答題得分者是:syntax
frog1
一般會員


發表:25
回覆:40
積分:18
註冊:2007-01-24

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-05-26 23:22:28 IP:219.86.xxx.xxx 訂閱
Hi,各位先進
我要引用一個DLL, 可格式應為 C的格式, 因有許多不了解要如何對應到Delphi, 請各先進指點
DLL的格式如下
int GetImage(int number, unsigned char** buffer, unsigned long* psize, IMAGE_RESOLUTION resolution, float zoom, int dx,int dy)
Delphi應為
GetImage(Number : Integer, ??????, ?????, ?????, zoom : Float, dx : Integer, dy : Integer) : Integer;
'?????'的三個參數不知要如何下, 整体我如此解讀對嗎
請先進指點
Stallion
版主


發表:52
回覆:1600
積分:1995
註冊:2004-09-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-05-28 11:10:44 IP:211.22.xxx.xxx 未訂閱
以下為個人的對型態認知的轉換推測,沒有測試過~。
若有誤謬請網友不吝指正,讓小弟得以學習。


unsigned char **buffer;相映於Delphi應該是
var
buffer:^LPBSTR;

unsigned long *psize;相映於Delphi應該是
var
pSize:^WORD;

至於IMAGE_RESOLUTION 我查過WINAPI的標頭檔找不到這個宣告型態宣告,你必須察看一下所使用的DLL中有沒有附帶I標頭檔其中有MAGE_RESOLUTION型態的宣告?沒有大概就死棋了!
===================引 用 frog1 文 章===================
Hi,各位先進
我要引用一個DLL, 可格式應為 C的格式, 因有許多不了解要如何對應到Delphi, 請各先進指點
DLL的格式如下
int GetImage(int number, unsigned char** buffer, unsigned long* psize, IMAGE_RESOLUTION resolution, float zoom, int dx,int dy)
Delphi應為
GetImage(Number : Integer, ??????, ?????, ?????, zoom : Float, dx : Integer, dy : Integer) : Integer;
'?????'的三個參數不知要如何下, 整体我如此解讀對嗎
請先進指點
syntax
尊榮會員


發表:26
回覆:1139
積分:1258
註冊:2002-04-23

發送簡訊給我
#3 引用回覆 回覆 發表時間:2007-05-28 23:04:27 IP:61.64.xxx.xxx 訂閱
function GetImage(Num: Integer; buf: Pointer; pSize: ^LongInt; resolution, float, zoom: IMAGE_RESOLUTION; dx, dy: Integer);
frog1
一般會員


發表:25
回覆:40
積分:18
註冊:2007-01-24

發送簡訊給我
#4 引用回覆 回覆 發表時間:2007-05-30 09:53:05 IP:219.81.xxx.xxx 訂閱
Hi,
感謝二位指點
系統時間:2024-05-19 8:13:53
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!