<h5 dir="auto">System information (version)</h5>

<ul dir="auto">
<li>OpenCV =&gt; 4.5.2</li>
<li>Operating System / Platform =&gt; Windows 10 64bit</li>
<li>Compiler =&gt; MSVC 2019</li>
<li>Options: Qt5</li>
</ul>
<h5 dir="auto">Detailed description</h5>
<p dir="auto">While highgui compilation it issues</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="window.obj : error LNK2019: unresolved external symbol &quot;double __cdecl cvGetPropVsync_W32(char const *)&quot; (?cvGetPropVsync_W32@@YANPEBD@Z) referenced in function &quot;double __cdecl cv::getWindowProperty(class std::
basic_string&lt;char,struct std::char_traits&lt;char&gt;,class std::allocator&lt;char&gt; &gt; const &amp;,int)&quot; (?getWindowProperty@cv@@YANAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@H@Z) [D:\CPPLIBS\sources\op
encv\build\modules\highgui\opencv_highgui.vcxproj]
window.obj : error LNK2019: unresolved external symbol &quot;void __cdecl cvSetPropVsync_W32(char const *,bool)&quot; (?cvSetPropVsync_W32@@YAXPEBD_N@Z) referenced in function &quot;void __cdecl cv::setWindowProperty(class st
d::basic_string&lt;char,struct std::char_traits&lt;char&gt;,class std::allocator&lt;char&gt; &gt; const &amp;,int,double)&quot; (?setWindowProperty@cv@@YAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@HN@Z) [D:\CPPLIBS
\sources\opencv\build\modules\highgui\opencv_highgui.vcxproj]
D:\CPPLIBS\sources\opencv\build\bin\Release\opencv_highgui452.dll : fatal error LNK1120: 2 unresolved externals [D:\CPPLIBS\sources\opencv\build\modules\highgui\opencv_highgui.vcxproj]"><pre class="notranslate"><code class="notranslate">window.obj : error LNK2019: unresolved external symbol "double __cdecl cvGetPropVsync_W32(char const *)" (?cvGetPropVsync_W32@@YANPEBD@Z) referenced in function "double __cdecl cv::getWindowProperty(class std::
basic_string&lt;char,struct std::char_traits&lt;char&gt;,class std::allocator&lt;char&gt; &gt; const &amp;,int)" (?getWindowProperty@cv@@YANAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@H@Z) [D:\CPPLIBS\sources\op
encv\build\modules\highgui\opencv_highgui.vcxproj]
window.obj : error LNK2019: unresolved external symbol "void __cdecl cvSetPropVsync_W32(char const *,bool)" (?cvSetPropVsync_W32@@YAXPEBD_N@Z) referenced in function "void __cdecl cv::setWindowProperty(class st
d::basic_string&lt;char,struct std::char_traits&lt;char&gt;,class std::allocator&lt;char&gt; &gt; const &amp;,int,double)" (?setWindowProperty@cv@@YAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@HN@Z) [D:\CPPLIBS
\sources\opencv\build\modules\highgui\opencv_highgui.vcxproj]
D:\CPPLIBS\sources\opencv\build\bin\Release\opencv_highgui452.dll : fatal error LNK1120: 2 unresolved externals [D:\CPPLIBS\sources\opencv\build\modules\highgui\opencv_highgui.vcxproj]
</code></pre></div>
<p dir="auto">Two symbols cvSetPropVsync_W32 and cvGetPropVsync_W32 are missing. those are defined in window_w32.cpp but not included to the build.</p>
<h5 dir="auto">System information (version)</h5>

<ul dir="auto">
<li>OpenCV =&gt; 4.5.2 <strong>static library</strong></li>
<li>Operating System / Platform =&gt; Windows 64 Bit</li>
<li>Compiler =&gt; Visual Studio 2019</li>
</ul>
<h5 dir="auto">Detailed description</h5>
<p dir="auto">I have a application use highgui, but when I upgrade opencv from 451 to 452, a LNK2019 error come out:</p>
<p dir="auto"><code class="notranslate">1&gt;opencv_highgui452.lib(window.obj) : error LNK2019: 无法解析的外部符号【unresolved external symbol】 "double __cdecl cvGetPropVsync_W32(char const *)" (?cvGetPropVsync_W32@@YANPEBD@Z)，函数【Function】 "double __cdecl cv::getWindowProperty(class std::basic_string&lt;char,struct std::char_traits&lt;char&gt;,class std::allocator&lt;char&gt; &gt; const &amp;,int)" (?getWindowProperty@cv@@YANAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@H@Z) 中引用了该符号 1&gt;opencv_highgui452.lib(window.obj) : error LNK2019: 无法解析的外部符号 "void __cdecl cvSetPropVsync_W32(char const *,bool)" (?cvSetPropVsync_W32@@YAXPEBD_N@Z)，函数 "void __cdecl cv::setWindowProperty(class std::basic_string&lt;char,struct std::char_traits&lt;char&gt;,class std::allocator&lt;char&gt; &gt; const &amp;,int,double)" (?setWindowProperty@cv@@YAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@HN@Z) 中引用了该符号</code></p>
<p dir="auto">cvGetPropVsync_W32 and cvSetPropVsync_W32 is define in <a href="https://github.com/opencv/opencv/blob/6e8daaec0f46aaba9ea22e2afce47307b1dbff9f/modules/highgui/src/precomp.hpp#L118">highgui/src/precomp.hpp</a>, both of them is only defined but without implement.</p>
<div class="highlight highlight-source-cs notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="double cvGetPropVsync_W32(const char* name);
void cvSetPropVsync_W32(const char* name, const bool enabled);"><pre class="notranslate"><span class="pl-smi">double</span> <span class="pl-en">cvGetPropVsync_W32</span><span class="pl-kos">(</span><span class="pl-smi">const</span> <span class="pl-s1">char</span><span class="pl-c1">*</span> name<span class="pl-kos">)</span><span class="pl-kos">;</span>
<span class="pl-smi">void</span> <span class="pl-en">cvSetPropVsync_W32</span><span class="pl-kos">(</span><span class="pl-smi">const</span> <span class="pl-s1">char</span><span class="pl-c1">*</span> name<span class="pl-kos">,</span> <span class="pl-smi">const</span> <span class="pl-s1">bool</span> enabled<span class="pl-kos">)</span><span class="pl-kos">;</span></pre></div>
<p dir="auto">So I delete them in opencv source code and build highgui module again, then LNK2019 don't happen and complie success:</p>
<ol dir="auto">
<li>highgui/src/window.cpp, <a href="https://github.com/opencv/opencv/blob/6e8daaec0f46aaba9ea22e2afce47307b1dbff9f/modules/highgui/src/window.cpp#L95">Line195</a></li>
</ol>
<div class="highlight highlight-source-cs notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="//case cv::WND_PROP_VSYNC:
//    #if defined (HAVE_WIN32UI)
//        cvSetPropVsync_W32(name, (prop_value != 0));
//    #else
//        // not implemented yet for other toolkits
//    #endif
//break;"><pre class="notranslate"><span class="pl-c">//case cv::WND_PROP_VSYNC:</span>
<span class="pl-c">//    #if defined (HAVE_WIN32UI)</span>
<span class="pl-c">//        cvSetPropVsync_W32(name, (prop_value != 0));</span>
<span class="pl-c">//    #else</span>
<span class="pl-c">//        // not implemented yet for other toolkits</span>
<span class="pl-c">//    #endif</span>
<span class="pl-c">//break;</span></pre></div>
<ol start="2" dir="auto">
<li>highgui/src/window.cpp, <a href="https://github.com/opencv/opencv/blob/6e8daaec0f46aaba9ea22e2afce47307b1dbff9f/modules/highgui/src/window.cpp#L193">Line193</a></li>
</ol>
<div class="highlight highlight-source-cs notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="//case cv::WND_PROP_VSYNC:
//    #if defined (HAVE_WIN32UI)
//        return cvGetPropVsync_W32(name);
//    #else
//        return -1;
//    #endif
//break;"><pre class="notranslate"><span class="pl-c">//case cv::WND_PROP_VSYNC:</span>
<span class="pl-c">//    #if defined (HAVE_WIN32UI)</span>
<span class="pl-c">//        return cvGetPropVsync_W32(name);</span>
<span class="pl-c">//    #else</span>
<span class="pl-c">//        return -1;</span>
<span class="pl-c">//    #endif</span>
<span class="pl-c">//break;</span></pre></div>