DOBON.NETプログラミング掲示板過去ログ
WinAPIのDLLを扱う
題名: WinAPIのDLLを扱う
著者: son
日時: 2006/07/28 21:28:44
ID: 16887
この記事の返信元:
(なし)
この記事への返信:
[16888]
Re[1]: WinAPIのDLLを扱う
Hongliang
2006/07/28 21:44:36
ツリーを表示
分類:[.NET]
C#からWinAPI関数を扱いたいのですが
[DllImport("user32.dll", CharSet = CharSet.Auto)]
public static extern int SetScrollInfo(int hWnd, int fnBar,
LPSCROLLINFO lpsi, bool fRedraw);
でSetScrollInfo関数を使いたいのですが
型または名前空間名 'LPSCROLLINFO' が見つかりませんでした。
using ディレクティブまたはアセンブリ参照が不足しています。
のようにエラーがでてしまいます
何がいけないのでしょうか?
それとuser32.dllにはどのようなWinAPI関数が定義されているかを
調べるにはどうすればいいでしょうか?
Framework2.0です。
題名: Re[1]: WinAPIのDLLを扱う
著者: Hongliang
URL:
http://hongliang.seesaa.net/
日時: 2006/07/28 21:44:36
ID: 16888
この記事の返信元:
[16887]
WinAPIのDLLを扱う
son
2006/07/28 21:28:44
この記事への返信:
(なし)
ツリーを表示
Win32API の構造体は C# の方で改めて定義してあげなければなりません。
Paltform SDK のヘッダファイルとか見て翻訳しましょう。
PInvoke.net とかに既にあるかも知れません。
LP と型名の先頭に付いているのはポインタを表しています。この場合なら SCROLLINFO 構造体のポインタって意味ですね。
で、ポインタを扱う場合などそれなりにお約束があったりするので、Win32API を扱うのなら最低でも以下のツリーを読破しましょう。
http://msdn2.microsoft.com/ja-jp/library/fzhhdwae.aspx
> それとuser32.dllにはどのようなWinAPI関数が定義されているかを
調べるにはどうすればいいでしょうか?
これは順序が逆だと思います。
ある DLL にどんな関数があるか、ではなく、何をしたいかがまずあって、それを実現する関数がどの DLL にあるか、を考えるべきです。
DOBON.NET
|
プログラミング道
|
プログラミング掲示板
C#からWinAPI関数を扱いたいのですが
[DllImport("user32.dll", CharSet = CharSet.Auto)]
public static extern int SetScrollInfo(int hWnd, int fnBar,
LPSCROLLINFO lpsi, bool fRedraw);
でSetScrollInfo関数を使いたいのですが
型または名前空間名 'LPSCROLLINFO' が見つかりませんでした。
using ディレクティブまたはアセンブリ参照が不足しています。
のようにエラーがでてしまいます
何がいけないのでしょうか?
それとuser32.dllにはどのようなWinAPI関数が定義されているかを
調べるにはどうすればいいでしょうか?
Framework2.0です。