PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
12882 | 00/08/22 17:47:07 | RE(6):※解決:メーカー提供のAPI関数について(資源回収ゴミレス) By リエッチ |
12869 | 00/08/21 23:01:19 | RE(5):メーカー提供のAPI関数について?(燃えないゴミレス) By Taka |
12865 | 00/08/21 18:23:02 | RE(4):メーカー提供のAPI関数について?(燃えないゴミレス) By リエッチ |
12862 | 00/08/21 17:30:55 | RE(3):メーカー提供のAPI関数について?(燃えないゴミレス) By Taka |
12860 | 00/08/21 16:38:18 | RE(2):メーカー提供のAPI関数について? By リエッチ |
12859 | 00/08/21 16:36:46 | RE(1):メーカー提供のAPI関数について? By リエッチ |
12858 | 00/08/21 16:35:51 | PB5.0.03: メーカー提供のAPI関数について? By リエッチ |
カテゴリ:スクリプトの記述
日付:2000年08月22日 17:47 発信者:リエッチ
題名:RE(6):※解決:メーカー提供のAPI関数について(資源回収ゴミレス)
Takaさん、こんにちは。
>とくに(2)は要注意で、例えばWin32のCopyFileでは、マニュアルには \"CopyFile\"としか書いてありませんが、
>ヘッダファイルを追いかけていくと実際の名前は\"CopyFileA\"および\"CopyFileW\"があって、
>環境に応じてどちらかが\"CopyFile\"として定義されていることがわかります。
上記の文章を読んで、「本当にマニュアルの関数名で定義していいのか?」という疑問を抱き
メーカーに問い合わせて、サンプルソースを見せてもらいました
サンプルは「Visual Basic」だったので、わざわざ「Visual Studio 6.0」をインストールし、
API関数の定義文を見てみると・・・以下の定義でした
\'データ受信
Declare Function HplsUploadStart Lib \"HPLS.DLL\" Alias \"_HplsUploadStart@12\" (ByVal hWnd As Long,
ByVal wGui As Integer, ByVal bFlg As Long) As Integer
これを見たとき、「alias」をつけなくては駄目なのかしら?と思いました
なんとかDLLの中身をみたいと思い、「Visual Studio 6.0」の中を探してみると
「Dependency Walker」というツールがあり、関数定義文を見ることができました
PowerBuilderの外部関数定義で、「alias \"_HplsUploadStart@12\"」と記述し、
実行してみると・・・使いたい関数全て、正常終了で無事PGが完了しました
Takaさん、本当にありがとうございました。
それと、あすかちゃんの父 さんのHPも本当に役に立ちました。あの変数の対応表は
API初心者の私にとってとてもわかりやすかったです
ありがとうございました。この場を借りてお礼申し上げます
APIレベルがちょっとだけステップアップしました。
ふー
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS Windows95
DBMS Oracle SQL*Net 8
Browser InternetExplorer5.X
Server SoftWare
OS Windows NT 4.0
DBMS Oracle 8.0
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.