修复打开图片线程BUG
This commit is contained in:
parent
87d975f523
commit
cc8dd9085c
|
@ -32,6 +32,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "test_TWAIN_App", "..\..\doc
|
|||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "saneui", "..\..\doc_and_tools\tools\apps\saneui\saneui.vcxproj", "{9C925903-62C0-4517-B435-93F6291E2D27}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pic_viewer", "..\..\doc_and_tools\tools\apps\pic_viewer\pic_viewer.vcxproj", "{8C3DEF78-4DF1-4C26-A11E-7031FF77391C}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|x64 = Debug|x64
|
||||
|
@ -102,6 +104,14 @@ Global
|
|||
{9C925903-62C0-4517-B435-93F6291E2D27}.Release|x64.Build.0 = Release|x64
|
||||
{9C925903-62C0-4517-B435-93F6291E2D27}.Release|x86.ActiveCfg = Release|Win32
|
||||
{9C925903-62C0-4517-B435-93F6291E2D27}.Release|x86.Build.0 = Release|Win32
|
||||
{8C3DEF78-4DF1-4C26-A11E-7031FF77391C}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{8C3DEF78-4DF1-4C26-A11E-7031FF77391C}.Debug|x64.Build.0 = Debug|x64
|
||||
{8C3DEF78-4DF1-4C26-A11E-7031FF77391C}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{8C3DEF78-4DF1-4C26-A11E-7031FF77391C}.Debug|x86.Build.0 = Debug|Win32
|
||||
{8C3DEF78-4DF1-4C26-A11E-7031FF77391C}.Release|x64.ActiveCfg = Release|x64
|
||||
{8C3DEF78-4DF1-4C26-A11E-7031FF77391C}.Release|x64.Build.0 = Release|x64
|
||||
{8C3DEF78-4DF1-4C26-A11E-7031FF77391C}.Release|x86.ActiveCfg = Release|Win32
|
||||
{8C3DEF78-4DF1-4C26-A11E-7031FF77391C}.Release|x86.Build.0 = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
@ -115,6 +125,7 @@ Global
|
|||
{4C912767-88BE-463E-BFFC-AF994A92E425} = {53E5EDD9-13BA-4F3C-A387-C73CB06C686D}
|
||||
{8C3DEF78-4DF1-4C26-A11E-7031FF773E7D} = {53E5EDD9-13BA-4F3C-A387-C73CB06C686D}
|
||||
{9C925903-62C0-4517-B435-93F6291E2D27} = {53E5EDD9-13BA-4F3C-A387-C73CB06C686D}
|
||||
{8C3DEF78-4DF1-4C26-A11E-7031FF77391C} = {53E5EDD9-13BA-4F3C-A387-C73CB06C686D}
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {A89068FF-95C4-3C1E-B126-70B66C9824BB}
|
||||
|
|
|
@ -722,12 +722,13 @@ static DWORD thread_open_id_ = 0;
|
|||
static safe_fifo<std::wstring> images_("images");
|
||||
static DWORD WINAPI thread_open_image(void* lp)
|
||||
{
|
||||
thread_open_id_ = GetCurrentThreadId();
|
||||
while (1)
|
||||
{
|
||||
std::wstring file(L"");
|
||||
if (images_.take(file, true))
|
||||
ShellExecuteW(NULL, L"Open", file.c_str(), NULL, NULL, SW_SHOWNORMAL);
|
||||
else
|
||||
else if(thread_open_id_ == 0)
|
||||
break;
|
||||
}
|
||||
return 0;
|
||||
|
@ -781,6 +782,7 @@ CDlgScanner::CDlgScanner(CWnd* pParent /*=nullptr*/)
|
|||
CDlgScanner::~CDlgScanner()
|
||||
{
|
||||
::PostThreadMessage(thread_open_id_, WM_USER + 1001, 0, 0);
|
||||
thread_open_id_ = 0;
|
||||
images_.trigger();
|
||||
if (scanner_)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue