1.退回上一笔的改动

2.添加try catch块
3.设置生成pdb文件并且关闭优化
CigaretteSH
Jinhuan 2 months ago
parent 318000820f
commit bec1a3e4d0

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
@ -215,7 +215,7 @@
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
<LanguageStandard>stdcpp14</LanguageStandard>
<Optimization>MaxSpeed</Optimization>
<Optimization>Disabled</Optimization>
<SupportJustMyCode>false</SupportJustMyCode>
<DisableSpecificWarnings>4819;%(DisableSpecificWarnings)</DisableSpecificWarnings>
</ClCompile>
@ -223,7 +223,7 @@
<SubSystem>Console</SubSystem>
<OutputFile>$(OutDir)\$(ProjectName).exe</OutputFile>
<AdditionalLibraryDirectories>$(ProjectDir)OpenCV455Simple\win64\vc15\lib;$(ProjectDir)Pylon6.2\lib\Win64;$(ProjectDir)MvIMPACT\lib\win64;$(ProjectDir)MVS3.2.1\lib\win64;$(ProjectDir)modbus;Ws2_32.lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalDependencies>opencv_world455.lib;modbus.lib;mvDeviceManager.lib;MvCameraControl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<IgnoreSpecificDefaultLibraries>
</IgnoreSpecificDefaultLibraries>

@ -310,6 +310,7 @@ int ExportDataThread::insertXMLNode(const char* xmlPath, _XMLExportDataInfo& dat
void ExportDataThread::run()
{
try {
while (!b_quit || (b_quit && (!export_XMLData_Info_queue->isEmpty() || readyToSendZip || !tmpListToZip.isEmpty()))) {
_XMLExportDataInfo element;
if (!export_XMLData_Info_queue->isEmpty()) {
@ -359,14 +360,17 @@ void ExportDataThread::run()
QFile* file[2] = { NULL };
QFile fileNg(fileList[0]);
QFile fileOk(fileList[1]);
file[0] = new QFile(fileList[0]);
file[1] = new QFile(fileList[1]);
fileNg.open(QIODevice::WriteOnly);
fileOk.open(QIODevice::WriteOnly);
// QFile fileNg(fileList[0]);
// QFile fileOk(fileList[1]);
QTextStream ngStream(fileNg);
QTextStream okStream(fileOk);
file[0]->open(QIODevice::WriteOnly);
file[1]->open(QIODevice::WriteOnly);
QTextStream ngStream(file[0]);
QTextStream okStream(file[1]);
argsNg.append("a");
argsNg.append(zipFilePaths[0]);
@ -391,8 +395,8 @@ void ExportDataThread::run()
argsOk.append("-i@" + fileList[1]);
argsOk.append("-mx=3");
fileNg.close();
fileOk.close();
file[0]->close();
file[1]->close();
for (int i = 0; i < zipFilePaths.size(); i++) {
if (file[i]->size() == 0) {
@ -409,8 +413,8 @@ void ExportDataThread::run()
QFile file(zipFilePaths[i]);
file.remove();
}
fileNg.remove();
fileOk.remove();
file[0]->remove();
file[1]->remove();
listToZip.clear();
readyToSendZip = false;
}
@ -430,6 +434,16 @@ void ExportDataThread::run()
hint = NULL;
}
}
catch (const std::exception& e) {
// 注意std::exception通常不捕获由运行时错误引发的异常
// 但这里是为了演示catch块的结构
std::cerr << __FUNCTION__<<"捕获到异常: " << e.what() << std::endl;
}
catch (...) {
// 使用省略号(...)可以捕获所有类型的异常,这是一种通用的捕获方式
std::cerr << "捕获到未知类型的异常" << std::endl;
}
}
//*****************************************已经调试好,没有理清逻辑前不要动**********************
void ExportDataThread::check_save_dir(std::string dir_path)

@ -389,9 +389,13 @@ void SyncWorkThread::run()
// emit display_check_total(local_camera_number, ++(frame_total[local_camera_number]));
}
}
catch (cv::Exception& e)
{
const char* err_msg = e.what();
std::cout << "exception caught: " << err_msg << std::endl;
catch (const std::exception& e) {
// 注意std::exception通常不捕获由运行时错误引发的异常
// 但这里是为了演示catch块的结构
std::cerr << __FUNCTION__<<"捕获到异常: " << e.what() << std::endl;
}
catch (...) {
// 使用省略号(...)可以捕获所有类型的异常,这是一种通用的捕获方式
std::cerr << "捕获到未知类型的异常" << std::endl;
}
}

@ -25,6 +25,7 @@ void threadSend::stop()
void threadSend::run()
{
try {
while (isLoop)
{
_UDPSendInfo UDPSendInfo;
@ -61,6 +62,16 @@ void threadSend::run()
}
}
}
catch (const std::exception& e) {
// 注意std::exception通常不捕获由运行时错误引发的异常
// 但这里是为了演示catch块的结构
std::cerr << __FUNCTION__<<"捕获到异常: " << e.what() << std::endl;
}
catch (...) {
// 使用省略号(...)可以捕获所有类型的异常,这是一种通用的捕获方式
std::cerr << "捕获到未知类型的异常" << std::endl;
}
}
void threadSend::sendData(_UDPSendInfo* UDPSendInfo, int port)
{

@ -64,7 +64,7 @@ bool threadSendTCP::connectTCP() {
void threadSendTCP::run()
{
try {
#ifdef __TCPClient
if (!connectTCP())
{
@ -87,7 +87,16 @@ void threadSendTCP::run()
#endif
//mySocket->write("Hello! here is tcp client!\n");
//mySocket->flush();
}
}
catch (const std::exception& e) {
// 注意std::exception通常不捕获由运行时错误引发的异常
// 但这里是为了演示catch块的结构
std::cerr << __FUNCTION__<<"捕获到异常: " << e.what() << std::endl;
}
catch (...) {
// 使用省略号(...)可以捕获所有类型的异常,这是一种通用的捕获方式
std::cerr << "捕获到未知类型的异常" << std::endl;
}
}

@ -321,9 +321,13 @@ void WorkThread::run()
#endif
}
}
catch (cv::Exception& e)
{
const char* err_msg = e.what();
std::cout << "exception caught: " << err_msg << std::endl;
catch (const std::exception& e) {
// 注意std::exception通常不捕获由运行时错误引发的异常
// 但这里是为了演示catch块的结构
std::cerr << __FUNCTION__<<"捕获到异常: " << e.what() << std::endl;
}
catch (...) {
// 使用省略号(...)可以捕获所有类型的异常,这是一种通用的捕获方式
std::cerr << "捕获到未知类型的异常" << std::endl;
}
}

Loading…
Cancel
Save