// ICFControl.cpp : アプリケーションのクラス動作を定義します。
//

#include "stdafx.h"
#include "ICFControl.h"
#include "ICFControlDlg.h"
#include "icf.h"
#include <locale.h>

#ifdef _DEBUG
#define new DEBUG_NEW
#endif


// CICFControlApp

BEGIN_MESSAGE_MAP(CICFControlApp, CWinApp)
	ON_COMMAND(ID_HELP, CWinApp::OnHelp)
END_MESSAGE_MAP()


// CICFControlApp コンストラクション

CICFControlApp::CICFControlApp()
{
	// TODO: この位置に構築用コードを追加してください。
	// ここに InitInstance 中の重要な初期化処理をすべて記述してください。
}


// 唯一の CICFControlApp オブジェクトです。

CICFControlApp theApp;


// CICFControlApp 初期化

BOOL CICFControlApp::InitInstance()
{
	// アプリケーション　マニフェストが　visual スタイルを有効にするために、
	// ComCtl32.dll バージョン 6　以降の使用を指定する場合は、
	// Windows XP に　InitCommonControls() が必要です。さもなければ、ウィンドウ作成はすべて失敗します。
	InitCommonControls();
	CWinApp::InitInstance();
	AfxEnableControlContainer();
	CoInitializeEx(	0,	COINIT_APARTMENTTHREADED | COINIT_DISABLE_OLE1DDE);
	SetRegistryKey(_T("Soft3304"));
	setlocale( LC_ALL, "" );
/*
	try
	{
//		CAddAuthorizedApp	app;
//		app.AddAppToFW(_T(SERVER_DESCRIPTION), CPathTools::GetAppPath() + _T(SERVER_FILE_NAME));

		CAddAuthorizedApp2	app;
		app.AddAppToFW(_T(SERVER_NAME), CPathTools::GetAppPath() + _T(SERVER_FILE_NAME), _T(SERVER_DESCRIPTION), TRUE);

	}
	catch(CAddAuthorizedAppException err)
	{
	}
*/

	//	コマンド起動
	CString command = GetCommandLine();
	command = command.MakeLower();
	if(command.Find(_T("uninstall")) != -1)
	{
		CICF::DelApp(TRUE);
		return FALSE;
	}
	else if(command.Find(_T("service")) != -1)
	{
		CICF::AddApp(TRUE, TRUE);
		return FALSE;
	}
	else if(command.Find(_T("app")) != -1)
	{
		CICF::AddApp(FALSE, TRUE);
		return FALSE;
	}


	CICFControlDlg dlg;
	m_pMainWnd = &dlg;
	INT_PTR nResponse = dlg.DoModal();
	if (nResponse == IDOK)
	{
	}
	else if (nResponse == IDCANCEL)
	{
		// TODO: ダイアログが <キャンセル> で消された時のコードを
		//       記述してください。
	}

	// ダイアログは閉じられました。アプリケーションのメッセージ ポンプを開始しないで
	// アプリケーションを終了するために FALSE を返してください。
	return FALSE;
}


