現在PCMCIAカードを使って、シリアル通信のプログラムを作成中です。
市販品なので、サンプルプログラムがあり、
サンプルの中にはシリアル通信するための関数(C言語)が多々あります。
その関数を呼び出すときにどれもデバイスハンドルのポインタ情報が入っている変数を
含んでいるようです。
(コンピュータの内部には詳しくなく、日本語がおかしいかもしれません)
例えば、aがデバイスハンドルのポインタで関数がFだとすると、メインでは
F(a)
となっております。
このデバイスハンドルというのはどういうものなのでしょうか?
またこの場合のデバイスハンドルはどのように調べれば値がわかるのでしょうか?
(Windowsのシステム情報を見れば分かる等)
もし情報が足りなければ補足いたします。
よろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
> このデバイスハンドルというのはどういうものなのでしょうか?
Windows が管理しているリソース (この場合はデバイス) 情報へのポインタのようなものです.
ハンドル (アスキー デジタル用語辞典)
http://yougo.ascii24.com/gh/15/001551.html
アプリケーションは直接その情報にアクセスするのではなく,
Windows API 関数にハンドルを渡すことでアクセスします.
> またこの場合のデバイスハンドルはどのように調べれば値がわかるのでしょうか?
ハンドルは WinNT.h の中で,次のように定義されています.
typedef void *HANDLE;
ですから,アプリケーションがハンドルを普通のポインタのように参照して
デバイス情報にアクセスすることはできませんし,してはいけません.
上に書いたように,デバイス情報を得る場合には専用の API 関数を使用してください.
アプリケーションがハンドルの値を調べるのは,それが有効か否か
(INVALID_HANDLE_VALUE (ハンドルの種類によっては NULL) と等しいか否か)
を調べるだけにしてください.
MSDN がインストールされていれば,COM ポート用に関連する API の一覧は,
"Communications Functions" で検索すれば出てきます.
これらを用いると,COM ポートの情報を取得・設定したり,制御したりすることができます.
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Windows 10 数年前からWindows10 の Update ができないです。なぜですか? 7 2022/11/09 06:03
- Wi-Fi・無線LAN PCWi-Fiの設定方法がわからなくて困っています。 4 2022/12/28 18:30
- Android(アンドロイド) スマートフォンを盗まれた場合に備えて 3 2023/07/15 15:14
- C言語・C++・C# いまc言語を独学で勉強しているのですがいまいちわかりません。 https://monozukuri- 3 2023/07/06 18:59
- Android(アンドロイド) GooglePixel6aで写真が勝手に消えた 5 2023/04/05 15:48
- docomo(ドコモ) SIMロック、またはSIMロック解除の仕組みをおしえてください。 5 2022/04/25 10:57
- その他(ゲーム) Steam版(PC)アーマードコア6の購入を検討しているのですが動作環境が合っているか分かりません。 4 2023/08/24 18:43
- YouTube SMS認証が出来なくて乗っ取られたアカウントを取り戻せません。 2 2023/04/02 15:29
- その他(セキュリティ) スマホアプリのトラッキング、個人情報について。ITに詳しい人回答お願いします。 2 2023/03/20 02:54
- ハッキング・フィッシング詐欺 スマホアプリのトラッキング 個人情報について 5 2023/03/31 08:16
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
セグメントエラー
-
init関数の意味
-
C言語のポインタに直接アドレス...
-
LPSTR型の初期化について
-
fopne で失敗する原因
-
Run-Time Check Failure #3とい...
-
NULLとブランクの違い
-
str[i] は *(str + i) と同義で...
-
エラーの意味
-
ハンドル、アドレス、ポインタ...
-
型変換について
-
参照型で受け取った引数をポイ...
-
[C言語] NULLは必ず0(番地)です...
-
C言語の関数と配列に関する質問
-
IStream / VBA
-
どうしてエラーになるかわかり...
-
DelphiでCreateProcessがうまく...
-
配列アドレスの減算
-
C言語でのconstを返す関数
-
Voidポインタで受け取った変数...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
セグメントエラー
-
C言語のポインタに直接アドレス...
-
init関数の意味
-
戻り値で構造体を返すことは可...
-
fopne で失敗する原因
-
C言語の関数と配列に関する質問
-
Run-Time Check Failure #3とい...
-
LPSTR型の初期化について
-
ExcelVBAでのkernel32(64bit)
-
main(int argc,char **argv[])...
-
アプリを32bitから64bit移行
-
連結リスト 要素の入れ替え
-
ハンドルはポインタか
-
Cで作成したDLL関数をVBから呼...
-
C言語でのconstを返す関数
-
NULLとブランクの違い
-
エラーの意味
-
DLL<->VB間での受け渡し(文字...
-
ハンドル、アドレス、ポインタ...
-
【C言語】戻り値が構造体の関数
おすすめ情報