前回やった暗号化読書き関数を組み込み、隠しデータファイルを自動読書きする完成版の全ソースを今後3回に亘って載せます。また最終回には使用方法を説明します。
書き込みスペースの関係上まずはリソース関係から。これらのファイルはBDDFormで確認できます。
【IDList.rc】
//-----------------------------------------
// BCCForm Ver 2.41
// An Easy Resource Editor for BCC
// Copyright (c) February 2002 by ysama
//-----------------------------------------
#include "ResIDList.h"
//----------------------------------
// ダイアログ (IDD_EDIT)
//----------------------------------
IDD_EDIT DIALOG DISCARDABLE 0, 0, 270, 150
EXSTYLE WS_EX_DLGMODALFRAME
STYLE WS_POPUP | WS_DLGFRAME | WS_CAPTION | WS_SYSMENU | DS_SETFONT | DS_CENTER
CAPTION "IDとパスワードの編集"
FONT 8, "MS 明朝"
{
CONTROL "", IDC_EDIT1, "EDIT", WS_CHILD | WS_BORDER | WS_VISIBLE | WS_TABSTOP | ES_AUTOHSCROLL | ES_LEFT, 87, 9, 171, 15, WS_EX_CLIENTEDGE
CONTROL "", IDC_EDIT2, "EDIT", WS_CHILD | WS_BORDER | WS_VISIBLE | WS_TABSTOP | ES_AUTOHSCROLL | ES_LEFT, 87, 30, 171, 15, WS_EX_CLIENTEDGE
CONTROL "", IDC_EDIT3, "EDIT", WS_CHILD | WS_BORDER | WS_VISIBLE | WS_TABSTOP | ES_AUTOHSCROLL | ES_LEFT, 87, 48, 171, 15, WS_EX_CLIENTEDGE
CONTROL "", IDC_EDIT4, "EDIT", WS_CHILD | WS_BORDER | WS_VISIBLE | WS_TABSTOP | ES_MULTILINE | WS_VSCROLL | ES_LEFT, 87, 66, 171, 48
CONTROL "編集終了", IDOK, "BUTTON", WS_CHILD | WS_VISIBLE | WS_TABSTOP | BS_DEFPUSHBUTTON, 198, 123, 60, 18
CONTROL "メンバーシップ", IDC_LABEL1, "STATIC", WS_CHILD | WS_VISIBLE | SS_NOTIFY | SS_SUNKEN, 6, 9, 75, 15
CONTROL "ログインID", IDC_LABEL2, "STATIC", WS_CHILD | WS_VISIBLE | SS_NOTIFY | SS_SUNKEN, 6, 30, 75, 15
CONTROL "パスワード", IDC_LABEL3, "STATIC", WS_CHILD | WS_VISIBLE | SS_NOTIFY | SS_SUNKEN, 6, 48, 75, 15
CONTROL "備考(任意)", IDC_LABEL4, "STATIC", WS_CHILD | WS_VISIBLE | SS_NOTIFY | SS_SUNKEN, 6, 66, 75, 15
}
//----------------------------------
// ダイアログ (IDD_SEARCH)
//----------------------------------
IDD_SEARCH DIALOG DISCARDABLE 0, 0, 135, 48
EXSTYLE WS_EX_DLGMODALFRAME
STYLE WS_POPUP | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU | DS_SETFONT | DS_CENTER
CAPTION "検索"
FONT 8, "MS 明朝"
{
CONTROL "", IDC_EDIT1, "EDIT", WS_CHILD | WS_BORDER | WS_VISIBLE | WS_TABSTOP | ES_AUTOHSCROLL | ES_LEFT, 3, 15, 126, 12, WS_EX_CLIENTEDGE
CONTROL "OK", IDOK, "BUTTON", WS_CHILD | WS_VISIBLE | WS_TABSTOP | BS_DEFPUSHBUTTON, 45, 30, 45, 15
CONTROL "検索する文字列", IDC_LABEL1, "STATIC", WS_CHILD | WS_VISIBLE | SS_NOTIFY, 6, 3, 123, 9
}
//----------------------------------
// ダイアログ (IDD_SORT)
//----------------------------------
IDD_SORT DIALOG DISCARDABLE 0, 0, 144, 87
EXSTYLE WS_EX_DLGMODALFRAME
STYLE WS_POPUP | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU | DS_SETFONT | DS_CENTER
CAPTION "データの並べ替え"
FONT 8, "MS 明朝"
{
CONTROL "", IDC_COMBOBOX1, "COMBOBOX", WS_CHILD | WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST | WS_VSCROLL, 12, 18, 120, 60
CONTROL "", IDC_COMBOBOX2, "COMBOBOX", WS_CHILD | WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST | WS_VSCROLL, 12, 48, 120, 60
CONTROL "サブアイテムの選択", IDC_LABEL1, "STATIC", WS_CHILD | WS_VISIBLE | SS_NOTIFY, 15, 6, 93, 9
CONTROL "並べ替え方法", IDC_LABEL2, "STATIC", WS_CHILD | WS_VISIBLE | SS_NOTIFY, 15, 36, 93, 9
CONTROL "完了", IDOK, "BUTTON", BS_PUSHBUTTON | BS_CENTER | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 51, 66, 39, 15
}
//----------------------------------
// ダイアログ (IDD_VERSION)
//----------------------------------
IDD_VERSION DIALOG DISCARDABLE 0, 0, 160, 40
EXSTYLE WS_EX_DLGMODALFRAME
STYLE WS_POPUP | WS_VISIBLE | WS_CAPTION | DS_MODALFRAME | DS_3DLOOK | DS_CENTER
CAPTION "バージョン情報"
FONT 9, "Times New Roman"
{
CONTROL IDI_ICON, 0, "STATIC", SS_SUNKEN | SS_ICON | WS_CHILD | WS_VISIBLE, 12, 10, 32, 32
CONTROL "", IDC_VERTXT, "STATIC", SS_CENTER | SS_SUNKEN | WS_CHILD | WS_VISIBLE, 42, 8, 80, 24
CONTROL "OK", IDOK, "BUTTON", BS_PUSHBUTTON | BS_CENTER | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 130, 14, 20, 12
}
//-------------------------
// メニュー(IDM_MAIN)
//-------------------------
IDM_MAIN MENU DISCARDABLE
{
POPUP "ファイル(&F)"
{
MENUITEM "データを開く(&O)", IDM_OPEN
MENUITEM SEPARATOR
MENUITEM "データの保存(&S)", IDM_SAVE
MENUITEM SEPARATOR
MENUITEM "終了(&X)", IDM_EXIT
}
POPUP "編集(&E)"
{
MENUITEM "追加(&A)", IDM_ADD
MENUITEM "検索(&S)", IDM_SEARCH
MENUITEM "編集(&E)", IDM_EDIT
MENUITEM "削除(&D)", IDM_DELETE
}
POPUP "表示(&V)"
{
MENUITEM "並び替え(&S)", IDM_SORT
}
POPUP "ヘルプ(&H)"
{
MENUITEM "本ソフトの使い方(&H)", IDM_HELP
MENUITEM SEPARATOR
MENUITEM "バージョン情報(&V)", IDM_VERSION
}
}
//--------------------------
// イメージ(IDI_ICON)
//--------------------------
IDI_ICON ICON DISCARDABLE "C:\Users\(パス)\IDList\IDList.ico"
//--------------------------
// イメージ(IDI_TOOLBAR)
//--------------------------
IDI_TOOLBAR BITMAP DISCARDABLE "C:\Users\(パス)\IDList\ToolBar.bmp"
【ResIDList.h】
//-----------------------------------------
// BCCForm Ver 2.41
// Header File for Resource Script File
// Copyright (c) February 2002 by ysama
//-----------------------------------------
//---------------------
// ダイアログリソース
//---------------------
// ダイアログ IDD_EDIT
#define IDC_EDIT1 100
#define IDC_EDIT2 101
#define IDC_EDIT3 102
#define IDC_EDIT4 103
#define IDC_LABEL1 104
#define IDC_LABEL2 105
#define IDC_LABEL3 106
#define IDC_LABEL4 107
// ダイアログ IDD_SEARCH
// ダイアログ IDD_SORT
#define IDC_COMBOBOX1 200
#define IDC_COMBOBOX2 201
// ダイアログ IDD_VERSION
#define IDC_VERTXT 301
//---------------------
// メニューリソース
//---------------------
// メニュー IDM_MAIN
#define IDM_OPEN 400
#define IDM_SAVE 401
#define IDM_EXIT 402
#define IDM_ADD 403
#define IDM_SEARCH 404
#define IDM_EDIT 405
#define IDM_DELETE 406
#define IDM_SORT 407
#define IDM_HELP 408
#define IDM_VERSION 409
//---------------------
// イメージリソース
//---------------------
#define IDI_ICON 500
#define IDI_TOOLBAR 600
//---------------------
// ストリングテーブル
//---------------------
//--------------------
// アクセラレーター
//--------------------
//------------------
// ヴァージョン情報
//------------------