common.lib


グローバル情報取得

Global_GetInformation
グローバル情報を取得する。
この関数は、プログラム起動直後に1度呼び出すだけで良い。

VOID WINAPI Global_GetInformation();

Global::GetInformation
グローバルクラスを初期化する。
Global_GetInformation内で呼ばれるので特に必要は無い。

VOID Global::GetInformation;

Global::GetInstance
グローバルクラスを初期化する。
Global_GetInformation内で呼ばれるので特に必要は無い。

VOID Global::GetInformation;

Global::GetInstance
アプリケーションのインスタンスハンドルを取得する。

HINSTANCE Global::GetInstance();

Global::LoadBitmap
ビットマップリソースをロードする。

HBITMAP Global::LoadBitmap(LPSTR name);
LPSTR name
リソース名

Global::LoadIcon
アイコンリソースをロードする。

HICON Global::LoadIcon(LPSTR name);
LPSTR name
リソース名

Global::LoadMenu
メニューリソースをロードする。

HMENU Global::LoadMenu(LPSTR name);
LPSTR name
リソース名

Global::LoadCursor
カーソルリソースをロードする。

HCURSOR Global::LoadCursor(LPSTR name);
LPSTR name
リソース名

Global::LoadString
文字列リソースをロードする。

int Global::LoadString(UINT id,LPSTR buf,int bufmax);
LPSTR name
リソース名
LPSTR buf
格納先バッファ
int bufmax
バッファの長さ

Global::GetExePath
起動アプリケーションのパスを取得する。

LPSTR Global::GetExePath();

Global::GetCurPath
起動アプリケーションのカレントパスを取得する。

LPSTR Global::GetCurPath();

Global::GetAppName
起動アプリケーションのファイル名を取得する。

LPSTR Global::GetAppName();

Global::GetAppNameOnly
起動アプリケーションの拡張子(.exe)を含まないファイル名を取得する。

LPSTR Global::GetAppNameOnly();


OSバージョン

Global_OsVersionInfo
Global_GetInformation関数実行後、OSバージョンがこの変数に格納される。
OSバージョンの取得は、以下のマクロが使用できる。
BOOL IsWindowsNT();
WindowsNTのチェック

BOOL IsWindows();
Windows(95/98)のチェック

BOOL IsWindows_NT40_Later();
WindowsNT4.0以降(Windows2000を含む)であるかをチェック

BOOL IsWindows_2000_Later();
Windows2000以降であるかをチェック

BOOL IsWindows_95_Later();
Windows95以降であるかをチェック

BOOL IsWindows_98_Later();
Windows98以降であるかをチェック
OSVERSIONINFO Global_OsVersionInfo;

Global_GetSystemName
Global_GetInformation関数実行後、OSの名前がこの変数に格納される。

LPSTR Global_GetSystemName();


MMX

IsMMX
Global_GetInformation関数実行後、MMXサポートが可能かどうかの情報が格納される。

BOOL IsMMX();


ウィンドゥメッセージ

TranslateMessage2
Windows95/98/NT4/2000でのホイールマウスの使用を可能にした、TranslateMessageの拡張版。
Global_GetInformationを呼び出すことで使用できるようになる。

UINT WINAPI TranslateMessage2(MSG *msg);
MSG *msg
通知メッセージを格納した構造体

DoEvents
Windowsメッセージ処理を行う。
Windows95/98/NT4/2000でのホイールマウスの使用を可能にしており、ウィンドゥが破棄されるとFALSEが返るようになっている。
Global_GetInformationを呼び出すことで使用できるようになる。

BOOL WINAPI DoEvents(HWND hwnd);
HWND hwnd
ウィンドゥハンドル

WaitEvent
Windowsメッセージ処理を行う。
DoEventsとの違いはDoEventsがPeekMessage呼び出しに対して、WaitEventがGetMessage呼び出しであるという事。
こっちの関数は通知メッセージが無い時は処理を待機するので、リアルタイム処理を必要としないGUI向けと言える。

BOOL WINAPI WaitEvent(HWND hwnd);
HWND hwnd
ウィンドゥハンドル


グラフィックス

GetBpp
現在使用しているスクリーンモードの色数を取得する。

int WINAPI GetBpp();

GetVRefresh
現在使用しているスクリーンモードのリフレッシュレートを取得する。
WindowsNTでのみ正しい値を返し、Windows95/98では0が返るようになっている。

int WINAPI GetVRefresh();

CreateDIBSection2
CreateDIBSectionの超簡易版。

HBITMAP WINAPI CreateDIBSection2(DWORD width,DWORD height,DWORD bpp,LPVOID *bits,HANDLE hsec = NULL,DWORD offset = 0);
DWORD width
ビットマップの幅

DWORD height
ビットマップの高さ

DWORD bpp
色数(Bit per Count)

LPVOID *bits
DIBSectionの先頭ポインタを取得するバッファ

HANDLE hsec
ファイルマッピングハンドル。通常はNULL

DWORD offset
ファイルマッピングの先頭位置。通常は0

DeleteDIBSection
DIBSectionを開放する。
通常のDeleteObjectではファイルマッピングが開放できないので、それを考慮したもの。

void WINAPI DeleteDIBSection(HBITMAP handle);
HBITMAP handle
DIBSectionハンドル

CreateFont2
CreateFontの超簡易版。固定ピッチフォントを生成する。


HFONT WINAPI CreateFont2(int size,LPSTR facename,BOOL bold = FALSE,BOOL italic = FALSE,BOOL uline = FALSE);
int size
フォントの大きさ

LPSTR facename
フォントの名前。固定ピッチフォントのみ有効

BOOL bold
太字にする

BOOL italic
イタリック描画にする

BOOL uline
アンダーライン描画にする

SelectFont
SelectObjectのフォント版。
ハンドルの関連付けに加えて、透過描画と描画カラーを指定できるようにする。


HFONT WINAPI SelectFont(HDC dc,HFONT font,COLORREF col = RGB(0,0,0));
HDC dc
デバイスコンテキストハンドル

HFONT font
フォントハンドル

COLORREF col
描画カラー。RGB(red,green,blue)で指定する


メモリ管理クラス

CMem::CMem
メモリ管理クラスを初期化する。

CMem::CMem();

CMem::CMem(DWORD size);
DWORD size
確保したいサイズ(バイト)

CMem::Alloc
メモリを確保する。

LPVOID CMem::Alloc(DWORD size);
DWORD size
確保したいサイズ(バイト)

CMem::Free
メモリを開放する。

VOID CMem::Free();

CMem::GetPtr
確保されているメモリの先頭ポインタを取得する。

LPVOID CMem::GetPtr();

CMem::LPVOID
確保されているメモリの先頭ポインタを取得する。

operator CMem::LPVOID();

CMem::GetSize
確保されているメモリのサイズを取得する。

DWORD CMem::GetSize();


ファイル操作

FindFile
ファイルの有無をチェックする。

BOOL WINAPI FindFile(LPSTR filename);
LPSTR filename
チェックしたいファイルのフルパス名

GetDiskFreeSpace2
ディスクの空き容量を取得する。

DWORDLONG WINAPI GetDiskFreeSpace2(LPSTR disk);
LPSTR disk
チェックしたいドライブのパス名


ファイル検索クラス

CFindFile::Find
ファイル検索を行う。
ファイルが存在しないもしくは検索に失敗した時は、呼び出し後にNULLが返る。

WIN32_FIND_DATA *CFindFile::Find(LPSTR filename);
LPSTR filename
検索を行いたいファイルパス及びワイルドカード文字列

CFindFile::Next
ファイル検索を行う。
Firstの呼出し後は、このメンバで2個目以降の検索を行う。
ファイルが存在しないもしくは検索に失敗した時は、呼び出し後にNULLが返る。

WIN32_FIND_DATA *CFindFile::Next();

CFindFile::Close
ファイル検索を終了する。
この呼び出しは必要では無いが、明示したいときのみ呼び出すと良い。

VOID CFindFile::Close();

CFindFile::GetFileName
検索したファイルの名前を取得する。
取得される情報は、First,NextでNULL以外の値が返っている直後にのみ有効となる。

LPSTR CFindFile::GetFileName();

CFindFile::GetAttributes
検索したファイルのアトリビュートを取得する。
取得される情報は、First,NextでNULL以外の値が返っている直後にのみ有効となる。
取得される値は以下の通り。
FILE_ATTRIBUTE_READONLY
FILE_ATTRIBUTE_HIDDEN
FILE_ATTRIBUTE_SYSTEM
FILE_ATTRIBUTE_DIRECTORY
FILE_ATTRIBUTE_ARCHIVE
FILE_ATTRIBUTE_ENCRYPTED
FILE_ATTRIBUTE_NORMAL
FILE_ATTRIBUTE_TEMPORARY
FILE_ATTRIBUTE_SPARSE_FILE
FILE_ATTRIBUTE_REPARSE_POINT
FILE_ATTRIBUTE_COMPRESSED
FILE_ATTRIBUTE_OFFLINE
FILE_ATTRIBUTE_NOT_CONTENT_INDEXED
DWORD CFindFile::GetAttributes();

CFindFile::GetSize
検索したファイルのファイルサイズを取得する。

DWORD CFindFile::GetSize();


ファイル操作クラス

CFile::CFile
クラスの初期化を行う。
ファイルを指定した場合、その場でファイルをオープンする。

CFile::CFile();

CFile::CFile(LPSTR filename,CFILE_FLAG flag = READ);
LPSTR filename
ファイル名

CFILE_FLAG flag
オープンモード。以下のいずれかが指定される。
READ,WRITE,READ_WRITE,WRITE_READ,CREATE,CREATE_READ

CFile::HANDLE
ファイルハンドルを取得する。

operator CFile::HANDLE();

CFile::Open
ファイルをオープンする。

BOOL CFile::Open(LPSTR filename,CFILE_FLAG flag = READ);
LPSTR filename
ファイル名

CFILE_FLAG flag
オープンモード。以下のいずれかが指定される
READ,WRITE,READ_WRITE,WRITE_READ,CREATE,CREATE_READ

CFile::Create
既存のファイルは削除し、新規ファイルとしてオープンする。

BOOL CFile::Create(LPSTR filename);
LPSTR filename
ファイル名

CFile::Close
ファイルをクローズする。

VOID CFile::Close();

CFile::GetSize
オープンされたファイルのサイズを取得する。

DWORD CFile::GetSize();

CFile::Seek
オープンされたファイルのアクセス位置を変更する。

DWORD CFile::Seek(LONG move,DWORD method = FILE_BEGIN);
LONG move
相対的なファイル移動サイズ

DWORD method
移動メソッド。以下のいずれかが指定される
FILE_BEGIN,FILE_END,FILE_CURRENT

CFile::Begin
オープンされたファイルのアクセス位置を先頭にする。

DWORD CFile::Begin(LONG move = 0);
LONG move
先頭からのファイル移動サイズ

CFile::End
オープンされたファイルのアクセス位置を最後にする。

DWORD CFile::End(LONG move = 0);
LONG move
最後からのファイル移動サイズ

CFile::Read
ファイルを読み込む。呼出し後は読み込んだバッファサイズが返る。

DWORD CFile::Read(LPVOID buf,DWORD size);
LPVOID buf
格納バッファ

DWORD size
読み込みサイズ

CFile::Write
ファイルに書き出す。呼出し後は書き出したバッファサイズが返る。

DWORD CFile::Write(LPVOID buf,DWORD size);
LPVOID buf
対象バッファ

DWORD size
書き出しサイズ


トップレベルウィンドゥ列挙クラス

CEnumWindows::Enum
ウィンドゥ列挙を開始する。

BOOL CEnumWindows::Enum(BOOL all = FALSE);
BOOL all
全てのウィンドゥを取得するかどうか。
FALSEにすると、タスクバーに表示されるようなウィンドゥのみの列挙となる。

CEnumWindows::GetCount
列挙されたウィンドゥ数を取得する。

DWORD CEnumWindows::GetCount();

CEnumWindows::GetItem
指定されたウィンドゥハンドルを取得する。

HWND CEnumWindows::GetItem(DWORD n);
DWORD n
取得したいウィンドゥハンドルの位置


二重起動防止クラス

CUnduplicationApp::Regist
二重起動を抑制したいアプリケーションを登録する。
既に起動されているアプリケーションがある場合、呼出し後にFALSEが返る。

BOOL CUnduplicationApp::Regist(LPSTR exename,BOOL show);
LPSTR exename
アプリケーション名

BOOL show
既に起動されているアプリケーションをフォアグランド化する


ウィンドゥ操作関数

ForegroundWindow
ウィンドゥをフォアグランド化する。
WindowsAPIにあるSetForregroundWindowとは違い、ウィンドゥをトップレベルに持ってくる事ができる。

BOOL WINAPI ForegroundWindow(HWND hwnd);
HWND hwnd
ウィンドゥハンドル

ResizeWindow
ウィンドゥのサイズを変更する。

BOOL WINAPI ResizeWindow(HWND hwnd,LONG width,LONG height,BOOL redraw = TRUE);
HWND hwnd
ウィンドゥハンドル

LONG width
ウィンドゥの幅

LONG height
ウィンドゥの高さ

BOOL redraw
サイズ変更後、指定ウィンドゥにWM_PAINTを送る


ディスプレイ解像度操作クラス

CChangeDisplay::CChangeDisplay
クラスの初期化を行う。

CChangeDisplay::CChangeDisplay();

CChangeDisplay::CChangeDisplay(LONG width,LONG height);
LONG width
スクリーン幅

LONG height
スクリーン高さ

CChangeDisplay::Change
スクリーンモードを変更する。

BOOL CChangeDisplay::Change(DWORD width,DWORD height);
LONG width
スクリーン幅

LONG height
スクリーン高さ

CChangeDisplay::Restore
スクリーンモードを元に戻す。

BOOL CChangeDisplay::Restore();


アプリケーション列挙クラス

CEnumApplication::First
列挙を開始する。
呼び出しが終了もしくは失敗した場合、呼出し後にNULLが返る。

PROCESSENTRY32 *CEnumApplication::First();

CEnumApplication::Next
2回目以降の列挙を行う。
呼び出しが終了もしくは失敗した場合、呼出し後にNULLが返る。

PROCESSENTRY32 *CEnumApplication::Next();

CEnumApplication::GetExeFile
First,Nextが成功したときの、列挙しているファイル名を取得する。
LPSTR CEnumApplication::GetExeFile();

CEnumApplication::GetProcessID
First,Nextが成功したときの、列挙しているプロセスIDを取得する。
DWORD CEnumApplication::GetProcessID();

CEnumApplication::GetModuleID
First,Nextが成功したときの、列挙しているモジュールIDを取得する。
DWORD CEnumApplication::GetModuleID();


IME制御

HideIME
IME(FEP)の表示を消去する。

HideIME();

ShowIME
IME(FEP)を表示する。

ShowIME();


フォント列挙クラス

CEnumFont::Enum
指定されたデバイスコンテキストで使用できるフォントを列挙する。

BOOL CEnumFont::Enum(HDC dc);
HDC dc
デバイスコンテキストハンドル。ディスプレイ上ならGetDC(0)で十分。

CEnumFont::GetCount
列挙されたフォントの数を取得する。

DWORD CEnumFont::GetCount();

CEnumFont::GetItem
列挙されたフォントのデータを取得する。

CENUMFONT_STRUCT *CEnumFont::GetItem(DWORD n);
DWORD n
取得したいフォントの位置

CEnumFont::GetFaceName
列挙されたフォントの名前を取得する。

LPSTR CEnumFont::GetFaceName(DWORD n);
DWORD n
取得したいフォントの位置

CEnumFont::GetLogFont
列挙されたフォントの情報を取得する。
CreateFontIndirectで使用できる構造体を返す。

LOGFONT *CEnumFont::GetLogFont(DWORD n);
DWORD n
取得したいフォントの位置


マルチメディア

CDTrayOpen
CDトレイを開く。

BOOL WINAPI CDTrayOpen(BOOL open = TRUE,LPSTR drive = NULL);
BOOL open
TRUEにするとCDトレイを開き、FALSEにすると閉じる

LPSTR drive
ドライブ名。q: という風にドライブ文字で指定する
NULLを指定した場合、CD演奏が可能になっているデバイスに対応する。

CDTrayClose
CDトレイを閉じる。

BOOL WINAPI CDTrayClose(LPSTR drive = NULL);
LPSTR drive
ドライブ名。q: という風にドライブ文字で指定する
NULLを指定した場合、CD演奏が可能になっているデバイスに対応する。


MCI基本クラス

CMci::GetError
エラーコードを取得する。

MCIERROR CMci::GetError();

CMci::MCIDEVICEID
オープンしたMCIデバイスのIDを取得する。

operator CMci::MCIDEVICEID();

CMci::Open
MCIデバイスをオープンする。

BOOL CMci::Open(HWND hwnd,LPSTR device,LPSTR element);
HWND hwnd
コールバックするウィンドゥのハンドル
通常はNULLで十分

LPSTR device
オープンするデバイスの名前。以下のような文字列を指定する。
cdaudio
CDオーディオ

sequencer
MIDIシーケンサ

waveaudio
WAVEオーディオ
LPSTR element
エレメント名。使用しないときはNULLを指定する。
CDのときはNULL、MIDI,WAVEのときは演奏したいファイルパスを指定する。

CMci::Close
MCIデバイスをクローズする。

VOID CMci::Close(HWND hwnd);
HWND hwnd
コールバックするウィンドゥのハンドル
通常はNULLで十分

CMci::Play
演奏を行う。

BOOL CMci::Play(HWND hwnd);
HWND hwnd
コールバックするウィンドゥのハンドル
NULLにすると、演奏が終了するまで処理は中断される
BOOL CMci::Play(HWND hwnd,DWORD from,DWORD to);
HWND hwnd
コールバックするウィンドゥのハンドル
NULLにすると、演奏が終了するまで処理は中断される

DWORD from
演奏開始位置

DWORD to
演奏終了位置

CMci::Stop
演奏を停止する。

BOOL CMci::Stop(HWND hwnd);
HWND hwnd
コールバックするウィンドゥのハンドル。通常はNULLで十分

CMci::Pause
演奏を一時中断する。

BOOL CMci::Pause(HWND hwnd);
HWND hwnd
コールバックするウィンドゥのハンドル。通常はNULLで十分


CD-DA演奏クラス(CMci派生クラス)

CMciCDDA::Open
CDデバイスをオープンする。

BOOL CMciCDDA::Open();

CMciCDDA::Close
CDデバイスをクローズする。

BOOL CMciCDDA::Close();

CMciCDDA::GetTrackCount
CDに収録されているトラック数を取得する。

DWORD CMciCDDA::GetTrackCount();

CMciCDDA::GetTotalTimes
CDに収録されている時間を秒単位で取得する。

DWORD CMciCDDA::GetTotalTimes();

CMciCDDA::Play
CDを演奏する。

BOOL CMciCDDA::Play(HWND hwnd,DWORD from,DWORD to);
HWND hwnd
コールバックするウィンドゥのハンドル
NULLにすると、演奏が終了するまで処理は中断される

DWORD from
演奏開始トラック

DWORD to
演奏終了トラック。1曲で終わらせるときはfromと同じ値にする

CMciCDDA::Loop
直前にPlayした内容を繰り返し演奏する。
コールバック(MM_MCINOTIFYメッセージ)から呼び出す為のメンバ関数。

BOOL CMciCDDA::Loop(HWND hwnd,WPARAM wparam,LPARAM lparam);
HWND hwnd
ウィンドゥのハンドル

WPARAM wparam
MM_MCINOTIFYのWPARAMパラメータ

LPARAM lparam
MM_MCINOTIFYのLPARAMパラメータ


ミキサークラス

CMixer::Open
オーディオミキサーをオープンする。
コールバックを指定すると、MM_MIXM_CONTROL_CHANGE,MM_MIXM_LINE_CHANGEの2つが通知メッセージとして送られるようになる。

BOOL CMixer::Open(HINSTANCE inst = NULL,HWND hwnd = NULL);
HINSTANCE inst
コールバックするウィンドゥのインスタンスハンドル

HWND hwnd
コールバックするウィンドゥのハンドル

CMixer::Close
オープン前のボリュームに戻し、オーディオミキサーをクローズする。

VOID CMixer::Close();

CMixer::Restore
オープン前のボリュームに戻す。

VOID CMixer::Restore();

CMixer::IsOK
指定されたデバイスが使えるか調べる。

BOOL CMixer::IsOK(UINT dev);
UINT dev
チェックするデバイス。指定できるのは以下の通り
CMIXER_MASTER
マスターボリューム

CMIXER_CD
CDプレーヤー

CMIXER_MIDI
MIDIシーケンサ

CMIXER_WAVE
WAVEオーディオ

CMixer::SetBaseVolume
ボリュームを変更し、この値をベースボリューム(MAXIMUM)値にする。

VOID CMixer::SetBaseVolume(UINT dev,DWORD num);
UINT dev
変更するデバイス。指定できるのは以下の通り
CMIXER_MASTER,CMIXER_CD,CMIXER_MIDI,CMIXER_WAVE

DWORD num
ボリューム値(0〜1000)

CMixer::GetBaseVolume
ベースボリューム(MAXIMUM)値を取得する。
他チャンネル(L,R)でのボリューム値の平均値なので、実はあまり正確な値では無い。

DWORD CMixer::GetBaseVolume(UINT dev);
UINT dev
変更するデバイス。指定できるのは以下の通り
CMIXER_MASTER,CMIXER_CD,CMIXER_MIDI,CMIXER_WAVE

CMixer::ChangeBaseVolume
現在のボリューム値を取得し、これをベースボリューム(MAXIMUM)値にする。

VOID CMixer::ChangeBaseVolume();

CMixer::SetVolume
ベースボリューム(MAXIMUM)を使ってボリュームを変更する。
このメンバ関数を使う事で、起動時のボリューム値を最大ボリュームとしたフェード制御を行う事ができる。

DWORD CMixer::SetVolume(UINT dev,DWORD num);
UINT dev
変更するデバイス。指定できるのは以下の通り
CMIXER_MASTER,CMIXER_CD,CMIXER_MIDI,CMIXER_WAVE

DWORD num
論理ボリューム値(0〜1000)

CMixer::GetVolume
論理ボリューム値を取得する。

DWORD CMixer::GetVolume(UINT dev);
UINT dev
変更するデバイス。指定できるのは以下の通り
CMIXER_MASTER,CMIXER_CD,CMIXER_MIDI,CMIXER_WAVE


タスクトレイクラス

CTaskTray::Create
タスクトレイに表示するアイコンを生成する。

BOOL CTaskTray::Create(HWND hwnd,HICON icon,LPSTR text,UINT cb = 0);
HWND hwnd
親ウィンドゥのハンドル

HICON icon
アイコンハンドル

LPSTR text
メッセージ文字列

UINT cb
コールバックメッセージ
WM_USER + 1 と定義すれば他のメッセージと混同はしない

コールバックメッセージの構文
UINT uID = (UINT)wparam;
UINT uMouseMsg = (UINT)lparam; // WM_LBUTTONDOWN,WM_RBUTTONDOWN

CTaskTray::Show
タスクトレイに表示する。

BOOL CTaskTray::Show();

CTaskTray::Hide
タスクトレイから表示を消す。

BOOL CTaskTray::Hide();

CTaskTray::Modify
タスクトレイの表示を更新する。

BOOL CTaskTray::Modify();

CTaskTray::SetIcon
タスクトレイのアイコンを変更する。

HICON CTaskTray::SetIcon(HICON icon,BOOL modify = TRUE);
HICON icon
アイコンハンドル

BOOL modify
今すぐ更新する

CTaskTray::SetText
タスクトレイの文字列を変更する。

VOID CTaskTray::SetText(LPSTR text,BOOL modify = TRUE);
LPSTR text
文字列

BOOL modify
今すぐ更新する

CTaskTray::SetCallback
タスクトレイのコールバックメッセージを変更する。

UINT CTaskTray::SetCallback(UINT cb,BOOL modify = TRUE);
UINT cb
コールバックメッセージ

BOOL modify
今すぐ更新する


レジストリクラス

CRegistry::CRegistry
レジストリクラスを初期化する。

CRegistry::CRegistry();

CRegistry::CRegistry(HKEY key,LPSTR subkey);
HKEY key
オープンされているキー。もしくは以下の値
HKEY_CLASSES_ROOT,HKEY_CURRENT_USER,HKEY_LOCAL_MACHINE,HKEY_USERS

LPSTR subkey
オープンするサブキー

CRegistry::Open
レジストリをオープンする。

BOOL CRegistry::Open(HKEY key,LPSTR subkey);
HKEY key
オープンされているキー。もしくは以下の値
HKEY_CLASSES_ROOT,HKEY_CURRENT_USER,HKEY_LOCAL_MACHINE,HKEY_USERS

LPSTR subkey
オープンするサブキー

CRegistry::Close
レジストリをクローズする。

VOID CRegistry::Close();

CRegistry::HKEY
レジストリキーハンドルを取得する。

operator CRegistry::HKEY();

CRegistry::GetString
文字列を取得する。

LPSTR CRegistry::GetString(LPSTR name,LPSTR def,LPSTR buf,DWORD bufsize);
LPSTR name
取得する文字列の名前

LPSTR def
デフォルト文字列。取得に失敗したとき、この値が格納される

LPSTR buf
格納バッファ

DWORD bufsize
格納バッファのサイズ

CRegistry::SetString
文字列を設定する。

BOOL CRegistry::SetString(LPSTR name,LPSTR buf,DWORD size);
LPSTR name
取得する文字列の名前

LPSTR buf
文字列

DWORD size
文字列のサイズ。通常はlstrlen(buf)で十分

CRegistry::GetDword
DWORD値を取得する。

DWORD CRegistry::GetDword(LPSTR name,DWORD def);
LPSTR name
取得するDWORD値の名前

DWORD def
デフォルトDWORD値。取得に失敗したとき、この値が返値となる

CRegistry::SetDword
DWORD値を設定する。

BOOL CRegistry::SetDword(LPSTR name,DWORD num);
LPSTR name
設定するDWORD値の名前

DWORD num
DWORD値


初期化ファイルクラス(iniファイル)

CIniFile::CIniFile
初期化ファイルクラスを初期化する。
ファイルを指定すると、その場でファイル名を設定する。

CIniFile::CIniFile(LPSTR filename = NULL,BOOL current = TRUE);
LPSTR filename
使用する初期化ファイルの名前

BOOL current
初期化ファイルの位置を設定する
TRUEのときは起動アプリケーションのあるフォルダ、FALSEのときはWindowsもしくはWinNTフォルダにファイルが置かれるようになる

CIniFile::Open
初期化ファイルクラスを初期化する。

VOID CIniFile::Open(LPSTR filename,BOOL current = TRUE);
LPSTR filename
使用する初期化ファイルの名前

BOOL current
初期化ファイルの位置を設定する
TRUEのときは起動アプリケーションのあるフォルダ、FALSEのときはWindowsもしくはWinNTフォルダにファイルが置かれるようになる

CIniFile::GetString
文字列を取得する。

LPSTR CIniFile::GetString(LPSTR section,LPSTR name,LPSTR def,LPSTR buf,DWORD bufsize);
LPSTR section
セクション名
初期化ファイル内では "[.....]" という文字列となっている部分

LPSTR name
値の名前

LPSTR def
デフォルト文字列。取得に失敗すると、この値が格納される

LPSTR buf
格納バッファ

DWORD bufsize
格納バッファのサイズ

CIniFile::SetString
文字列を設定する。

BOOL CIniFile::SetString(LPSTR section,LPSTR name,LPSTR buf);
LPSTR section
セクション名
初期化ファイル内では "[.....]" という文字列となっている部分

LPSTR name
値の名前

LPSTR buf
文字列

CIniFile::GetInt
Int値を取得する。

int CIniFile::GetInt(LPSTR section,LPSTR name,int def);
LPSTR section
セクション名
初期化ファイル内では "[.....]" という文字列となっている部分

LPSTR name
値の名前

int def
デフォルト値。取得に失敗するとこの値が返る

CIniFile::SetInt
Int値を設定する。

BOOL CIniFile::SetInt(LPSTR section,LPSTR name,int num);
LPSTR section
セクション名
初期化ファイル内では "[.....]" という文字列となっている部分

LPSTR name
値の名前

int num
設定値


ジョイスティッククラス

CJoyStick::Create
ジョイスティックを初期化する。

BOOL CJoyStick::Create(UINT id);
UINT id
ジョイスティックのID
JOYSTICKID1,JOYSTICKID2の2つのうちどれか

CJoyStick::Capture
ジョイスティックの情報を取得する。
このメンバを呼び出した後、以下のメンバで各情報を取得する事が可能になる。
LONG CJoyStick::GetXPos();
アナログX値。ニュートラルを0として値が取得される

LONG CJoyStick::GetYPos();
アナログY値。ニュートラルを0として値が取得される

BOOL CJoyStick::Left();
左キーの取得

BOOL CJoyStick::Right();
右キーの取得

BOOL CJoyStick::Up();
上キーの取得

BOOL CJoyStick::Down();
下キーの取得

UINT CJoyStick::Trig1();
トリガ1の取得

UINT CJoyStick::Trig2();
トリガ2の取得

UINT CJoyStick::Trig3();
トリガ3の取得

UINT CJoyStick::Trig4();
トリガ4の取得

UINT CJoyStick::Trig5();
トリガ5の取得

UINT CJoyStick::Trig6();
トリガ6の取得
BOOL CJoyStick::Capture();


SUSIEプラグイン呼び出しクラス

CSusie00in::Open
SUSIEプラグイン(00IN)をオープンする。
オープン後、以下のメンバ関数が使えるようになる。
int CSusie00in::GetPluginInfo(int no,LPSTR buf,int buflen);
int CSusie00in::IsSuppoted(LPSTR filename,DWORD dw);
int CSusie00in::GetPictureInfo(LPSTR buf,long len,unsigned int flag,LPSPI_PICTUREINFO info);
int CSusie00in::GetPicture(LPSTR buf,long len,unsigned int flag,HLOCAL *info,HLOCAL *bm,LPSPI_CALLBACK cb,long ldata);
int CSusie00in::GetPreview(LPSTR buf,long len,unsigned int flag,HLOCAL *info,HLOCAL *bm,LPSPI_CALLBACK cb,long ldata);
int CSusie00in::ConfigrationDlg(HWND hwnd,int func);
各メンバ関数は未サポートの場合は-1を返すようになっている。

BOOL CSusie00in::Open(LPSTR plugin);
LPSTR plugin
プラグイン名

CSusie00in::Close
SUSIEプラグイン(00IN)をクローズする。

VOID CSusie00in::Close();

CSusie00am::Open
SUSIEプラグイン(00AM)をオープンする。
オープン後、以下のメンバ関数が使えるようになる。
int CSusie00am::GetPluginInfo(int no,LPSTR buf,int buflen);
int CSusie00am::IsSuppoted(LPSTR filename,DWORD dw);
int CSusie00am::GetArchiveIndo(LPSTR buf,long len,unsigned int flag,HLOCAL *info);
int CSusie00am::GetFileInfo(LPSTR buf,long len,LPSTR filename,unsigned int flag,LPSPI_ARCHIVEINFO info);
int CSusie00am::GetFile(LPSTR src,long len,LPSTR dest,unsigned int flag,LPSPI_CALLBACK cb,long ldata);
int CSusie00am::ConfigrationDlg(HWND hwnd,int func);
各メンバ関数は未サポートの場合は-1を返すようになっている。

BOOL CSusie00am::Open(LPSTR plugin);
LPSTR plugin
プラグイン名

CSusie00am::Close
SUSIEプラグイン(00AM)をクローズする。

VOID CSusie00am::Close();


SUSIEクラス補助

OpenSusie00in
該当するSUSIEプラグイン(00IN)を探し、オープン済みのオブジェクトを取得する。

CSusie00in *OpenSusie00in(LPSTR spipath,LPSTR imagename);
LPSTR spipath
プラグインの存在するフォルダ

LPSTR imagename
調べる画像ファイル

CloseSusie00in
OpenSusie00inで取得したオブジェクトを開放する。

VOID CloseSusie00in(CSusie00in *plugin);
CSusie00in *plugin
開放するオブジェクト

OpenSusie00am
該当するSUSIEプラグイン(00AM)を探し、オープン済みのオブジェクトを取得する。

CSusie00in *OpenSusie00am(LPSTR spipath,LPSTR imagename);
LPSTR spipath
プラグインの存在するフォルダ

LPSTR imagename
調べる画像ファイル

CloseSusie00am
OpenSusie00amで取得したオブジェクトを開放する。

VOID CloseSusie00am(CSusie00am *plugin);
CSusie00am *plugin
開放するオブジェクト


プロセス監視

WinExec_WaitProcess
プロセスを実行し、それが終了するまで待機する。

BOOL WINAPI WinExec_WaitProcess(LPSTR cmdline,UINT show = SW_SHOW);
LPSTR cmdline
コマンドライン

UINT show
実行するプロセスの表示方法(ShowWindowと同じ)

Copyright (c) 2000 GOK @ Assemblage Labo.