在C++ Builder的工程文件中有以下的代码,以下代码实现的机能要用C#来实现(也就是在C#下实现下面C++的代码),希望高手能帮忙解决下,不胜感激。WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
HANDLE di_p_mutex;
int di_s4b_result;
OSVERSIONINFO di_t_version_infomation;
bool di_b_result;
bool di_b_exists_result[JE_SV_COMM_VARIABLE_INI_S4B4]; // 文件夹判定用
int di_s4b_count; // 循环变量
AnsiString di_s_dialog_message; // 对话框表示消息 memset( di_b_exists_result, true, sizeof(di_b_exists_result) ); // 判定結果初期化
di_s_dialog_message = “”; // 消息
try
{
di_p_mutex =
OpenMutex(
MUTEX_ALL_ACCESS,
false,
JE_SV_APPLICATION_NAME
);
if (di_p_mutex == NULL)
{
CreateMutex(NULL,true, “测试用应用程序”);
}
else
{
Application->MessageBoxA(
“消息内容”,
“标题”
MB_TOPMOST+MB_ICONSTOP+MB_OK);
return JE_SV_APPLICATION_RETURN;
} di_t_version_infomation.dwOSVersionInfoSize =
sizeof(di_t_version_infomation); GetVersionEx(&di_t_version_infomation); // windows的版本信息取得 switch(di_t_version_infomation.dwPlatformId)
{
case VER_PLATFORM_WIN32_NT : // WindowsNT,2000,XP
break;
case VER_PLATFORM_WIN32s : // Windows95以前
case VER_PLATFORM_WIN32_WINDOWS : // Windows95,98,Me
default : // 其他
Application->MessageBoxA( //
“消息内容”
“标题”
MB_OK + MB_DEFBUTTON1 + MB_ICONERROR);
return JE_SV_APPLICATION_RETURN;
}
/* 文件夹有无的判断 *、
di_b_exists_result[0] =
DirectoryExists( “C:\Documents and Settings”); di_b_exists_result[1] =
DirectoryExists( “C:\Documents and Settings\All Users”); di_b_exists_result[2] =
DirectoryExists( “C:\Documents and Settings\All Users\Favorites”); di_b_exists_result[3] =
DirectoryExists( "C:\Documents and Settings\Administrator"); for ( di_s4b_count = 0
di_s4b_count < 4
di_s4b_count++ )
{
if ( di_b_exists_result[di_s4b_count] != true )
{
di_s_dialog_message += // 文件夹名连接
“\n” +
"."+
"文件夹名";
}
} if ( di_s_dialog_message != “”)
{
di_s_dialog_message =
“文件夹做成”+
di_s_dialog_message; di_s4b_result =
Application->MessageBoxA(
di_s_dialog_message.c_str(),
“标题”,
MB_TOPMOST+MB_ICONINFORMATION+
MB_YESNO);
if (di_s4b_result == IDYES)
{
for ( di_s4b_count = 0;
di_s4b_count < 4;
di_s4b_count++ )
{
if ( true !=
di_b_exists_result[di_s4b_count] )
{
di_b_result = // 文件夹作成
CreateDir(“C:\Documents and Settings”.c_str());
if ( di_b_result != true )
{
Application->MessageBoxA(
“创建文件夹”,
“标题”,
MB_TOPMOST+MB_ICONSTOP+MB_OK);
return JE_SV_APPLICATION_RETURN;
}
}
}
}
else
{
return JE_SV_APPLICATION_RETURN;
}
}
Application->Initialize();
Application->Title =
JE_SV_APPLICATION_TITLE;
Application->CreateForm(__classid(TMainForm), &MainForm);
Application->CreateForm(__classid(TVersionForm), &VersionForm);
Application->CreateForm(__classid(TLoopCountForm), &LoopCountForm);
Application->CreateForm(__classid(TOptionSetForm), &OptionSetForm);
Application->CreateForm(__classid(TPauseForm), &PauseForm);
Application->CreateForm(__classid(TSingleOperationSvForm),&SingleOperationSvForm);
Application->CreateForm(__classid(TSingleOperationFileForm), &SingleOperationFileForm);
Application->CreateForm(__classid(TSingleOperationEmForm), &SingleOperationEmForm);
Application->CreateForm(__classid(TFileSelectForm), &FileSelectForm);
Application->CreateForm(__classid(TSingleOperationEnbFrom), &SingleOperationEnbFrom);
Application->CreateForm(__classid(TWaitingForm), &WaitingForm);
Application->CreateForm(__classid(TWaitingForm), &WaitingForm);
Application->Run();
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
return JE_SV_APPLICATION_RETURN;
}
{
HANDLE di_p_mutex;
int di_s4b_result;
OSVERSIONINFO di_t_version_infomation;
bool di_b_result;
bool di_b_exists_result[JE_SV_COMM_VARIABLE_INI_S4B4]; // 文件夹判定用
int di_s4b_count; // 循环变量
AnsiString di_s_dialog_message; // 对话框表示消息 memset( di_b_exists_result, true, sizeof(di_b_exists_result) ); // 判定結果初期化
di_s_dialog_message = “”; // 消息
try
{
di_p_mutex =
OpenMutex(
MUTEX_ALL_ACCESS,
false,
JE_SV_APPLICATION_NAME
);
if (di_p_mutex == NULL)
{
CreateMutex(NULL,true, “测试用应用程序”);
}
else
{
Application->MessageBoxA(
“消息内容”,
“标题”
MB_TOPMOST+MB_ICONSTOP+MB_OK);
return JE_SV_APPLICATION_RETURN;
} di_t_version_infomation.dwOSVersionInfoSize =
sizeof(di_t_version_infomation); GetVersionEx(&di_t_version_infomation); // windows的版本信息取得 switch(di_t_version_infomation.dwPlatformId)
{
case VER_PLATFORM_WIN32_NT : // WindowsNT,2000,XP
break;
case VER_PLATFORM_WIN32s : // Windows95以前
case VER_PLATFORM_WIN32_WINDOWS : // Windows95,98,Me
default : // 其他
Application->MessageBoxA( //
“消息内容”
“标题”
MB_OK + MB_DEFBUTTON1 + MB_ICONERROR);
return JE_SV_APPLICATION_RETURN;
}
/* 文件夹有无的判断 *、
di_b_exists_result[0] =
DirectoryExists( “C:\Documents and Settings”); di_b_exists_result[1] =
DirectoryExists( “C:\Documents and Settings\All Users”); di_b_exists_result[2] =
DirectoryExists( “C:\Documents and Settings\All Users\Favorites”); di_b_exists_result[3] =
DirectoryExists( "C:\Documents and Settings\Administrator"); for ( di_s4b_count = 0
di_s4b_count < 4
di_s4b_count++ )
{
if ( di_b_exists_result[di_s4b_count] != true )
{
di_s_dialog_message += // 文件夹名连接
“\n” +
"."+
"文件夹名";
}
} if ( di_s_dialog_message != “”)
{
di_s_dialog_message =
“文件夹做成”+
di_s_dialog_message; di_s4b_result =
Application->MessageBoxA(
di_s_dialog_message.c_str(),
“标题”,
MB_TOPMOST+MB_ICONINFORMATION+
MB_YESNO);
if (di_s4b_result == IDYES)
{
for ( di_s4b_count = 0;
di_s4b_count < 4;
di_s4b_count++ )
{
if ( true !=
di_b_exists_result[di_s4b_count] )
{
di_b_result = // 文件夹作成
CreateDir(“C:\Documents and Settings”.c_str());
if ( di_b_result != true )
{
Application->MessageBoxA(
“创建文件夹”,
“标题”,
MB_TOPMOST+MB_ICONSTOP+MB_OK);
return JE_SV_APPLICATION_RETURN;
}
}
}
}
else
{
return JE_SV_APPLICATION_RETURN;
}
}
Application->Initialize();
Application->Title =
JE_SV_APPLICATION_TITLE;
Application->CreateForm(__classid(TMainForm), &MainForm);
Application->CreateForm(__classid(TVersionForm), &VersionForm);
Application->CreateForm(__classid(TLoopCountForm), &LoopCountForm);
Application->CreateForm(__classid(TOptionSetForm), &OptionSetForm);
Application->CreateForm(__classid(TPauseForm), &PauseForm);
Application->CreateForm(__classid(TSingleOperationSvForm),&SingleOperationSvForm);
Application->CreateForm(__classid(TSingleOperationFileForm), &SingleOperationFileForm);
Application->CreateForm(__classid(TSingleOperationEmForm), &SingleOperationEmForm);
Application->CreateForm(__classid(TFileSelectForm), &FileSelectForm);
Application->CreateForm(__classid(TSingleOperationEnbFrom), &SingleOperationEnbFrom);
Application->CreateForm(__classid(TWaitingForm), &WaitingForm);
Application->CreateForm(__classid(TWaitingForm), &WaitingForm);
Application->Run();
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
return JE_SV_APPLICATION_RETURN;
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货