
рд╣рдордиреЗ TortoiseSVN рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдереЛрдбрд╝реА рджреЗрд░ рдХреЗ рд▓рд┐рдП PVS-Studio рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдХреЗ рд▓рд┐рдП рдПрдХ рдореБрдлреНрдд рдХреБрдВрдЬреА рднреЗрдЬреАред рдЬрдм рддрдХ рдЙрдирдХреЗ рдкрд╛рд╕ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рдирд╣реАрдВ рдерд╛, рдореИрдВрдиреЗ рддреБрд░рдВрдд рдХрдЫреБрдЖ рд╕реНрд░реЛрдд рдХреЛрдб рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдФрд░ рдЦреБрдж рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред рд▓рдХреНрд╖реНрдп рд╕реНрдкрд╖реНрдЯ рд╣реИред рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдХреЗ рд╡рд┐рдЬреНрдЮрд╛рдкрди рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ рдЫреЛрдЯрд╛ рд▓реЗрдЦред
рд╣рдордиреЗ рдкрд╣рд▓реЗ рд╣реА TortoiseSVN рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛
рдкрд░реАрдХреНрд╖рдг рдХрд░ рд▓рд┐рдпрд╛ рд╣реИред рдмрд╣реБрдд рд╕рдордп рдкрд╣рд▓реЗ рдХреА рдмрд╛рдд рд╣реИред рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рд╕рддреНрдпрд╛рдкрди рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ 4.00 рдХреА рд░рд┐рд▓реАрдЬ рдХреЗ рд╕рд╛рде рд╣реБрдЖ, рдЬрд╣рд╛рдВ рд╕рд╛рдорд╛рдиреНрдп рдиреИрджрд╛рдирд┐рдХ тАЛтАЛрдирд┐рдпрдо рдкрд╣рд▓реА рдмрд╛рд░ рд╕рд╛рдордиреЗ рдЖрдПред
рд╕рдордп-рд╕рдордп рдкрд░, рд╣рдо рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ рдЙрдкрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд╛рднреЛрдВ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪреЗрдХ рджреЛрд╣рд░рд╛рддреЗ рд╣реИрдВред рдпрд╣ рдПрдХ рдпрд╛ рджреЛ рдмрд╛рд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИред рдПрдХ рдкрд░рд┐рд╡рд░реНрддрдирд╢реАрд▓ рдХреЛрдб рдореЗрдВ рдирдИ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рд▓рдЧрд╛рддрд╛рд░ рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИрдВред рдФрд░ рдлрд┐рд░ рдзреАрд░реЗ-рдзреАрд░реЗ рдФрд░ рджреБрдЦ рд╕реЗ рд╕рд╣реА рдХрд┐рдпрд╛ рдЧрдпрд╛ред рддрджрдиреБрд╕рд╛рд░, рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдХреЗ рджреИрдирд┐рдХ рдЙрдкрдпреЛрдЧ рдХреЗ рд╕рд╛рде рдЕрдзрд┐рдХрддрдо рд▓рд╛рдн рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдмреЗрд╣рддрд░ рдЕрднреА рддрдХ,
рд╡реГрджреНрдзрд┐рд╢реАрд▓ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ред
рддреЛ, рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐
рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рд╕рдВрд╕реНрдХрд░рдг 5.05 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдХреНрдпрд╛ рджрд┐рд▓рдЪрд╕реНрдк рдкрд╛рдпрд╛ рдЧрдпрд╛ред TortoiseSVN рдХреЗ рд▓рд┐рдП рд╕реНрд░реЛрдд рдХреЛрдб 06/19/2013 рдХреЛ
http://tortoisesvn.googlecode.com/svn/trunk рд╕реЗ рд▓рд┐рдП рдЧрдП рдереЗред рд╡реИрд╕реЗ, TortoiseSVN рдкрд░рд┐рдпреЛрдЬрдирд╛ рдмрд╣реБрдд рдЙрдЪреНрдЪ рдЧреБрдгрд╡рддреНрддрд╛ рд╡рд╛рд▓реА рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛-рдкреНрд░реЛрдЧреНрд░рд╛рдорд░реЛрдВ рдХрд╛ рдПрдХ рд╡рд┐рд╢рд╛рд▓ рдбреЗрдЯрд╛рдмреЗрд╕ рд╣реИред рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рдЖрдк рдХрдо рд╕реЗ рдХрдо рдХреБрдЫ рдкрд╛рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдмрдбрд╝реА рдЙрдкрд▓рдмреНрдзрд┐ рд╣реИред
рдЕрдЬреАрдм рд╕реНрдерд┐рддрд┐ рд╣реИ
static void ColouriseA68kDoc (....) { if (((sc.state == SCE_A68K_NUMBER_DEC) && isdigit(sc.ch)) .... || ((sc.state == SCE_A68K_MACRO_ARG) && isdigit(sc.ch)) || ((sc.state == SCE_A68K_MACRO_ARG) && isdigit(sc.ch)) .... }
рдиреИрджрд╛рдирд┐рдХ тАЛтАЛрд╕рдВрджреЗрд╢: V501 рд╕рдорд╛рди рдЙрдк-рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпрд╛рдБ рд╣реИрдВ ('(sc.state == 11) && isdigit (sc.ch)' рдмрд╛рдИрдВ рдУрд░ рдФрд░ 'рджрд╛рдИрдВ рдУрд░' рдСрдкрд░реЗрдЯрд░ред lexa68k.cxx 160
рджреЛ рд╕рдорд╛рди рддреБрд▓рдирд╛рдПрдБ рд╣реИрдВред рдХреЛрдИ рдЯрд╛рдЗрдкреЛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
рдПрдХ рдЯрд╛рдЗрдкреЛ рд╕рдВрднрд╡рддрдГ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рдореЗрдВ рдореМрдЬреВрдж рд╣реИред рдЪрд░ 'рдЖрд░рд╡реА' рдХрд╛ рдорд╛рди рджреЛ рдмрд╛рд░ рдЬрд╛рдВрдЪрд╛ рдЬрд╛рддрд╛ рд╣реИред
struct hentry * AffixMgr::compound_check( .... if (rv && forceucase && (rv) && ....) .... }
рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд╕рдВрджреЗрд╢: V501 рдмрд╛рдИрдВ рдФрд░ '&&' рдСрдкрд░реЗрдЯрд░ рдХреЗ рджрд╛рдИрдВ рдУрд░ рд╕рдорд╛рди рдЙрдк-рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпрд╛рдБ рд╣реИрдВ: rv && forceucase && (rv):
- affixmgr.cxx 1784
- affixmgr.cxx 1879
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рд╕реНрдирд┐рдкреЗрдЯ:
bool IsAllASCII7 (const CString& s) { for (int i = 0, count = s.GetLength(); i < count; ++i) if (s[i] >= 0x80) return false; return true; }
рдиреИрджрд╛рдирд┐рдХ тАЛтАЛрд╕рдВрджреЗрд╢: V547 рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХрд╛ [i]> = 0x80 'рд╣рдореЗрд╢рд╛ рдЧрд▓рдд рд╣реЛрддрд╛ рд╣реИред рдЪрд╛рд░ рдкреНрд░рдХрд╛рд░ рдХреЗ рдореВрд▓реНрдп рд╕реАрдорд╛: [-128, 127]ред logdlgfilter.cpp 34
IsAllASCII7 () рдлрд╝рдВрдХреНрд╢рди рд╣рдореЗрд╢рд╛ 'рд╕рд╣реА' рджреЗрддрд╛ рд╣реИред рд╕реНрдерд┐рддрд┐ 's [i]> = 0x80' рд╣рдореЗрд╢рд╛ рдЭреВрдареА рд╣реЛрддреА рд╣реИред рдкреНрд░рдХрд╛рд░ 'рдЪрд╛рд░' рдХреЗ рдПрдХ рдЪрд░ рдХрд╛ рдорд╛рди 0x80 рд╕реЗ рдЕрдзрд┐рдХ рдпрд╛ рдЙрд╕рдХреЗ рдмрд░рд╛рдмрд░ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
рдПрдХ рдЧрд▓рдд рддреБрд▓рдирд╛ рдХреЗ рд╕рд╛рде рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рд╕реНрдирд┐рдкреЗрдЯ:
int main(int argc, char **argv) { .... DWORD ticks; .... if (run_timers(now, &next)) { ticks = next - GETTICKCOUNT(); if (ticks < 0) ticks = 0; } else { ticks = INFINITE; } .... }
рдиреИрджрд╛рдирд┐рдХ тАЛтАЛрд╕рдВрджреЗрд╢: V547 рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ 'рдЯрд┐рдХреНрд╕ <0' рд╣рдореЗрд╢рд╛ рдЧрд▓рдд рд╣реЛрддрд╛ рд╣реИред рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреНрд░рдХрд╛рд░ рдХрд╛ рдорд╛рди рдХрднреА рдирд╣реАрдВ рд╣реИ <0ред Winplink.c 635
рдЪрд░ 'рдЯрд┐рдХ' рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ "рдЕрдЧрд░ (рдЯрд┐рдХ <0)" рдХреА рдЬрд╛рдБрдЪ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИред рдУрд╡рд░рдлреНрд▓реЛ рдХреА рд╕реНрдерд┐рддрд┐ рдкрд░ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдирд╣реАрдВ рдХреА рдЬрд╛рдПрдЧреАред
рдЙрд╕ рддреНрд░реБрдЯрд┐ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ рдЬрд┐рд╕рдХреЗ рдХрд╛рд░рдг strncmp рдлрд╝рдВрдХреНрд╢рди рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреА рдкреВрд░реА рддрд░рд╣ рд╕реЗ рддреБрд▓рдирд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
int AffixMgr::parse_convtable(...., const char * keyword) { char * piece; .... if (strncmp(piece, keyword, sizeof(keyword)) != 0) { .... }
рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд╕рдВрджреЗрд╢: V579 strncmp рдлрд╝рдВрдХреНрд╢рди рд╕реВрдЪрдХ рдФрд░ рдЙрд╕рдХреЗ рдЖрдХрд╛рд░ рдХреЛ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред рдпрд╣ рд╕рдВрднрд╡рддрдГ рдПрдХ рдЧрд▓рддреА рд╣реИред рддреАрд╕рд░реЗ рддрд░реНрдХ рдХрд╛ рдирд┐рд░реАрдХреНрд╖рдг рдХрд░реЗрдВред affixmgr.cxx 3654
'рд╕рд╛рдЗрдЬрд╝реЛрдлрд╝' рдСрдкрд░реЗрдЯрд░ рд╕реВрдЪрдХ рдХреЗ рдЖрдХрд╛рд░ рдХреА рдЧрдгрдирд╛ рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рдорд╛рди рдХрд╛ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд▓рдВрдмрд╛рдИ рд╕реЗ рдХреЛрдИ рд▓реЗрдирд╛-рджреЗрдирд╛ рдирд╣реАрдВ рд╣реИред
рд╕рдВрджрд┐рдЧреНрдз рд╕реНрдЯреНрд░рд┐рдВрдЧ рдЧрдарди
рдПрдХ рдЪрд░ рд╕рдВрдЦреНрдпрд╛ рд╡рд╛рд▓реЗ рддрд░реНрдХ рд╣рдореЗрд╢рд╛ рд╣рд░ рдЬрдЧрд╣
рд╣реЛрддреЗ рд╣реИрдВ, рдФрд░ рд╣рдореЗрд╢рд╛ рдЦрддрд░рдирд╛рдХ рд╣реЛрддреЗ рд╣реИрдВред
class CTSVNPath { .... private: mutable CString m_sBackslashPath; mutable CString m_sLongBackslashPath; mutable CString m_sFwdslashPath; .... }; const FileStatusCacheEntry * SVNFolderStatus::BuildCache( const CTSVNPath& filepath, ....) { .... CTraceToOutputDebugString::Instance() (_T(__FUNCTION__) _T(": building cache for %s\n"), filepath); .... }
рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд╕рдВрджреЗрд╢: V510 'рдСрдкрд░реЗрдЯрд░ ()' рдлрд╝рдВрдХреНрд╢рди рдХреЛ рджреВрд╕рд░реЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд░реНрдЧ-рдкреНрд░рдХрд╛рд░ рдЪрд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЙрдореНрдореАрдж рдирд╣реАрдВ рд╣реИ:
- svnfolderstatus.cpp 150
- svnfolderstatus.cpp 355
- svnfolderstatus.cpp 360
рдирд┐рд░реНрджрд┐рд╖реНрдЯ "% s" рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдлрд╝рдВрдХреНрд╢рди рд╡рд╛рд╕реНрддрд╡рд┐рдХ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЪрд░ 'filepath' рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рдЬрдЯрд┐рд▓ рдСрдмреНрдЬреЗрдХреНрдЯ рдЬрд┐рд╕рдореЗрдВ рдХрдИ рд▓рд╛рдЗрдиреЗрдВ рд╣реИрдВред рдореБрдЭреЗ рдпрд╣ рдХрд╣рдиреЗ рдореЗрдВ рд╣рд╛рдирд┐ рд╣реЛ рд░рд╣реА рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдкреНрд░рд┐рдВрдЯ рдЖрдЙрдЯ рд╣реЛрдЧрд╛ рдФрд░ рдХреНрдпрд╛ рдпрд╣ рдХреЛрдб рдмрд┐рд▓реНрдХреБрд▓ рдЧрд┐рд░ рдЬрд╛рдПрдЧрд╛ред
рдЗрд╕ рддрд░рд╣ рдХреЗ 'рдкреНрд░рд┐рдВрдЯрдл ()' рдЬреИрд╕реЗ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЦрддрд░рдирд╛рдХ рд╣реИ: "рдкреНрд░рд┐рдВрдЯрдл (myStr);"ред рдпрджрд┐ рдирд┐рдпрдВрддреНрд░рдг рдХреНрд╡рд╛рд▓рд┐рдлрд╝рд╛рдпрд░ 'myStr' рдХреЗ рдЕрдВрджрд░ рдореМрдЬреВрдж рд╣реИрдВ, рддреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреБрдЫ рдРрд╕рд╛ рдкреНрд░рд┐рдВрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рджреБрд░реНрдШрдЯрдирд╛рдЧреНрд░рд╕реНрдд рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдпрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
TortoiseSVN рд╕реЗ рдХреЛрдб рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ:
BOOL CPOFile::ParseFile(....) { .... printf(File.getloc().name().c_str()); .... }
рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рдореИрд╕реЗрдЬ: V618 'рдкреНрд░рд┐рдВрдЯрдл' рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХреЙрд▓ рдХрд░рдирд╛ рдЦрддрд░рдирд╛рдХ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЬреЛ рд▓рд╛рдЗрди рдкрд╛рд╕ рдХреА рдЬрд╛ рд░рд╣реА рд╣реИ, рдЙрд╕рдореЗрдВ рдкреНрд░рд╛рд░реВрдк рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рд╕реБрд░рдХреНрд╖рд┐рдд рдХреЛрдб рдХрд╛ рдЙрджрд╛рд╣рд░рдг: рдкреНрд░рд┐рдВрдЯрдл ("% s", str); pofile.cpp 158
рдпрджрд┐ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо "myfile% s% i% s.txt" рд╣реИ, рддреЛ рдкрд░рд┐рдгрд╛рдо рд╡рд┐рдирд╛рд╢рдХрд╛рд░реА рд╣реЛрдЧрд╛ред
рдиреЛрдЯред рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкреНрд░рд┐рдВрдЯрдл () рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдЦрддрд░реЛрдВ рдкрд░ рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рдиреЛрдЯ рд╣реИ редрд╕рд░рдгрд┐рдпреЛрдВ рдХрд╛ рдЧрд▓рдд рд╢реВрдиреНрдпрдХрд░рдг
рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ TortoiseSVN рдХреЗ рд▓рд┐рдП рдпрд╣ рдХрд┐рддрдирд╛ рдЦрддрд░рдирд╛рдХ рд╣реИ рдХрд┐ рд╡реЗ рдмрд┐рдирд╛ рд░реАрд╕реЗрдЯ рдХрд┐рдП рдмрдлрд╝рд░реНрд╕ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рдЫреЛрдбрд╝ рджреЗрдВред рд╢рд╛рдпрдж рдЖрдо рддреМрд░ рдкрд░ рд╕реБрд░рдХреНрд╖рд┐рддред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдмрдлрд╝рд░реНрд╕ рдХреЛ рд░реАрд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдб рд╣реИред рдФрд░ рдЪреВрдВрдХрд┐ рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИред рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддреА рд╣реИрдВ:
static void sha_mpint(SHA_State * s, Bignum b) { unsigned char lenbuf[4]; .... memset(lenbuf, 0, sizeof(lenbuf)); }
рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рдореИрд╕реЗрдЬ: V597 рдХрдВрдкрд╛рдЗрд▓рд░ 'рдореЗрдорд╕реЗрдЯ' рдлрдВрдХреНрд╢рди рдХреЙрд▓ рдХреЛ рдбрд┐рд▓реАрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ 'рд▓реЗрдирдмреНрдпреВрдл' рдмрдлрд░ рдХреЛ рдлреНрд▓рд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред RtlSecureZeroMemory () рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд┐рдЬреА рдбреЗрдЯрд╛ рдХреЛ рдорд┐рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред sshdss.c 23
рдлрд╝рдВрдХреНрд╢рди рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рд╕рд░рдгреА 'lenbuf' рдХреЛ рд╕рд╛рдлрд╝ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рддрдм рд╕реЗ рд╕рд░рдгреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝рд░ 'рдореЗрдорд╕реЗрдЯ' рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рд╣рдЯрд╛ рджреЗрдЧрд╛ред рдРрд╕рд╛ рд╣реЛрдиреЗ рд╕реЗ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд╡рд┐рд╢реЗрд╖ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдЕрдиреНрдп рд╕реНрдерд╛рдиреЛрдВ рдкрд░ рдЬрд╣рд╛рдВ рд╕рдВрдХрд▓рдХ 'рдореЗрдорд╕реЗрдЯ ()' рдХреЗ рд▓рд┐рдП рдХреЙрд▓ рдХреЛ рд╣рдЯрд╛ рджреЗрдЧрд╛:
- sshdss.c 37
- sshdss.c 587
- sshdes.c 861
- sshdes.c 874
- sshdes.c 890
- sshdes.c 906
- sshmd5.c 252
- sshrsa.c 113
- sshpubk.c 153
- sshpubk.c 361
- sshpubk.c 1121
- sshsha.c 256
рдЕрдЬреАрдм
BOOL InitInstance(HINSTANCE hResource, int nCmdShow) { .... app.hwndTT;
рдиреИрджрд╛рдирд┐рдХ тАЛтАЛрд╕рдВрджреЗрд╢: V607 рдорд╛рд▓рд┐рдХрд╛рдирд╛ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ 'app.hwTTT'ред tortoiseblame.cpp 1782
рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ, 'InitInstance ()' рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ, рд╕рджрд╕реНрдп 'hwndTT' рдХреЛ рдХрд┐рд╕реА рдЪреАрдЬрд╝ рдХреЗ рд╕рд╛рде рдЖрд░рдВрдн рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдПрдХ рдЯрд╛рдЗрдкреЛ рдХреЗ рдХрд╛рд░рдг, рдХреЛрдб рдЕрдзреВрд░рд╛ рдирд┐рдХрд▓рд╛ред
64-рдмрд┐рдЯ рддреНрд░реБрдЯрд┐рдпрд╛рдБ
рдореИрдВ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рддрд╣реА рдЦреЛрдЬ рдХрд░рддрд╛ рд╣реВрдВред рдореИрдВ рдЪреМрдХрд╕ рд╣реВрдВ, рдмрд╕ рдЗрддрдирд╛ рд╣реИ рдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рд▓реЗрдЦ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдЙрджрд╛рд╣рд░рдг рд╣реИрдВред рдирд╣реАрдВ, рдореИрдВ рдмрд╛рдпрдХ рдирд╣реАрдВ рд╣реВрдВред рдпрд╣ рд╕рд┐рд░реНрдл рдЗрддрдирд╛ рд╣реИ рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓реЗрдЦрдХ рдЕрднреА рднреА рдореБрдЭрд╕реЗ рдмреЗрд╣рддрд░ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░реЗрдВрдЧреЗред
рдореИрдВ
64-рдмрд┐рдЯ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдФрд░ рднреА рдЕрдзрд┐рдХ рд╕рддрд╣реА рд░реВрдк рд╕реЗ рджреЗрдЦрддрд╛ рд╣реВрдВред рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рд╕рдВрд░рдЪрдирд╛ рдХреЛ рдЬрд╛рдиреЗ рдмрд┐рдирд╛ рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ рдмрд╣реБрдд рдореБрд╢реНрдХрд┐рд▓ рд╣реИ, рдпрд╣ рдпрд╛ рд╡рд╣ рддреНрд░реБрдЯрд┐ рд╣реЛ рд╕рдХрддреА рд╣реИ рдпрд╛ рдирд╣реАрдВред
рдореИрдВ рдХреЗрд╡рд▓ рдХреБрдЫ рдЦрддрд░рдирд╛рдХ рд╕реНрдерд╛рдиреЛрдВ рдХреЛ рджреВрдВрдЧрд╛:
void LoginDialog::CreateModule(void) { .... DialogBoxParam(g_hmodThisDll, MAKEINTRESOURCE(IDD_LOGIN), g_hwndMain, (DLGPROC)(LoginDialogProc), (long)this); .... }
рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд╕рдВрджреЗрд╢: V220 рдкреНрд░рдХрд╛рд░ рдХреА рдХрд╛рд╕реНрдЯрд┐рдВрдЧ рдХрд╛ рд╕рдВрджрд┐рдЧреНрдз рдХреНрд░рдо: рдореЗрдорд╕рд╛рдЗрдЬрд╝ -> 32-рдмрд┐рдЯ рдкреВрд░реНрдгрд╛рдВрдХ -> рдореЗрдореНрд╕реЗрдЬрд╝ред рдбрд╛рд▓реЗ рдЬрд╛ рд░рд╣реЗ рдореВрд▓реНрдп: 'рдпрд╣'ред logindialog.cpp 105
рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕реВрдЪрдХ
рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд▓рдВрдмрд╛ рдЯрд╛рдЗрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП
рдбрд╛рд▓рд╛ рдЧрдпрд╛ рд╣реИред рдлрд┐рд░ рдЗрд╕реЗ LPARAM (LONG_PTR) рдЯрд╛рдЗрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рд╕реВрдЪрдХ рдереЛрдбрд╝реА рджреЗрд░ рдХреЗ рд▓рд┐рдП 'рд▓рдВрдмреЗ' рдореЗрдВ рдмрджрд▓ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдо 64-рдмрд┐рдЯ рд╣реИ рддреЛ рдпрд╣ рдЦрд░рд╛рдм рд╣реИред рдПрдХ рд╕реВрдЪрдХ 64 рдмрд┐рдЯреНрд╕ рдкрд░ рдХрдмреНрдЬрд╛ рдХрд░ рд▓реЗрддрд╛ рд╣реИред
Win64 рдореЗрдВ 'рд▓рдВрдмрд╛' рдкреНрд░рдХрд╛рд░ рдЕрднреА рднреА рдПрдХ 32-рдмрд┐рдЯ рдкреНрд░рдХрд╛рд░ рд╣реИред рдирддреАрдЬрддрди, 64-рдмрд┐рдЯ рдЪрд░ рдХреЗ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд┐рдЯ рдЦреЛ рдЬрд╛рдПрдВрдЧреЗред
рдпрджрд┐ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ 4 рдЬреАрдмреА рд░реИрдо рд╕реЗ рдХрдо рдореЗрдВ рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕ рддрд░рд╣ рдХреА рдШрдЯрдирд╛ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдорд╣рд╛рди рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕ рддрд░рд╣ рдХреА рддреНрд░реБрдЯрд┐ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдирд╛ рдмреЗрд╣рдж рдореБрд╢реНрдХрд┐рд▓ рд╣реИред
рд╕рд╣реА рдХреЛрдб: DialogBoxParam (...., (LPARAM) рдпрд╣);
рдПрдХ рдФрд░ рдЦрддрд░рдирд╛рдХ рдХрд╛рд╕реНрдЯ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ:
static int cmpforsearch(void *av, void *bv) { Actual_Socket b = (Actual_Socket) bv; unsigned long as = (unsigned long) av, bs = (unsigned long) b->s; if (as < bs) return -1; if (as > bs) return +1; return 0; }
рдиреИрджрд╛рдирд┐рдХ тАЛтАЛрд╕рдВрджреЗрд╢: V205 рд╕реВрдЪрдХ рдкреНрд░рдХрд╛рд░ рдХрд╛ 32-рдмрд┐рдЯ рдкреВрд░реНрдгрд╛рдВрдХ рдкреНрд░рдХрд╛рд░ рдореЗрдВ рд░реВрдкрд╛рдВрддрд░рдг: (рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рд▓рдВрдмрд╛) av:
- winnet.c 139
- winhandl.c 359
- winhandl.c 348
рдкреЙрдЗрдВрдЯрд░реНрд╕ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ 'рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рд▓рдВрдмреЗ' рдЯрд╛рдЗрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд╛рд▓реЗ рдЬрд╛рддреЗ рд╣реИрдВ рдФрд░ рдЪрд░ рдореЗрдВ 'рдП' рдФрд░ 'рдмреА рдПрд╕' рдХреЗ рд░реВрдк рдореЗрдВ рд░рдЦреЗ рдЬрд╛рддреЗ рд╣реИрдВред рдЪреВрдВрдХрд┐ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдкрддреЗ рдХреЗ рдЙрдЪреНрдЪ рдмрд┐рдЯ рдЦреЛ рд╕рдХрддреЗ рд╣реИрдВ, рддреБрд▓рдирд╛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд╕рдХрддреА рд╣реИред рдпрд╣ рдЖрдо рддреМрд░ рдкрд░ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдкреЙрдЗрдВрдЯрд░реНрд╕ рдХреЛ рдпрд╣рд╛рдВ рдкреВрд░реНрдгрд╛рдВрдХ рдкреНрд░рдХрд╛рд░реЛрдВ рдореЗрдВ рдХреНрдпреЛрдВ рдбрд╛рд▓рд╛ рдЬрд╛рддрд╛ рд╣реИред рдЖрдк рдмрд╕ рд╕рдВрдХреЗрдд рдХреА рддреБрд▓рдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдкрджрд╛рд╡рдирдд рдирд▓ рд╕реВрдЪрдХ рдЪреЗрдХ
'рдирдпрд╛' рдСрдкрд░реЗрдЯрд░, рдЬрдм рдпрд╣ рдореЗрдореЛрд░реА рдЖрд╡рдВрдЯрд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдмрд╣реБрдд рдкрд╣рд▓реЗ NULL рдирд╣реАрдВ рд▓реМрдЯрд╛ рдерд╛ред рдпрд╣ рдПрдХ рдЕрдкрд╡рд╛рдж std :: bad_alloc рдлреЗрдВрдХрддрд╛ рд╣реИред рдмреЗрд╢рдХ, рдЖрдк рдСрдкрд░реЗрдЯрд░ рдХреЛ 'рдирдпрд╛' рд░рд┐рдЯрд░реНрди 0 рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдЕрдм рдЕрдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИред
рдлрд┐рд░ рднреА, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдореЗрдВ рд░рд╣рддреЗ рд╣реИрдВ:
int _tmain(....) { .... pBuf = new char[maxlength]; if (pBuf == NULL) { _tprintf(_T("Could not allocate enough memory!\n")); delete [] wc; delete [] dst; delete [] src; return ERR_ALLOC; } .... }
рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд╕рдВрджреЗрд╢: V668 рдирд▓ рдХреЗ рдЦрд┐рд▓рд╛рдл 'pBuf' рдкреЙрдЗрдВрдЯрд░ рдХреЗ рдкрд░реАрдХреНрд╖рдг рдореЗрдВ рдХреЛрдИ рд╕рдордЭрджрд╛рд░реА рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╕реНрдореГрддрд┐ рдХреЛ 'рдирдП' рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрд╡рдВрдЯрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдореЗрдореЛрд░реА рдЖрд╡рдВрдЯрди рддреНрд░реБрдЯрд┐ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдЕрдкрд╡рд╛рдж рдЙрддреНрдкрдиреНрди рд╣реЛрдЧрд╛ред
- subwcrev.cpp 912
- repositorybrowser.cpp 2565
- repositorybrowser.cpp 4225
- svnstatuslistctct.cpp 5254
- svnprogressdlg.cpp 2357
- Bugtraqassociations.cpp 116
- xmessagebox.cpp 792
- xmessagebox.cpp 797
- hyperlink_base.cpp 166
- affixmgr.cxx 272
- hashmgr.cxx 363
- hashmgr.cxx 611
рдФрд░ рдЗрд╕рд▓рд┐рдП рдпрд╣ рдЪрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИ
рдХрдИ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬреЛ рдореБрдЭреЗ рдХреЛрдб рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░рддреЗ рд╕рдордп рд╕рд╛рдордирд╛ рдХрд░рддреЗ рд╣реИрдВ, рдореИрдВ рд▓реЗрдЦреЛрдВ рдореЗрдВ рдирд╣реАрдВ рд▓рд┐рдЦрддрд╛ рд╣реВрдВред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рд╡реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рд╣рд╕реНрддрдХреНрд╖реЗрдк рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕ рдмрд╛рд░ рдореИрдВрдиреЗ рдРрд╕реЗ рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд▓рд┐рдЦрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╣реА рдордЬреЗрджрд╛рд░ рд╕реНрдерд┐рддрд┐ рд╣реИ рдЬрдм рдХреЛрдИ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдареАрдХ рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рднрд╛рдЧреНрдп рдХреЗ рдХрд╛рд░рдг рд╣реЛрддрд╛ рд╣реИред
void CBaseView::OnContextMenu(CPoint point, DiffStates state) { .... popup.AppendMenu(MF_STRING | oWhites.HasTrailWhiteChars ? MF_ENABLED : (MF_DISABLED|MF_GRAYED), POPUPCOMMAND_REMOVETRAILWHITES, temp); .... }
рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рд╕рдВрджреЗрд╢: V502 рд╢рд╛рдпрдж '?:' рдСрдкрд░реЗрдЯрд░ рдЕрдкреЗрдХреНрд╖рд╛ рдХреЗ рдЕрдиреБрд░реВрдк рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред '?:' рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдСрдкрд░реЗрдЯрд░ рдХреА рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдХрдо рд╣реИред рдСрдкрд░реЗрдЯрд░ред baseview.cpp 2246
рдЪрд░ рдХреЗ рдорд╛рди рдХреЗ рдЖрдзрд╛рд░ рдкрд░ 'oWhites.HasTrailWhiteChars', рд╕реНрдерд┐рд░рд╛рдВрдХ рдХреЗ рд╕рдВрдпреЛрдЬрдиреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
- MF_STRING | MF_ENABLED
- MF_STRING | MF_DISABLED | MF_GRAYED
рд▓реЗрдХрд┐рди рдХреЛрдб рдЙрд╕ рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдСрдкрд░реЗрд╢рди рдкреНрд░рд╛рдердорд┐рдХрддрд╛ '|' рдСрдкрд░реЗрд╢рди рдХреА рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рд╕реЗ рдЕрдзрд┐рдХ? ''ред рд╣рдо рд╕реНрдкрд╖реНрдЯрддрд╛ рдХреЗ рд▓рд┐рдП рдХреЛрд╖реНрдардХ рдбрд╛рд▓рддреЗ рд╣реИрдВ:
(MF_STRING | oWhites.HasTrailWhiteChars) MF_ENABLED: MF_DISABLED | MF_GRAYED
рдХреЛрдб рдХреЗрд╡рд▓ рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдирд┐рд░рдВрддрд░ 'MF_STRING' 0. рд╣реИред рдкрд░рд┐рдгрд╛рдо рдкрд░ рдЗрд╕рдХрд╛ рдХреЛрдИ рдкреНрд░рднрд╛рд╡ рдирд╣реАрдВ рд╣реИред рдирддреАрдЬрддрди, рдЧрд▓рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдХрд╛рдо рдХрд░рддреА рд╣реИред
рднрд╛рдЧреНрдп рдХреЗ рдПрдХ рдФрд░ рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред TortoiseSVN рдореЗрдВ, HWND рдкреНрд░рдХрд╛рд░ рдХреЛ рдЕрдХреНрд╕рд░ 'рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд' рдкреНрд░рдХрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рд▓рд┐рдП, рд╕реНрдкрд╖реНрдЯ рдкреНрд░рдХрд╛рд░ рдХреЗ рд░реВрдкрд╛рдВрддрд░рдг рдХрд┐рдП рдЬрд╛рдиреЗ рдЪрд╛рд╣рд┐рдПред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬреИрд╕рд╛ рдХрд┐ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ:
HWND m_hWnd; UINT_PTR uId; INT_PTR CBaseView::OnToolHitTest(....) const { .... pTI->uId = (UINT)m_hWnd; .... } UINT_PTR idFrom; HWND m_hWnd; BOOL CBaseView::OnToolTipNotify( UINT, NMHDR *pNMHDR, LRESULT *pResult) { if (pNMHDR->idFrom != (UINT)m_hWnd) return FALSE; .... }
рдпрд╛, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЯрд╛рдЗрдк HWND рдХреЗ рдПрдХ рд╡реИрд░рд┐рдПрдмрд▓ рдХрд╛ рдорд╛рди рдореБрджреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреИрд╕реЗ рдХрд┐ рдпрд╣ 'рд▓рдВрдмреЗ' рдкреНрд░рдХрд╛рд░ рдХрд╛ рдерд╛ред
bool CCommonAppUtils::RunTortoiseProc(....) { .... CString sCmdLine; sCmdLine.Format(L"%s /hwnd:%ld", (LPCTSTR)sCommandLine, AfxGetMainWnd()->GetSafeHwnd()); .... }
рдФрдкрдЪрд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ, рдпрд╣ рдХреЛрдб рдЧрд▓рдд рд╣реИред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдЯрд╛рдЗрдк 'HWND' рдПрдХ рдкреЙрдЗрдВрдЯрд░ рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЗрд╕реЗ 32-рдмрд┐рдЯ рдкреВрд░реНрдгрд╛рдВрдХ рдкреНрд░рдХрд╛рд░реЛрдВ рдореЗрдВ рдирд╣реАрдВ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдФрд░ рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд┐рдВрддрд┐рдд рд╣реИрдВ, рдЪреЗрддрд╛рд╡рдиреА рджреЗ рд░рд╣реЗ рд╣реИрдВред
рд▓реЗрдХрд┐рди рджрд┐рд▓рдЪрд╕реНрдк рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдХреЛрдб рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдХрд░реЗрдЧрд╛!
HWND рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╡рд┐рднрд┐рдиреНрди рд╕рд┐рд╕реНрдЯрдо рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдВрдбреЛрдЬ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдбрд┐рд╕реНрдХреНрд░рд┐рдкреНрдЯрд░ рдХреЛ рд╕реНрдЯреЛрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕реА рдкреНрд░рдХрд╛рд░ рдХреЗ рд╣реИрдВрдгреНрдбрд▓, HMENU, HPALETTE, HBITMAP рдЗрддреНрдпрд╛рджрд┐ред
рд╣рд╛рд▓рд╛рдБрдХрд┐ рд╡рд░реНрдгрдирдХрд░реНрддрд╛ 64-рдмрд┐рдЯ рдкреЙрдЗрдВрдЯрд░реНрд╕ рд╣реИрдВ, рдЕрдзрд┐рдХ рдЕрдиреБрдХреВрд▓рддрд╛ рдХреЗ рд▓рд┐рдП (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, 32-рдмрд┐рдЯ рдФрд░ 64-рдмрд┐рдЯ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рдХреЗ рд▓рд┐рдП) рд╡реЗ рдХреЗрд╡рд▓ 32-рдмрд┐рдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП "
Microsoft рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдбреЗрдлрд┐рдирд┐рд╢рди рд▓реИрдВрдЧреНрд╡реЗрдЬ (MIDL): 64-рдмрд┐рдЯ рдкреЛрд░реНрдЯрд┐рдВрдЧ рдЧрд╛рдЗрдб " (USER рдФрд░ GDI рд╣реИрдВрдбрд▓ рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд 32b рдорд╛рди рд╣реИрдВ) рджреЗрдЦреЗрдВред
HWND рдкреНрд░рдХрд╛рд░ рдХреЛ 32-рдмрд┐рдЯ рдкреНрд░рдХрд╛рд░реЛрдВ рдореЗрдВ рд░рдЦрдиреЗ рдкрд░, рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╢рд╛рдпрдж рд╣реА рдЗрди рдорд╛рдиреНрдпрддрд╛рдУрдВ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдереЗред рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ, рдпрд╣ рдПрдХ рдмрд╣реБрдд рд╕рд╛рдл рдХреЛрдб рдирд╣реАрдВ рд╣реИ рдЬреЛ рд╡рд┐рдВрдбреЛрдЬ рдПрдкреАрдЖрдИ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рднрд╛рдЧреНрдп рдФрд░ рдкреНрд░рдпрд╛рд╕реЛрдВ рдХреЗ рдХрд╛рд░рдг рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдирд┐рд╖реНрдХрд░реНрд╖
рд╡рд┐рдХрд╛рд╕ рдХреЗ рджреМрд░рд╛рди рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ рд╕реНрдереИрддрд┐рдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдФрд░ рдЖрдк рд╢реБрд░реБрдЖрддреА рдЪрд░рдгреЛрдВ рдореЗрдВ рдХрдИ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдкрд╛рдПрдВрдЧреЗред рдореИрдВ рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ рдЖрдк рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ
рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдХреЛрдб рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХрдИ рдЕрдиреНрдп рдЕрдЪреНрдЫреЗ рдХреЛрдб рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рд╣реИрдВ:
рд╕реНрдерд┐рд░ рдХреЛрдб рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдЙрдкрдХрд░рдг ред
рд╕рдВрджрд░реНрдн
рдЕрддрд┐рд░рд┐рдХреНрдд рд▓рд┐рдВрдХ рдЬреЛ рд▓реЗрдЦ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдХреБрдЫ рд╕реВрдХреНрд╖реНрдо рдмрд┐рдВрджреБрдУрдВ рдХреЛ рд╕реНрдкрд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
- рдЬреНрдЮрд╛рди рдХрд╛ рдЖрдзрд╛рд░ред рдУрд╡рд░рд░рд╛рдЗрдЯрд┐рдВрдЧ рдореЗрдореЛрд░реА - рдХреНрдпреЛрдВ?
- рдкреНрд░рд▓реЗрдЦрдиред V668ред рдЕрд╢рдХреНрдд рдХреЗ рдЦрд┐рд▓рд╛рдл рд╕реВрдЪрдХ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдореЗрдВ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╕реНрдореГрддрд┐ рдХреЛ 'рдирдП' рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрд╡рдВрдЯрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
- рдЬреНрдЮрд╛рди рдХрд╛ рдЖрдзрд╛рд░ред 64-рдмрд┐рдЯ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдореЗрдВ рдЗрдВрдЯреНрд░реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреЙрдЗрдВрдЯрд░ рдХреЛ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдХреИрд╕реЗ рдбрд╛рд▓реЗрдВ?
- рдХрд╛рд░реНрдкреЛрд╡ рдПрдВрдбреНрд░реА, рдПрд╡реНрдЬреЗрдиреА рд░рдпрдЬрд╝рдХреЛрд╡ред 64-рдмрд┐рдЯ C / C ++ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рд╕рдмрдХ ред