ReactOS.org
Sign In
Sign Up
Sign In
Sign Up
Manage this list
×
Keyboard Shortcuts
Thread View
j
: Next unread message
k
: Previous unread message
j a
: Jump to all threads
j l
: Jump to MailingList overview
2024
December
November
October
September
August
July
June
May
April
March
February
January
2023
December
November
October
September
August
July
June
May
April
March
February
January
2022
December
November
October
September
August
July
June
May
April
March
February
January
2021
December
November
October
September
August
July
June
May
April
March
February
January
2020
December
November
October
September
August
July
June
May
April
March
February
January
2019
December
November
October
September
August
July
June
May
April
March
February
January
2018
December
November
October
September
August
July
June
May
April
March
February
January
2017
December
November
October
September
August
July
June
May
April
March
February
January
2016
December
November
October
September
August
July
June
May
April
March
February
January
2015
December
November
October
September
August
July
June
May
April
March
February
January
2014
December
November
October
September
August
July
June
May
April
March
February
January
2013
December
November
October
September
August
July
June
May
April
March
February
January
2012
December
November
October
September
August
July
June
May
April
March
February
January
2011
December
November
October
September
August
July
June
May
April
March
February
January
2010
December
November
October
September
August
July
June
May
April
March
February
January
2009
December
November
October
September
August
July
June
May
April
March
February
January
2008
December
November
October
September
August
July
June
May
April
March
February
January
2007
December
November
October
September
August
July
June
May
April
March
February
January
2006
December
November
October
September
August
July
June
May
April
March
February
January
2005
December
November
October
September
August
July
June
May
April
March
February
January
2004
December
November
October
September
August
July
June
May
April
March
February
List overview
Download
Ros-diffs
August 2016
----- 2024 -----
December 2024
November 2024
October 2024
September 2024
August 2024
July 2024
June 2024
May 2024
April 2024
March 2024
February 2024
January 2024
----- 2023 -----
December 2023
November 2023
October 2023
September 2023
August 2023
July 2023
June 2023
May 2023
April 2023
March 2023
February 2023
January 2023
----- 2022 -----
December 2022
November 2022
October 2022
September 2022
August 2022
July 2022
June 2022
May 2022
April 2022
March 2022
February 2022
January 2022
----- 2021 -----
December 2021
November 2021
October 2021
September 2021
August 2021
July 2021
June 2021
May 2021
April 2021
March 2021
February 2021
January 2021
----- 2020 -----
December 2020
November 2020
October 2020
September 2020
August 2020
July 2020
June 2020
May 2020
April 2020
March 2020
February 2020
January 2020
----- 2019 -----
December 2019
November 2019
October 2019
September 2019
August 2019
July 2019
June 2019
May 2019
April 2019
March 2019
February 2019
January 2019
----- 2018 -----
December 2018
November 2018
October 2018
September 2018
August 2018
July 2018
June 2018
May 2018
April 2018
March 2018
February 2018
January 2018
----- 2017 -----
December 2017
November 2017
October 2017
September 2017
August 2017
July 2017
June 2017
May 2017
April 2017
March 2017
February 2017
January 2017
----- 2016 -----
December 2016
November 2016
October 2016
September 2016
August 2016
July 2016
June 2016
May 2016
April 2016
March 2016
February 2016
January 2016
----- 2015 -----
December 2015
November 2015
October 2015
September 2015
August 2015
July 2015
June 2015
May 2015
April 2015
March 2015
February 2015
January 2015
----- 2014 -----
December 2014
November 2014
October 2014
September 2014
August 2014
July 2014
June 2014
May 2014
April 2014
March 2014
February 2014
January 2014
----- 2013 -----
December 2013
November 2013
October 2013
September 2013
August 2013
July 2013
June 2013
May 2013
April 2013
March 2013
February 2013
January 2013
----- 2012 -----
December 2012
November 2012
October 2012
September 2012
August 2012
July 2012
June 2012
May 2012
April 2012
March 2012
February 2012
January 2012
----- 2011 -----
December 2011
November 2011
October 2011
September 2011
August 2011
July 2011
June 2011
May 2011
April 2011
March 2011
February 2011
January 2011
----- 2010 -----
December 2010
November 2010
October 2010
September 2010
August 2010
July 2010
June 2010
May 2010
April 2010
March 2010
February 2010
January 2010
----- 2009 -----
December 2009
November 2009
October 2009
September 2009
August 2009
July 2009
June 2009
May 2009
April 2009
March 2009
February 2009
January 2009
----- 2008 -----
December 2008
November 2008
October 2008
September 2008
August 2008
July 2008
June 2008
May 2008
April 2008
March 2008
February 2008
January 2008
----- 2007 -----
December 2007
November 2007
October 2007
September 2007
August 2007
July 2007
June 2007
May 2007
April 2007
March 2007
February 2007
January 2007
----- 2006 -----
December 2006
November 2006
October 2006
September 2006
August 2006
July 2006
June 2006
May 2006
April 2006
March 2006
February 2006
January 2006
----- 2005 -----
December 2005
November 2005
October 2005
September 2005
August 2005
July 2005
June 2005
May 2005
April 2005
March 2005
February 2005
January 2005
----- 2004 -----
December 2004
November 2004
October 2004
September 2004
August 2004
July 2004
June 2004
May 2004
April 2004
March 2004
February 2004
ros-diffs@reactos.org
20 participants
462 discussions
Start a n
N
ew thread
[hbelusca] 72438: [CMAKE]: Update baseaddress_msvc.cmake with the updated scripts from CORE-11382 , after the recent translations of some of the message compiler files.
by hbelusca@svn.reactos.org
Author: hbelusca Date: Tue Aug 23 12:15:12 2016 New Revision: 72438 URL:
http://svn.reactos.org/svn/reactos?rev=72438&view=rev
Log: [CMAKE]: Update baseaddress_msvc.cmake with the updated scripts from CORE-11382 , after the recent translations of some of the message compiler files. Modified: trunk/reactos/sdk/cmake/baseaddress_msvc.cmake Modified: trunk/reactos/sdk/cmake/baseaddress_msvc.cmake URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/sdk/cmake/baseaddress_msvc…
============================================================================== --- trunk/reactos/sdk/cmake/baseaddress_msvc.cmake [iso-8859-1] (original) +++ trunk/reactos/sdk/cmake/baseaddress_msvc.cmake [iso-8859-1] Tue Aug 23 12:15:12 2016 @@ -1,346 +1,360 @@ -set(baseaddress_ntdll 0x7c920000) # should be above 0x7c920000 -set(baseaddress_kernel32 0x7c7c0000) -set(baseaddress_msvcrt 0x7c750000) -set(baseaddress_advapi32 0x7c6e0000) -set(baseaddress_gdi32 0x7c690000) -set(baseaddress_user32 0x7c570000) -set(baseaddress_dhcpcsvc 0x7c530000) -set(baseaddress_dnsapi 0x7c4f0000) -set(baseaddress_icmp 0x7c4d0000) -set(baseaddress_iphlpapi 0x7c4a0000) -set(baseaddress_ws2_32 0x7c470000) -set(baseaddress_ws2help 0x7c450000) -set(baseaddress_shlwapi 0x7c3e0000) -set(baseaddress_rpcrt4 0x7c350000) -set(baseaddress_comctl32 0x7c250000) -set(baseaddress_ole32 0x7c150000) -set(baseaddress_winspool.drv 0x7c130000) -set(baseaddress_winmm 0x7c090000) -set(baseaddress_comdlg32 0x7bfc0000) -set(baseaddress_shell32 0x7b290000) -set(baseaddress_lz32 0x7b270000) -set(baseaddress_version 0x7b250000) -set(baseaddress_oleaut32 0x7b140000) -set(baseaddress_setupapi 0x7afc0000) -set(baseaddress_mpr 0x7af90000) -set(baseaddress_crypt32 0x7aed0000) -set(baseaddress_wininet 0x7ae50000) -set(baseaddress_urlmon 0x7adb0000) -set(baseaddress_psapi 0x7ad90000) -set(baseaddress_imm32 0x7ad60000) -set(baseaddress_msvfw32 0x7ad30000) -set(baseaddress_dbghelp 0x7acc0000) -set(baseaddress_devmgr 0x7ac40000) -set(baseaddress_msacm32 0x7ac10000) -set(baseaddress_netapi32 0x7abc0000) -set(baseaddress_powrprof 0x7aba0000) -set(baseaddress_secur32 0x7ab70000) -set(baseaddress_wintrust 0x7ab30000) -set(baseaddress_avicap32 0x7ab10000) -set(baseaddress_cabinet 0x7aad0000) -set(baseaddress_dsound 0x7aa70000) -set(baseaddress_glu32 0x7a9e0000) -set(baseaddress_opengl32 0x7a850000) -set(baseaddress_riched20 0x7a7d0000) -set(baseaddress_smdll 0x7a7b0000) -set(baseaddress_userenv 0x7a770000) -set(baseaddress_uxtheme 0x7a730000) -set(baseaddress_cryptui 0x7a6a0000) -set(baseaddress_csrsrv 0x7a670000) -set(baseaddress_basesrv 0x7a650000) -set(baseaddress_consrv 0x7a630000) -set(baseaddress_winsrv 0x7a590000) -set(baseaddress_dplayx 0x7a540000) -set(baseaddress_gdiplus 0x7a4c0000) -set(baseaddress_msimg32 0x7a4a0000) -set(baseaddress_mswsock 0x7a480000) -set(baseaddress_oledlg 0x7a440000) -set(baseaddress_rasapi32 0x7a420000) -set(baseaddress_rsaenh 0x7a3d0000) -set(baseaddress_samlib 0x7a3a0000) -set(baseaddress_sensapi 0x7a380000) -set(baseaddress_sfc_os 0x7a360000) -set(baseaddress_snmpapi 0x7a340000) -set(baseaddress_spoolss 0x7a310000) -set(baseaddress_usp10 0x7a2b0000) -set(baseaddress_acledit 0x7a290000) -set(baseaddress_aclui 0x7a260000) -set(baseaddress_activeds 0x7a240000) -set(baseaddress_actxprxy 0x7a140000) -set(baseaddress_advpack 0x7a110000) -set(baseaddress_amstream 0x7a0d0000) -set(baseaddress_atl 0x7a0a0000) -set(baseaddress_atl100 0x7a070000) -set(baseaddress_atl80 0x7a040000) -set(baseaddress_authz 0x7a020000) -set(baseaddress_avifil32 0x79fd0000) -set(baseaddress_batt 0x79fa0000) -set(baseaddress_bcrypt 0x79f80000) -set(baseaddress_beepmidi 0x79f60000) -set(baseaddress_browseui 0x79ee0000) -set(baseaddress_cards 0x79e20000) -set(baseaddress_cfgmgr32 0x79e00000) -set(baseaddress_clusapi 0x79de0000) -set(baseaddress_comcat 0x79dc0000) -set(baseaddress_compstui 0x79da0000) -set(baseaddress_console 0x79d30000) -set(baseaddress_credui 0x79cf0000) -set(baseaddress_crtdll 0x79ca0000) -set(baseaddress_cryptdlg 0x79c70000) -set(baseaddress_cryptdll 0x79c50000) -set(baseaddress_cryptnet 0x79c30000) -set(baseaddress_d3d8 0x79bf0000) -set(baseaddress_d3d8thk 0x79bd0000) -set(baseaddress_d3d9 0x79b80000) -set(baseaddress_d3dcompiler_43 0x79af0000) -set(baseaddress_d3drm 0x79a90000) -set(baseaddress_d3dwine 0x798c0000) -set(baseaddress_d3dx9_24 0x798a0000) -set(baseaddress_d3dx9_25 0x79870000) -set(baseaddress_d3dx9_26 0x79850000) -set(baseaddress_d3dx9_27 0x79830000) -set(baseaddress_d3dx9_28 0x79810000) -set(baseaddress_d3dx9_29 0x797f0000) -set(baseaddress_d3dx9_30 0x797d0000) -set(baseaddress_d3dx9_31 0x797b0000) -set(baseaddress_d3dx9_32 0x79790000) -set(baseaddress_d3dx9_33 0x79770000) -set(baseaddress_d3dx9_34 0x79750000) -set(baseaddress_d3dx9_35 0x79730000) -set(baseaddress_d3dx9_36 0x79690000) -set(baseaddress_d3dx9_37 0x79670000) -set(baseaddress_d3dx9_38 0x79650000) -set(baseaddress_d3dx9_39 0x79630000) -set(baseaddress_d3dx9_40 0x79610000) -set(baseaddress_d3dx9_41 0x795f0000) -set(baseaddress_d3dx9_42 0x795d0000) -set(baseaddress_d3dx9_43 0x795b0000) -set(baseaddress_d3dxof 0x79580000) -set(baseaddress_dciman32 0x79560000) -set(baseaddress_ddraw 0x794e0000) -set(baseaddress_deskadp 0x794b0000) -set(baseaddress_deskmon 0x79480000) -set(baseaddress_devcpux 0x79460000) -set(baseaddress_devenum 0x79430000) -set(baseaddress_dinput 0x793f0000) -set(baseaddress_dinput8 0x793d0000) -set(baseaddress_dmusic 0x79390000) -set(baseaddress_dplay 0x79370000) -set(baseaddress_dwmapi 0x79350000) -set(baseaddress_dxdiagn 0x79320000) -set(baseaddress_dxgi 0x792f0000) -set(baseaddress_faultrep 0x792d0000) -set(baseaddress_fltlib 0x792b0000) -set(baseaddress_fmifs 0x79290000) -set(baseaddress_fontext 0x79270000) -set(baseaddress_framebuf 0x79250000) -set(baseaddress_framebuf_new 0x79230000) -set(baseaddress_framedyn 0x79210000) -set(baseaddress_genincdata 0x791e0000) -set(baseaddress_getuname 0x78f10000) -set(baseaddress_hid 0x78ef0000) -set(baseaddress_hlink 0x78ec0000) -set(baseaddress_hnetcfg 0x78e90000) -set(baseaddress_httpapi 0x78e70000) -set(baseaddress_iccvid 0x78e50000) -set(baseaddress_ieframe 0x78dd0000) -set(baseaddress_iernonce 0x78db0000) -set(baseaddress_imagehlp 0x78d90000) -set(baseaddress_inetcomm 0x78d50000) -set(baseaddress_inetmib1 0x78d30000) -set(baseaddress_initpki 0x78d10000) -set(baseaddress_input 0x78cc0000) -set(baseaddress_inseng 0x78ca0000) -set(baseaddress_iologmsg 0x78c80000) -set(baseaddress_itircl 0x78c60000) -set(baseaddress_itss 0x78c30000) -set(baseaddress_jscript 0x78ba0000) -set(baseaddress_jsproxy 0x78b80000) -set(baseaddress_kbsdll 0x78b60000) -set(baseaddress_kdvbox 0x78b20000) -set(baseaddress_kernel32_vista 0x78b00000) -set(baseaddress_ksuser 0x78ae0000) -set(baseaddress_libjpeg 0x78a80000) -set(baseaddress_libpng 0x78a20000) -set(baseaddress_libtiff 0x78970000) -set(baseaddress_libxslt 0x787d0000) -set(baseaddress_loadperf 0x787b0000) -set(baseaddress_localspl 0x78780000) -set(baseaddress_localui 0x78750000) -set(baseaddress_lpk 0x78730000) -set(baseaddress_lsasrv 0x786f0000) -set(baseaddress_mapi32 0x786c0000) -set(baseaddress_mciavi32 0x78690000) -set(baseaddress_mcicda 0x78670000) -set(baseaddress_mciqtz32 0x78640000) -set(baseaddress_mciseq 0x78610000) -set(baseaddress_mciwave 0x785e0000) -set(baseaddress_mgmtapi 0x785c0000) -set(baseaddress_midimap 0x785a0000) -set(baseaddress_mlang 0x78570000) -set(baseaddress_mmdevapi 0x78540000) -set(baseaddress_mmdrv 0x78520000) -set(baseaddress_modemui 0x784b0000) -set(baseaddress_mprapi 0x78480000) -set(baseaddress_msafd 0x78450000) -set(baseaddress_mscat32 0x78430000) -set(baseaddress_mscms 0x78400000) -set(baseaddress_mscoree 0x783c0000) -set(baseaddress_msctf 0x78380000) -set(baseaddress_msdmo 0x78360000) -set(baseaddress_msftedit 0x78340000) -set(baseaddress_msgina 0x782c0000) -set(baseaddress_mshtml 0x78150000) -set(baseaddress_msi 0x78080000) -set(baseaddress_msimtf 0x78060000) -set(baseaddress_msisip 0x78040000) -set(baseaddress_mspatcha 0x78020000) -set(baseaddress_msports 0x77ff0000) -set(baseaddress_msrle32 0x77fc0000) -set(baseaddress_mssign32 0x77fa0000) -set(baseaddress_mssip32 0x77f80000) -set(baseaddress_mstask 0x77f50000) -set(baseaddress_msv1_0 0x77f30000) -set(baseaddress_msvcrt20 0x77eb0000) -set(baseaddress_msvcrt40 0x77e30000) -set(baseaddress_msvidc32 0x77e10000) -set(baseaddress_msxml 0x77de0000) -set(baseaddress_msxml2 0x77db0000) -set(baseaddress_msxml3 0x77b90000) -set(baseaddress_msxml4 0x77b50000) -set(baseaddress_msxml6 0x77b10000) -set(baseaddress_mycomput 0x77af0000) -set(baseaddress_nddeapi 0x77ad0000) -set(baseaddress_netcfgx 0x77a60000) -set(baseaddress_netevent 0x77a40000) -set(baseaddress_netid 0x77a00000) -set(baseaddress_netshell 0x779a0000) -set(baseaddress_newdev 0x77950000) -set(baseaddress_npptools 0x77930000) -set(baseaddress_ntdsapi 0x77910000) -set(baseaddress_ntlanman 0x778f0000) -set(baseaddress_ntmarta 0x778d0000) -set(baseaddress_ntobjshex 0x77850000) -set(baseaddress_ntprint 0x77830000) -set(baseaddress_objsel 0x77810000) -set(baseaddress_odbc32 0x777e0000) -set(baseaddress_odbccp32 0x777c0000) -set(baseaddress_oleacc 0x77770000) -set(baseaddress_olecli32 0x77750000) -set(baseaddress_olepro32 0x77730000) -set(baseaddress_olesvr32 0x77710000) -set(baseaddress_olethk32 0x776f0000) -set(baseaddress_pdh 0x776c0000) -set(baseaddress_pidgen 0x776a0000) -set(baseaddress_printui 0x77680000) -set(baseaddress_propsys 0x77650000) -set(baseaddress_pstorec 0x77630000) -set(baseaddress_qedit 0x77600000) -set(baseaddress_qmgr 0x775d0000) -set(baseaddress_qmgrprxy 0x77590000) -set(baseaddress_quartz 0x774b0000) -set(baseaddress_query 0x77490000) -set(baseaddress_rasadhlp 0x77470000) -set(baseaddress_rasdlg 0x772a0000) -set(baseaddress_rasman 0x77270000) -set(baseaddress_resutils 0x77250000) -set(baseaddress_riched32 0x77230000) -set(baseaddress_rsabase 0x77210000) -set(baseaddress_rshell 0x771c0000) -set(baseaddress_samsrv 0x77170000) -set(baseaddress_sccbase 0x77150000) -set(baseaddress_schannel 0x77120000) -set(baseaddress_schedsvc 0x77100000) -set(baseaddress_scrrun 0x770c0000) -set(baseaddress_security 0x770a0000) -set(baseaddress_serialui 0x77080000) -set(baseaddress_sfc 0x77060000) -set(baseaddress_shdoclc 0x77020000) -set(baseaddress_shdocvw 0x76fe0000) -set(baseaddress_shfolder 0x76fc0000) -set(baseaddress_shimgvw 0x76f80000) -set(baseaddress_slayer 0x76f50000) -set(baseaddress_slbcsp 0x76f30000) -set(baseaddress_sndblst 0x76f10000) -set(baseaddress_softpub 0x76ef0000) -set(baseaddress_srclient 0x76ed0000) -set(baseaddress_srvsvc 0x76ea0000) -set(baseaddress_sti 0x76e70000) -set(baseaddress_stobject 0x76e20000) -set(baseaddress_streamci 0x76e00000) -set(baseaddress_sxs 0x76de0000) -set(baseaddress_syssetup 0x76d40000) -set(baseaddress_t2embed 0x76d20000) -set(baseaddress_tapi32 0x76cf0000) -set(baseaddress_tapiui 0x76c70000) -set(baseaddress_testvdd 0x76c50000) -set(baseaddress_themeui 0x76c30000) -set(baseaddress_traffic 0x76c10000) -set(baseaddress_twain_32 0x76bf0000) -set(baseaddress_uext2 0x76bc0000) -set(baseaddress_ufat 0x76ba0000) -set(baseaddress_ufatx 0x76b80000) -set(baseaddress_umpnpmgr 0x76b50000) -set(baseaddress_untfs 0x76b30000) -set(baseaddress_updspapi 0x76b10000) -set(baseaddress_url 0x76af0000) -set(baseaddress_vbscript 0x76a90000) -set(baseaddress_vdmdbg 0x76a70000) -set(baseaddress_wbemdisp 0x76a40000) -set(baseaddress_wbemprox 0x76a00000) -set(baseaddress_windowscodecs 0x76960000) -set(baseaddress_windowscodecsext 0x76940000) -set(baseaddress_winfax 0x76920000) -set(baseaddress_wing32 0x76900000) -set(baseaddress_winhttp 0x768c0000) -set(baseaddress_winscard 0x768a0000) -set(baseaddress_winsta 0x76870000) -set(baseaddress_wkssvc 0x76850000) -set(baseaddress_wlanapi 0x76830000) -set(baseaddress_wldap32 0x76800000) -set(baseaddress_wlnotify 0x767e0000) -set(baseaddress_wmi 0x767c0000) -set(baseaddress_wmisvc 0x767a0000) -set(baseaddress_wmiutils 0x76770000) -set(baseaddress_ws2_32_new 0x76740000) -set(baseaddress_wshirda 0x76720000) -set(baseaddress_wshtcpip 0x76700000) -set(baseaddress_wsock32 0x766e0000) -set(baseaddress_wtsapi32 0x766c0000) -set(baseaddress_wuapi 0x76690000) -set(baseaddress_xinput1_1 0x76670000) -set(baseaddress_xinput1_2 0x76650000) -set(baseaddress_xinput1_3 0x76630000) -set(baseaddress_xinput9_1_0 0x76610000) -set(baseaddress_xmllite 0x765e0000) -set(baseaddress_access 0x76570000) -set(baseaddress_appwiz 0x76500000) -set(baseaddress_cmicpl 0x764d0000) -set(baseaddress_desk 0x76450000) -set(baseaddress_hdwwiz 0x763d0000) -set(baseaddress_hhctrl 0x76390000) -set(baseaddress_imaadp32.acm 0x76370000) -set(baseaddress_inetcpl 0x762f0000) -set(baseaddress_intl 0x76290000) -set(baseaddress_joy 0x76250000) -set(baseaddress_main 0x761b0000) -set(baseaddress_mmsys 0x760c0000) -set(baseaddress_msacm32.drv 0x76090000) -set(baseaddress_msadp32.acm 0x76070000) -set(baseaddress_msg711.acm 0x76050000) -set(baseaddress_msgsm32.acm 0x76030000) -set(baseaddress_msisys 0x76010000) -set(baseaddress_ncpa 0x75ff0000) -set(baseaddress_odbccp32i 0x75fd0000) -set(baseaddress_powercfg 0x75f70000) -set(baseaddress_sysdm 0x75ea0000) -set(baseaddress_telephon 0x75e80000) -set(baseaddress_timedate 0x75e30000) -set(baseaddress_usrmgr 0x75de0000) -set(baseaddress_wdmaud.drv 0x75c40000) -set(baseaddress_wined3dcfg 0x75c10000) -set(baseaddress_winemp3.acm 0x75ba0000) -set(baseaddress_wshom 0x75b70000) -set(baseaddress_fusion 0x75a00000) -set(baseaddress_fusion_1_1 0x759e0000) -set(baseaddress_fusion_2_0 0x759b0000) +set(baseaddress_ntdll 0x7c920000) +set(baseaddress_kernel32 0x7c790000) +set(baseaddress_msvcrt 0x7c720000) +set(baseaddress_advapi32 0x7c6b0000) +set(baseaddress_gdi32 0x7c660000) +set(baseaddress_user32 0x7c560000) +set(baseaddress_dhcpcsvc 0x7c520000) +set(baseaddress_dnsapi 0x7c4e0000) +set(baseaddress_icmp 0x7c4c0000) +set(baseaddress_iphlpapi 0x7c490000) +set(baseaddress_ws2_32 0x7c460000) +set(baseaddress_ws2help 0x7c440000) +set(baseaddress_shlwapi 0x7c3e0000) +set(baseaddress_rpcrt4 0x7c350000) +set(baseaddress_comctl32 0x7c240000) +set(baseaddress_ole32 0x7c130000) +set(baseaddress_winspool.drv 0x7c110000) +set(baseaddress_winmm 0x7c070000) +set(baseaddress_comdlg32 0x7bfa0000) +set(baseaddress_shell32 0x7b6d0000) +set(baseaddress_lz32 0x7b6b0000) +set(baseaddress_version 0x7b690000) +set(baseaddress_oleaut32 0x7b580000) +set(baseaddress_setupapi 0x7b460000) +set(baseaddress_mpr 0x7b430000) +set(baseaddress_crypt32 0x7b370000) +set(baseaddress_wininet 0x7b2f0000) +set(baseaddress_urlmon 0x7b250000) +set(baseaddress_psapi 0x7b230000) +set(baseaddress_imm32 0x7b200000) +set(baseaddress_msvfw32 0x7b1c0000) +set(baseaddress_dbghelp 0x7b150000) +set(baseaddress_devmgr 0x7b0b0000) +set(baseaddress_msacm32 0x7b080000) +set(baseaddress_netapi32 0x7b030000) +set(baseaddress_powrprof 0x7b010000) +set(baseaddress_secur32 0x7afe0000) +set(baseaddress_wintrust 0x7afa0000) +set(baseaddress_avicap32 0x7af80000) +set(baseaddress_cabinet 0x7af40000) +set(baseaddress_dsound 0x7aee0000) +set(baseaddress_glu32 0x7ae70000) +set(baseaddress_opengl32 0x7ad20000) +set(baseaddress_riched20 0x7aca0000) +set(baseaddress_smdll 0x7ac80000) +set(baseaddress_userenv 0x7ac40000) +set(baseaddress_uxtheme 0x7ac00000) +set(baseaddress_cryptui 0x7ab70000) +set(baseaddress_csrsrv 0x7ab40000) +set(baseaddress_basesrv 0x7ab20000) +set(baseaddress_winsrv 0x7aac0000) +set(baseaddress_dplayx 0x7aa70000) +set(baseaddress_gdiplus 0x7a9f0000) +set(baseaddress_msimg32 0x7a9d0000) +set(baseaddress_mswsock 0x7a9b0000) +set(baseaddress_oledlg 0x7a970000) +set(baseaddress_rasapi32 0x7a950000) +set(baseaddress_rsaenh 0x7a900000) +set(baseaddress_samlib 0x7a8d0000) +set(baseaddress_sensapi 0x7a8b0000) +set(baseaddress_sfc_os 0x7a890000) +set(baseaddress_snmpapi 0x7a870000) +set(baseaddress_spoolss 0x7a840000) +set(baseaddress_usp10 0x7a7e0000) +set(baseaddress_aclayers 0x7a7c0000) +set(baseaddress_acledit 0x7a7a0000) +set(baseaddress_aclui 0x7a770000) +set(baseaddress_acppage 0x7a740000) +set(baseaddress_activeds 0x7a720000) +set(baseaddress_actxprxy 0x7a610000) +set(baseaddress_advapi32_vista 0x7a5f0000) +set(baseaddress_advpack 0x7a5c0000) +set(baseaddress_amstream 0x7a590000) +set(baseaddress_apphelp 0x7a560000) +set(baseaddress_atl 0x7a530000) +set(baseaddress_atl100 0x7a500000) +set(baseaddress_atl80 0x7a4d0000) +set(baseaddress_authz 0x7a4b0000) +set(baseaddress_avifil32 0x7a460000) +set(baseaddress_batt 0x7a440000) +set(baseaddress_bcrypt 0x7a420000) +set(baseaddress_beepmidi 0x7a400000) +set(baseaddress_browseui 0x7a380000) +set(baseaddress_cards 0x7a2c0000) +set(baseaddress_cfgmgr32 0x7a2a0000) +set(baseaddress_clusapi 0x7a280000) +set(baseaddress_comcat 0x7a260000) +set(baseaddress_compstui 0x7a240000) +set(baseaddress_console 0x7a200000) +set(baseaddress_credui 0x7a1c0000) +set(baseaddress_crtdll 0x7a180000) +set(baseaddress_cryptdlg 0x7a150000) +set(baseaddress_cryptdll 0x7a130000) +set(baseaddress_cryptnet 0x7a110000) +set(baseaddress_d3d8 0x7a0d0000) +set(baseaddress_d3d8thk 0x7a0b0000) +set(baseaddress_d3d9 0x7a060000) +set(baseaddress_d3dcompiler_43 0x79fd0000) +set(baseaddress_d3drm 0x79f70000) +set(baseaddress_d3dwine 0x79d90000) +set(baseaddress_d3dx9_24 0x79d70000) +set(baseaddress_d3dx9_25 0x79d40000) +set(baseaddress_d3dx9_26 0x79d20000) +set(baseaddress_d3dx9_27 0x79d00000) +set(baseaddress_d3dx9_28 0x79ce0000) +set(baseaddress_d3dx9_29 0x79cc0000) +set(baseaddress_d3dx9_30 0x79ca0000) +set(baseaddress_d3dx9_31 0x79c80000) +set(baseaddress_d3dx9_32 0x79c60000) +set(baseaddress_d3dx9_33 0x79c40000) +set(baseaddress_d3dx9_34 0x79c20000) +set(baseaddress_d3dx9_35 0x79c00000) +set(baseaddress_d3dx9_36 0x79b60000) +set(baseaddress_d3dx9_37 0x79b40000) +set(baseaddress_d3dx9_38 0x79b20000) +set(baseaddress_d3dx9_39 0x79b00000) +set(baseaddress_d3dx9_40 0x79ae0000) +set(baseaddress_d3dx9_41 0x79ac0000) +set(baseaddress_d3dx9_42 0x79aa0000) +set(baseaddress_d3dx9_43 0x79a80000) +set(baseaddress_d3dxof 0x79a50000) +set(baseaddress_dciman32 0x79a30000) +set(baseaddress_ddraw 0x799b0000) +set(baseaddress_deskadp 0x79980000) +set(baseaddress_deskmon 0x79960000) +set(baseaddress_devcpux 0x79940000) +set(baseaddress_devenum 0x79910000) +set(baseaddress_dinput 0x798d0000) +set(baseaddress_dinput8 0x798b0000) +set(baseaddress_dmusic 0x79880000) +set(baseaddress_dplay 0x79860000) +set(baseaddress_dxdiagn 0x79830000) +set(baseaddress_esent 0x79810000) +set(baseaddress_faultrep 0x797f0000) +set(baseaddress_fltlib 0x797d0000) +set(baseaddress_fmifs 0x797b0000) +set(baseaddress_fontext 0x79790000) +set(baseaddress_fontsub 0x79770000) +set(baseaddress_framebuf 0x79750000) +set(baseaddress_framebuf_new 0x79730000) +set(baseaddress_framedyn 0x79710000) +set(baseaddress_genincdata 0x796e0000) +set(baseaddress_getuname 0x79410000) +set(baseaddress_hid 0x793f0000) +set(baseaddress_hlink 0x793c0000) +set(baseaddress_hnetcfg 0x79390000) +set(baseaddress_httpapi 0x79370000) +set(baseaddress_iccvid 0x79350000) +set(baseaddress_ieframe 0x792d0000) +set(baseaddress_iernonce 0x792a0000) +set(baseaddress_imagehlp 0x79280000) +set(baseaddress_inetcomm 0x79240000) +set(baseaddress_inetmib1 0x79220000) +set(baseaddress_initpki 0x79200000) +set(baseaddress_input 0x791a0000) +set(baseaddress_inseng 0x79180000) +set(baseaddress_iologmsg 0x79160000) +set(baseaddress_itircl 0x79140000) +set(baseaddress_itss 0x79110000) +set(baseaddress_jscript 0x79080000) +set(baseaddress_jsproxy 0x79060000) +set(baseaddress_kbsdll 0x79040000) +set(baseaddress_kernel32_vista 0x79020000) +set(baseaddress_ksuser 0x79000000) +set(baseaddress_libjpeg 0x78fa0000) +set(baseaddress_libpng 0x78f40000) +set(baseaddress_libtiff 0x78ed0000) +set(baseaddress_libxslt 0x78da0000) +set(baseaddress_loadperf 0x78d80000) +set(baseaddress_localspl 0x78d50000) +set(baseaddress_localui 0x78d20000) +set(baseaddress_lpk 0x78d00000) +set(baseaddress_lsasrv 0x78cb0000) +set(baseaddress_mapi32 0x78c80000) +set(baseaddress_mciavi32 0x78c50000) +set(baseaddress_mcicda 0x78c30000) +set(baseaddress_mciqtz32 0x78c00000) +set(baseaddress_mciseq 0x78bd0000) +set(baseaddress_mciwave 0x78ba0000) +set(baseaddress_mgmtapi 0x78b80000) +set(baseaddress_midimap 0x78b60000) +set(baseaddress_mlang 0x78b30000) +set(baseaddress_mmdrv 0x78b10000) +set(baseaddress_modemui 0x78aa0000) +set(baseaddress_mprapi 0x78a80000) +set(baseaddress_msafd 0x78a50000) +set(baseaddress_mscat32 0x78a30000) +set(baseaddress_mscms 0x78a00000) +set(baseaddress_mscoree 0x789c0000) +set(baseaddress_msctf 0x78980000) +set(baseaddress_msdmo 0x78960000) +set(baseaddress_msftedit 0x78940000) +set(baseaddress_msgina 0x788c0000) +set(baseaddress_mshtml 0x78740000) +set(baseaddress_msi 0x78660000) +set(baseaddress_msimtf 0x78640000) +set(baseaddress_msisip 0x78620000) +set(baseaddress_mspatcha 0x78600000) +set(baseaddress_msports 0x785d0000) +set(baseaddress_msrle32 0x785a0000) +set(baseaddress_mssign32 0x78580000) +set(baseaddress_mssip32 0x78560000) +set(baseaddress_mstask 0x78530000) +set(baseaddress_msv1_0 0x78510000) +set(baseaddress_msvcrt_crt_dll_startup 0x784f0000) +set(baseaddress_msvcrt20 0x78470000) +set(baseaddress_msvcrt40 0x783f0000) +set(baseaddress_msvidc32 0x783d0000) +set(baseaddress_msxml 0x783a0000) +set(baseaddress_msxml2 0x78370000) +set(baseaddress_msxml3 0x78190000) +set(baseaddress_msxml4 0x78150000) +set(baseaddress_msxml6 0x78110000) +set(baseaddress_mycomput 0x780f0000) +set(baseaddress_nddeapi 0x780d0000) +set(baseaddress_netcfgx 0x78060000) +set(baseaddress_netevent 0x78040000) +set(baseaddress_netid 0x78000000) +set(baseaddress_netshell 0x77f90000) +set(baseaddress_newdev 0x77f40000) +set(baseaddress_normaliz 0x77f20000) +set(baseaddress_notifyhook 0x77f00000) +set(baseaddress_npptools 0x77ee0000) +set(baseaddress_ntdsapi 0x77ec0000) +set(baseaddress_ntlanman 0x77ea0000) +set(baseaddress_ntmarta 0x77e80000) +set(baseaddress_ntobjshex 0x77e20000) +set(baseaddress_ntprint 0x77e00000) +set(baseaddress_objsel 0x77de0000) +set(baseaddress_odbc32 0x77db0000) +set(baseaddress_odbccp32 0x77d90000) +set(baseaddress_oleacc 0x77d40000) +set(baseaddress_olecli32 0x77d20000) +set(baseaddress_olepro32 0x77d00000) +set(baseaddress_olesvr32 0x77ce0000) +set(baseaddress_olethk32 0x77cc0000) +set(baseaddress_pdh 0x77c90000) +set(baseaddress_pidgen 0x77c70000) +set(baseaddress_pifmgr 0x77bf0000) +set(baseaddress_printui 0x77bd0000) +set(baseaddress_propsys 0x77ba0000) +set(baseaddress_pstorec 0x77b80000) +set(baseaddress_qedit 0x77b50000) +set(baseaddress_qmgr 0x77b20000) +set(baseaddress_qmgrprxy 0x77ae0000) +set(baseaddress_quartz 0x779f0000) +set(baseaddress_query 0x779d0000) +set(baseaddress_rasadhlp 0x779b0000) +set(baseaddress_rasdlg 0x777e0000) +set(baseaddress_rasman 0x777b0000) +set(baseaddress_resutils 0x77790000) +set(baseaddress_riched32 0x77770000) +set(baseaddress_rsabase 0x77750000) +set(baseaddress_rshell 0x77700000) +set(baseaddress_samsrv 0x776b0000) +set(baseaddress_sccbase 0x77690000) +set(baseaddress_schannel 0x77660000) +set(baseaddress_schedsvc 0x77640000) +set(baseaddress_scrrun 0x77600000) +set(baseaddress_security 0x775e0000) +set(baseaddress_serialui 0x775c0000) +set(baseaddress_sfc 0x775a0000) +set(baseaddress_shdoclc 0x77560000) +set(baseaddress_shdocvw 0x77530000) +set(baseaddress_shfolder 0x77510000) +set(baseaddress_shimgvw 0x774d0000) +set(baseaddress_slayer 0x774a0000) +set(baseaddress_slbcsp 0x77480000) +set(baseaddress_sndblst 0x77460000) +set(baseaddress_softpub 0x77440000) +set(baseaddress_srclient 0x77420000) +set(baseaddress_srvsvc 0x773f0000) +set(baseaddress_sti 0x773c0000) +set(baseaddress_stobject 0x77380000) +set(baseaddress_streamci 0x77360000) +set(baseaddress_sxs 0x77340000) +set(baseaddress_syssetup 0x772a0000) +set(baseaddress_t2embed 0x77280000) +set(baseaddress_tapi32 0x77250000) +set(baseaddress_tapiui 0x771d0000) +set(baseaddress_testvdd 0x771b0000) +set(baseaddress_themeui 0x77190000) +set(baseaddress_traffic 0x77170000) +set(baseaddress_twain_32 0x77150000) +set(baseaddress_ubtrfs 0x77130000) +set(baseaddress_uext2 0x77100000) +set(baseaddress_ufat 0x770d0000) +set(baseaddress_ufatx 0x770b0000) +set(baseaddress_uffs 0x77090000) +set(baseaddress_umpnpmgr 0x77060000) +set(baseaddress_untfs 0x77040000) +set(baseaddress_updspapi 0x77020000) +set(baseaddress_ureiserfs 0x77000000) +set(baseaddress_url 0x76fe0000) +set(baseaddress_vbscript 0x76f80000) +set(baseaddress_vdmdbg 0x76f60000) +set(baseaddress_vssapi 0x76f40000) +set(baseaddress_wbemdisp 0x76f10000) +set(baseaddress_wbemprox 0x76ed0000) +set(baseaddress_win32kdll 0x76eb0000) +set(baseaddress_win32kdll_2k3sp2 0x76e90000) +set(baseaddress_win32kdll_xpsp2 0x76e70000) +set(baseaddress_windowscodecs 0x76dc0000) +set(baseaddress_windowscodecsext 0x76da0000) +set(baseaddress_winfax 0x76d80000) +set(baseaddress_wing32 0x76d60000) +set(baseaddress_winhttp 0x76d20000) +set(baseaddress_winscard 0x76d00000) +set(baseaddress_winsta 0x76cd0000) +set(baseaddress_wkssvc 0x76cb0000) +set(baseaddress_wlanapi 0x76c90000) +set(baseaddress_wldap32 0x76c60000) +set(baseaddress_wmi 0x76c40000) +set(baseaddress_wmisvc 0x76c20000) +set(baseaddress_wmiutils 0x76bf0000) +set(baseaddress_wmvcore 0x76bc0000) +set(baseaddress_ws2_32_new 0x76b90000) +set(baseaddress_wshirda 0x76b70000) +set(baseaddress_wshtcpip 0x76b50000) +set(baseaddress_wsock32 0x76b30000) +set(baseaddress_wtsapi32 0x76b10000) +set(baseaddress_wuapi 0x76ae0000) +set(baseaddress_xinput1_1 0x76ac0000) +set(baseaddress_xinput1_2 0x76aa0000) +set(baseaddress_xinput1_3 0x76a80000) +set(baseaddress_xinput9_1_0 0x76a60000) +set(baseaddress_xmllite 0x76a30000) +set(baseaddress_access 0x769c0000) +set(baseaddress_appwiz 0x76950000) +set(baseaddress_cmicpl 0x76920000) +set(baseaddress_desk 0x768a0000) +set(baseaddress_hdwwiz 0x76830000) +set(baseaddress_hhctrl 0x767f0000) +set(baseaddress_imaadp32.acm 0x767d0000) +set(baseaddress_inetcpl 0x76780000) +set(baseaddress_intl 0x76720000) +set(baseaddress_joy 0x766f0000) +set(baseaddress_main 0x76670000) +set(baseaddress_mmsys 0x765b0000) +set(baseaddress_msacm32.drv 0x76580000) +set(baseaddress_msadp32.acm 0x76560000) +set(baseaddress_msg711.acm 0x76540000) +set(baseaddress_msgsm32.acm 0x76520000) +set(baseaddress_msisys 0x76500000) +set(baseaddress_ncpa 0x764e0000) +set(baseaddress_odbccp32i 0x764c0000) +set(baseaddress_powercfg 0x76460000) +set(baseaddress_sysdm 0x76390000) +set(baseaddress_telephon 0x76370000) +set(baseaddress_timedate 0x76300000) +set(baseaddress_usrmgr 0x762c0000) +set(baseaddress_wdmaud.drv 0x76130000) +set(baseaddress_wined3dcfg 0x76100000) +set(baseaddress_winemp3.acm 0x760a0000) +set(baseaddress_wshom 0x76070000) + +## From baseaddress.cmake (GCC) +set(baseaddress_fusion 0x73830000) +set(baseaddress_fusion_1_1 0x737f0000) +set(baseaddress_fusion_2_0 0x737b0000)
8 years, 4 months
1
0
0
0
[zhu] 72437: Multi-threaded the server side of the TCP test.
by zhu@svn.reactos.org
Author: zhu Date: Tue Aug 23 02:58:27 2016 New Revision: 72437 URL:
http://svn.reactos.org/svn/reactos?rev=72437&view=rev
Log: Multi-threaded the server side of the TCP test. Modified: branches/GSoC_2016/lwIP-tcpip/base/applications/network/tcpclient/main.c branches/GSoC_2016/lwIP-tcpip/base/applications/network/tcpserver/main.c Modified: branches/GSoC_2016/lwIP-tcpip/base/applications/network/tcpclient/main.c URL:
http://svn.reactos.org/svn/reactos/branches/GSoC_2016/lwIP-tcpip/base/appli…
============================================================================== --- branches/GSoC_2016/lwIP-tcpip/base/applications/network/tcpclient/main.c [iso-8859-1] (original) +++ branches/GSoC_2016/lwIP-tcpip/base/applications/network/tcpclient/main.c [iso-8859-1] Tue Aug 23 02:58:27 2016 @@ -3,7 +3,7 @@ #include <winsock2.h> #define LENGTH 255 -#define NUM_CLIENTS 2 +#define NUM_CLIENTS 128 DWORD WINAPI ClientThreadMain(LPVOID lpParam) { SOCKET Sock; @@ -69,6 +69,8 @@ int wmain(int argc, LPWSTR argv[]) { WSADATA wsa; + SYSTEMTIME StartTime; + SYSTEMTIME EndTime; HANDLE ClientThreadHandles[NUM_CLIENTS]; DWORD ClientThreadIDs[NUM_CLIENTS]; @@ -82,6 +84,8 @@ printf("Windows Socket API Startup Failed: %d\n", WSAGetLastError()); return 1; } + + GetSystemTime(&StartTime); for (i = 0; i < NUM_CLIENTS; i++) { ClientThreadHandles[i] = CreateThread( @@ -100,11 +104,19 @@ WaitForMultipleObjects(NUM_CLIENTS, ClientThreadHandles, TRUE, INFINITE); + GetSystemTime(&EndTime); + + for (i = 0; i < NUM_CLIENTS; i++) { CloseHandle(ClientThreadHandles[i]); } fgets(buff, LENGTH, stdin); + printf("Elapsed: %d.%03d s\n", + EndTime.wSecond - StartTime.wSecond, EndTime.wMilliseconds - StartTime.wMilliseconds); + + fgets(buff, LENGTH, stdin); + return 0; } Modified: branches/GSoC_2016/lwIP-tcpip/base/applications/network/tcpserver/main.c URL:
http://svn.reactos.org/svn/reactos/branches/GSoC_2016/lwIP-tcpip/base/appli…
============================================================================== --- branches/GSoC_2016/lwIP-tcpip/base/applications/network/tcpserver/main.c [iso-8859-1] (original) +++ branches/GSoC_2016/lwIP-tcpip/base/applications/network/tcpserver/main.c [iso-8859-1] Tue Aug 23 02:58:27 2016 @@ -4,28 +4,77 @@ #define backlog 4 #define LENGTH 256 +struct ClientInfo { + int ClientID; + SOCKET ClientSock; +}; + +DWORD WINAPI ServerThreadMain(LPVOID lpParam) { + SOCKET ClientSock; + + struct ClientInfo *CInfo; + + char buff[LENGTH]; + + int count; + int ret; + + CInfo = (struct ClientInfo *)lpParam; + + count = CInfo->ClientID; + ClientSock = CInfo->ClientSock; + + printf("Connection established to client %d\n", count); + + ret = recv(ClientSock, buff, LENGTH, 0); + if (ret < 0) { + printf(" Receive failure on socket %d: %d\n", ClientSock, WSAGetLastError()); + return 1; + } + buff[ret] = '\0'; + printf(" Received %d-byte message from client %d: %s\n", ret, count, buff); + + ret = send(ClientSock, buff, ret, 0); + if (ret == SOCKET_ERROR) { + printf("Send failed: %d\n", WSAGetLastError()); + closesocket(ClientSock); + fgets(buff, LENGTH, stdin); + return 1; + } + printf("Message echoed\n"); + + closesocket(ClientSock); + + free(CInfo); + + return 0; +} + int wmain(int argc, LPWSTR argv[]) { - WSADATA wsa; + DWORD ServerThreadID; + WSADATA wsa; SOCKET ListenSock; SOCKET ClientSock; + + struct ClientInfo *CInfo; struct sockaddr_in ListenAddr; struct sockaddr_in ClientAddr; char buff[LENGTH]; - int ret; + int ret; int addrSize; int count; printf("Server startup\n"); - ret = WSAStartup(MAKEWORD(2, 2), &wsa); - if (ret != 0) { - printf("Windows Socket API Startup Failed: %d\n", WSAGetLastError()); + ret = WSAStartup(MAKEWORD(2, 2), &wsa); + if (ret != 0) { + printf("Windows Socket API Startup Failed: %d\n", WSAGetLastError()); fgets(buff, LENGTH, stdin); - return 1; - } + return 1; + } memset(&ListenAddr, 0, sizeof(struct sockaddr_in)); ListenAddr.sin_family = AF_INET; @@ -62,7 +111,6 @@ printf("Server listening socket is now listening\n"); count = 0; - // Only a single server handler for now. while (1) { addrSize = sizeof(struct sockaddr_in); memset(buff, 0, sizeof(buff)); @@ -73,26 +121,20 @@ closesocket(ListenSock); WSACleanup(); fgets(buff, LENGTH, stdin); - return 1; + exit(1); } - printf("Connection established to client %d\n", count); + + CInfo = malloc(sizeof(*CInfo)); + CInfo->ClientID = count; + CInfo->ClientSock = ClientSock; - ret = recv(ClientSock, buff, LENGTH, 0); - buff[LENGTH - 1] = '\0'; - printf(" Received %d-byte message from client %d: %s\n", ret, count, buff); - - ret = send(ClientSock, buff, ret, 0); - if (ret == SOCKET_ERROR) { - printf("Send failed: %d\n", WSAGetLastError()); - closesocket(ListenSock); - closesocket(ClientSock); - WSACleanup(); - fgets(buff, LENGTH, stdin); - return 1; - } - printf("Message echoed\n"); - - closesocket(ClientSock); + CreateThread( + NULL, + 0, + ServerThreadMain, + (LPVOID)CInfo, + 0, + &ServerThreadID); count++; } @@ -101,5 +143,5 @@ fgets(buff, LENGTH, stdin); - return 0; + return 0; }
8 years, 4 months
1
0
0
0
[aandrejevic] 72436: [NTVDM:SVGA] Implement starting address extensions, scanline offset extensions and memory address extensions. No more 64 KB memory banks. The code now uses SVGA_BANK_SIZE (1 MB...
by aandrejevic@svn.reactos.org
Author: aandrejevic Date: Mon Aug 22 22:41:01 2016 New Revision: 72436 URL:
http://svn.reactos.org/svn/reactos?rev=72436&view=rev
Log: [NTVDM:SVGA] Implement starting address extensions, scanline offset extensions and memory address extensions. No more 64 KB memory banks. The code now uses SVGA_BANK_SIZE (1 MB) for everything. Modified: trunk/reactos/subsystems/mvdm/ntvdm/hardware/video/svga.c trunk/reactos/subsystems/mvdm/ntvdm/hardware/video/svga.h Modified: trunk/reactos/subsystems/mvdm/ntvdm/hardware/video/svga.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/mvdm/ntvdm/hard…
============================================================================== --- trunk/reactos/subsystems/mvdm/ntvdm/hardware/video/svga.c [iso-8859-1] (original) +++ trunk/reactos/subsystems/mvdm/ntvdm/hardware/video/svga.c [iso-8859-1] Mon Aug 22 22:41:01 2016 @@ -333,6 +333,9 @@ static inline DWORD VgaTranslateReadAddress(DWORD Address) { DWORD Offset = LOWORD(Address - VgaGetVideoBaseAddress()); + DWORD ExtOffset = ((VgaGcRegisters[SVGA_GC_EXT_MODE_REG] & SVGA_GC_EXT_MODE_WND_B) && (Offset & (1 << 15))) + ? VgaGcRegisters[SVGA_GC_OFFSET_1_REG] + : VgaGcRegisters[SVGA_GC_OFFSET_0_REG]; BYTE Plane; /* Check for chain-4 and odd-even mode */ @@ -354,14 +357,23 @@ Plane = VgaGcRegisters[VGA_GC_READ_MAP_SEL_REG] & 0x03; } + if (ExtOffset) + { + /* Add the extended offset */ + Offset += ExtOffset << ((VgaGcRegisters[SVGA_GC_EXT_MODE_REG] & SVGA_GC_EXT_MODE_GRAN) ? 14 : 12); + } + /* Return the offset on plane 0 for read mode 1 */ if (VgaGcRegisters[VGA_GC_MODE_REG] & VGA_GC_MODE_READ) return Offset; - else return Offset + Plane * VGA_BANK_SIZE; + else return Offset + Plane * SVGA_BANK_SIZE; } static inline DWORD VgaTranslateWriteAddress(DWORD Address) { DWORD Offset = LOWORD(Address - VgaGetVideoBaseAddress()); + DWORD ExtOffset = ((VgaGcRegisters[SVGA_GC_EXT_MODE_REG] & SVGA_GC_EXT_MODE_WND_B) && (Offset & (1 << 15))) + ? VgaGcRegisters[SVGA_GC_OFFSET_1_REG] + : VgaGcRegisters[SVGA_GC_OFFSET_0_REG]; /* Check for chain-4 and odd-even mode */ if (VgaSeqRegisters[VGA_SEQ_MEM_REG] & VGA_SEQ_MEM_C4) @@ -373,6 +385,12 @@ { /* Clear the lowest bit since it's used to select odd/even */ Offset &= ~1; + } + + if (ExtOffset) + { + /* Add the extended offset */ + Offset += ExtOffset << ((VgaGcRegisters[SVGA_GC_EXT_MODE_REG] & SVGA_GC_EXT_MODE_GRAN) ? 14 : 12); } /* Return the offset on plane 0 */ @@ -748,11 +766,15 @@ { SHORT i, j, k; DWORD AddressSize = VgaGetAddressSize(); - DWORD ScanlineSize = (DWORD)VgaCrtcRegisters[VGA_CRTC_OFFSET_REG] * 2; + DWORD ScanlineSize = ((DWORD)VgaCrtcRegisters[VGA_CRTC_OFFSET_REG] + + (((DWORD)VgaCrtcRegisters[SVGA_CRTC_EXT_DISPLAY_REG] & SVGA_CRTC_EXT_OFFSET_BIT8) << 4)) * 2; BYTE PresetRowScan = VgaCrtcRegisters[VGA_CRTC_PRESET_ROW_SCAN_REG] & 0x1F; BYTE BytePanning = (VgaCrtcRegisters[VGA_CRTC_PRESET_ROW_SCAN_REG] >> 5) & 3; DWORD Address = MAKEWORD(VgaCrtcRegisters[VGA_CRTC_START_ADDR_LOW_REG], VgaCrtcRegisters[VGA_CRTC_START_ADDR_HIGH_REG]) + + ((VgaCrtcRegisters[SVGA_CRTC_EXT_DISPLAY_REG] & SVGA_CRTC_EXT_ADDR_BIT16) << 16) + + ((VgaCrtcRegisters[SVGA_CRTC_EXT_DISPLAY_REG] & SVGA_CRTC_EXT_ADDR_BITS1718) << 15) + + ((VgaCrtcRegisters[SVGA_CRTC_OVERLAY_REG] & SVGA_CRTC_EXT_ADDR_BIT19) << 12) + PresetRowScan * ScanlineSize + BytePanning; WORD LineCompare = VgaCrtcRegisters[VGA_CRTC_LINE_COMPARE_REG] @@ -845,7 +867,7 @@ if (VgaAcRegisters[VGA_AC_CONTROL_REG] & VGA_AC_CONTROL_8BIT) { /* One byte per pixel */ - PixelData = VgaMemory[(X % VGA_NUM_BANKS) * VGA_BANK_SIZE + PixelData = VgaMemory[(X % VGA_NUM_BANKS) * SVGA_BANK_SIZE + LOWORD((Address + (X / VGA_NUM_BANKS)) * AddressSize)]; } @@ -853,7 +875,7 @@ { /* 4-bits per pixel */ - PixelData = VgaMemory[(X % VGA_NUM_BANKS) * VGA_BANK_SIZE + PixelData = VgaMemory[(X % VGA_NUM_BANKS) * SVGA_BANK_SIZE + LOWORD((Address + (X / (VGA_NUM_BANKS * 2))) * AddressSize)]; @@ -886,8 +908,8 @@ */ DWORD BankNumber = (X / 4) % 2; DWORD Offset = Address + (X / 8); - BYTE LowPlaneData = VgaMemory[BankNumber * VGA_BANK_SIZE + LOWORD(Offset * AddressSize)]; - BYTE HighPlaneData = VgaMemory[(BankNumber + 2) * VGA_BANK_SIZE + LOWORD(Offset * AddressSize)]; + BYTE LowPlaneData = VgaMemory[BankNumber * SVGA_BANK_SIZE + LOWORD(Offset * AddressSize)]; + BYTE HighPlaneData = VgaMemory[(BankNumber + 2) * SVGA_BANK_SIZE + LOWORD(Offset * AddressSize)]; /* Extract the two bits from each plane */ LowPlaneData = (LowPlaneData >> (6 - ((X % 4) * 2))) & 0x03; @@ -909,7 +931,7 @@ for (k = 0; k < VGA_NUM_BANKS; k++) { /* The data is on plane k, 4 pixels per byte */ - BYTE PlaneData = VgaMemory[k * VGA_BANK_SIZE + BYTE PlaneData = VgaMemory[k * SVGA_BANK_SIZE + LOWORD((Address + (X / VGA_NUM_BANKS)) * AddressSize)]; @@ -929,7 +951,7 @@ for (k = 0; k < VGA_NUM_BANKS; k++) { - BYTE PlaneData = VgaMemory[k * VGA_BANK_SIZE + BYTE PlaneData = VgaMemory[k * SVGA_BANK_SIZE + LOWORD((Address + (X / (VGA_NUM_BANKS * 2))) * AddressSize)]; @@ -1068,7 +1090,7 @@ CharInfo.Char = VgaMemory[CurrentAddr]; /* Plane 1 holds the attribute */ - CharInfo.Attributes = VgaMemory[CurrentAddr + VGA_BANK_SIZE]; + CharInfo.Attributes = VgaMemory[CurrentAddr + SVGA_BANK_SIZE]; /* Now check if the resulting character data has changed */ if ((CharBuffer[i * CurrResolution.X + j].Char != CharInfo.Char) || @@ -1768,12 +1790,12 @@ if (VgaGcRegisters[VGA_GC_COLOR_COMPARE_REG] & (1 << j)) { /* Comparing with 11111111 */ - Result &= VgaMemory[j * VGA_BANK_SIZE + LOWORD(VideoAddress)]; + Result &= VgaMemory[j * SVGA_BANK_SIZE + LOWORD(VideoAddress)]; } else { /* Comparing with 00000000 */ - Result &= ~(VgaMemory[j * VGA_BANK_SIZE + LOWORD(VideoAddress)]); + Result &= ~(VgaMemory[j * SVGA_BANK_SIZE + LOWORD(VideoAddress)]); } } @@ -1784,9 +1806,9 @@ /* Load the latch registers */ VgaLatchRegisters[0] = VgaMemory[LOWORD(VideoAddress)]; - VgaLatchRegisters[1] = VgaMemory[VGA_BANK_SIZE + LOWORD(VideoAddress)]; - VgaLatchRegisters[2] = VgaMemory[(2 * VGA_BANK_SIZE) + LOWORD(VideoAddress)]; - VgaLatchRegisters[3] = VgaMemory[(3 * VGA_BANK_SIZE) + LOWORD(VideoAddress)]; + VgaLatchRegisters[1] = VgaMemory[SVGA_BANK_SIZE + LOWORD(VideoAddress)]; + VgaLatchRegisters[2] = VgaMemory[(2 * SVGA_BANK_SIZE) + LOWORD(VideoAddress)]; + VgaLatchRegisters[3] = VgaMemory[(3 * SVGA_BANK_SIZE) + LOWORD(VideoAddress)]; } BOOLEAN FASTCALL VgaWriteMemory(ULONG Address, PVOID Buffer, ULONG Size) @@ -1834,7 +1856,7 @@ } /* Copy the value to the VGA memory */ - VgaMemory[VideoAddress + j * VGA_BANK_SIZE] = VgaTranslateByteForWriting(BufPtr[i], j); + VgaMemory[VideoAddress + j * SVGA_BANK_SIZE] = VgaTranslateByteForWriting(BufPtr[i], j); } } @@ -1849,7 +1871,7 @@ VOID VgaWriteTextModeFont(UINT FontNumber, CONST UCHAR* FontData, UINT Height) { UINT i, j; - PUCHAR FontMemory = (PUCHAR)&VgaMemory[VGA_BANK_SIZE * VGA_FONT_BANK + (FontNumber * VGA_FONT_SIZE)]; + PUCHAR FontMemory = (PUCHAR)&VgaMemory[SVGA_BANK_SIZE * VGA_FONT_BANK + (FontNumber * VGA_FONT_SIZE)]; ASSERT(Height <= VGA_MAX_FONT_HEIGHT); Modified: trunk/reactos/subsystems/mvdm/ntvdm/hardware/video/svga.h URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/mvdm/ntvdm/hard…
============================================================================== --- trunk/reactos/subsystems/mvdm/ntvdm/hardware/video/svga.h [iso-8859-1] (original) +++ trunk/reactos/subsystems/mvdm/ntvdm/hardware/video/svga.h [iso-8859-1] Mon Aug 22 22:41:01 2016 @@ -187,6 +187,14 @@ #define VGA_CRTC_MODE_CONTROL_WRAP (1 << 5) #define VGA_CRTC_MODE_CONTROL_BYTE (1 << 6) #define VGA_CRTC_MODE_CONTROL_SYNC (1 << 7) + +/* CRTC extended display register bits */ +#define SVGA_CRTC_EXT_ADDR_BIT16 (1 << 0) +#define SVGA_CRTC_EXT_ADDR_BITS1718 ((1 << 2) | (1 << 3)) +#define SVGA_CRTC_EXT_OFFSET_BIT8 (1 << 4) + +/* CRTC extended overlay register bits */ +#define SVGA_CRTC_EXT_ADDR_BIT19 (1 << 7) enum { @@ -248,6 +256,10 @@ /* Graphics controller miscellaneous register bits */ #define VGA_GC_MISC_NOALPHA (1 << 0) #define VGA_GC_MISC_OE (1 << 1) + +/* Graphics controller extended mode register bits */ +#define SVGA_GC_EXT_MODE_WND_B (1 << 0) +#define SVGA_GC_EXT_MODE_GRAN (1 << 5) enum {
8 years, 4 months
1
0
0
0
[jgardou] 72435: [KDGDB] - Implement setting and removing breakpoints - Implement single-stepping - Only get past the breakpoint instruction when it comes from RtlpBreakWithStatus - Implement writi...
by jgardou@svn.reactos.org
Author: jgardou Date: Mon Aug 22 22:24:30 2016 New Revision: 72435 URL:
http://svn.reactos.org/svn/reactos?rev=72435&view=rev
Log: [KDGDB] - Implement setting and removing breakpoints - Implement single-stepping - Only get past the breakpoint instruction when it comes from RtlpBreakWithStatus - Implement writing to memory - Always send the thread raising the exception to GDB to avoid confusing it - Let GDB find the program counter alone by querying the registers (support was already there before.) - Properly escape special characters on input Ladies and gentlemen : the almost-fully functional GDB stub. (still no real multi-process support :-( ) To enable , in CMakeCache.txt : - Set GDB:BOOL=TRUE - Set _WINKD_:BOOL=TRUE - Set KDBG:BOOL=FALSE To do : give GDB the list of loaded drivers. Loading ntoskrnl.exe symbols at 0x80801000 already does a good enough job. Default output is on COM1. Can be configure to any othe COM port with usual kernel options. Hope you'll like it as much as I do ;-) Modified: trunk/reactos/drivers/base/kdgdb/gdb_input.c trunk/reactos/drivers/base/kdgdb/gdb_receive.c trunk/reactos/drivers/base/kdgdb/gdb_send.c trunk/reactos/drivers/base/kdgdb/i386_sup.c trunk/reactos/drivers/base/kdgdb/kdcom.c trunk/reactos/drivers/base/kdgdb/kdgdb.h trunk/reactos/drivers/base/kdgdb/kdpacket.c Modified: trunk/reactos/drivers/base/kdgdb/gdb_input.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/base/kdgdb/gdb_inp…
============================================================================== --- trunk/reactos/drivers/base/kdgdb/gdb_input.c [iso-8859-1] (original) +++ trunk/reactos/drivers/base/kdgdb/gdb_input.c [iso-8859-1] Mon Aug 22 22:24:30 2016 @@ -9,6 +9,11 @@ /* LOCALS *********************************************************************/ static ULONG_PTR gdb_run_tid; +static struct +{ + ULONG_PTR Address; + ULONG Handle; +} BreakPointHandles[32]; /* GLOBALS ********************************************************************/ @@ -203,16 +208,15 @@ if (!Resuming) { + /* Report the idle thread */ +#if MONOPROCESS + ptr += sprintf(ptr, "1"); +#else + ptr += sprintf(gdb, "p1.1"); +#endif /* Initialize the entries */ CurrentProcessEntry = ProcessListHead->Flink; CurrentThreadEntry = NULL; - - /* Start with idle thread */ -#if MONOPROCESS - ptr = gdb_out + sprintf(gdb_out, "m1"); -#else - ptr = gdb_out + sprintf(gdb_out, "mp1.1"); -#endif FirstThread = FALSE; } @@ -306,8 +310,8 @@ Thread = find_thread(Pid, Tid); Process = CONTAINING_RECORD(Thread->Tcb.Process, EPROCESS, Pcb); #else - Pid = hex_to_pid(&gdb_input[2]); - Tid = hex_to_tid(strstr(gdb_input, ".") + 1); + Pid = hex_to_pid(&gdb_input[18]); + Tid = hex_to_tid(strstr(&gdb_input[18], ".") + 1); /* We cannot use PsLookupProcessThreadByCid as we could be running at any IRQL. * So loop. */ @@ -394,21 +398,23 @@ KDDBGPRINT("Wrong API number (%lu) after DbgKdReadVirtualMemoryApi request.\n", State->ApiNumber); } - /* Check status */ - if (!NT_SUCCESS(State->ReturnStatus)) + /* Check status. Allow to send partial data. */ + if (!MessageData->Length && !NT_SUCCESS(State->ReturnStatus)) send_gdb_ntstatus(State->ReturnStatus); else send_gdb_memory(MessageData->Buffer, MessageData->Length); KdpSendPacketHandler = NULL; KdpManipulateStateHandler = NULL; -#if !MONOPROCESS +#if MONOPROCESS + if (gdb_dbg_tid != 0) /* Reset the TLB */ +#else if ((gdb_dbg_pid != 0) && gdb_pid_to_handle(gdb_dbg_pid) != PsGetCurrentProcessId()) +#endif { __writecr3(PsGetCurrentProcess()->Pcb.DirectoryTableBase[0]); } -#endif } static @@ -427,8 +433,29 @@ MessageData->Length = 0; *MessageLength = 0; -#if !MONOPROCESS /* Set the TLB according to the process being read. Pid 0 means any process. */ +#if MONOPROCESS + if ((gdb_dbg_tid != 0) && gdb_tid_to_handle(gdb_dbg_tid) != PsGetCurrentThreadId()) + { + PETHREAD AttachedThread = find_thread(0, gdb_dbg_tid); + PKPROCESS AttachedProcess; + if (AttachedThread == NULL) + { + KDDBGPRINT("The current GDB debug thread is invalid!"); + send_gdb_packet("E03"); + return (KDSTATUS)-1; + } + + AttachedProcess = AttachedThread->Tcb.Process; + if (AttachedProcess == NULL) + { + KDDBGPRINT("The current GDB debug thread is invalid!"); + send_gdb_packet("E03"); + return (KDSTATUS)-1; + } + __writecr3(AttachedProcess->DirectoryTableBase[0]); + } +#else if ((gdb_dbg_pid != 0) && gdb_pid_to_handle(gdb_dbg_pid) != PsGetCurrentProcessId()) { PEPROCESS AttachedProcess = find_process(gdb_dbg_pid); @@ -436,7 +463,7 @@ { KDDBGPRINT("The current GDB debug thread is invalid!"); send_gdb_packet("E03"); - return gdb_receive_and_interpret_packet(State, MessageData, MessageLength, KdContext); + return (KDSTATUS)-1; } __writecr3(AttachedProcess->Pcb.DirectoryTableBase[0]); } @@ -448,6 +475,388 @@ /* KD will reply with KdSendPacket. Catch it */ KdpSendPacketHandler = ReadMemorySendHandler; + return KdPacketReceived; +} + +static +void +WriteMemorySendHandler( + _In_ ULONG PacketType, + _In_ PSTRING MessageHeader, + _In_ PSTRING MessageData) +{ + DBGKD_MANIPULATE_STATE64* State = (DBGKD_MANIPULATE_STATE64*)MessageHeader->Buffer; + + if (PacketType != PACKET_TYPE_KD_STATE_MANIPULATE) + { + // KdAssert + KDDBGPRINT("Wrong packet type (%lu) received after DbgKdWriteVirtualMemoryApi request.\n", PacketType); + while (1); + } + + if (State->ApiNumber != DbgKdWriteVirtualMemoryApi) + { + KDDBGPRINT("Wrong API number (%lu) after DbgKdWriteVirtualMemoryApi request.\n", State->ApiNumber); + } + + /* Check status */ + if (!NT_SUCCESS(State->ReturnStatus)) + send_gdb_ntstatus(State->ReturnStatus); + else + send_gdb_packet("OK"); + KdpSendPacketHandler = NULL; + KdpManipulateStateHandler = NULL; + +#if MONOPROCESS + if (gdb_dbg_tid != 0) + /* Reset the TLB */ +#else + if ((gdb_dbg_pid != 0) && gdb_pid_to_handle(gdb_dbg_pid) != PsGetCurrentProcessId()) +#endif + { + __writecr3(PsGetCurrentProcess()->Pcb.DirectoryTableBase[0]); + } +} + +static +KDSTATUS +handle_gdb_write_mem( + _Out_ DBGKD_MANIPULATE_STATE64* State, + _Out_ PSTRING MessageData, + _Out_ PULONG MessageLength, + _Inout_ PKD_CONTEXT KdContext) +{ + /* Maximal input buffer is 0x1000. Each byte is encoded on two bytes by GDB */ + static UCHAR OutBuffer[0x800]; + ULONG BufferLength; + char* blob_ptr; + UCHAR* OutPtr; + + State->ApiNumber = DbgKdWriteVirtualMemoryApi; + State->ReturnStatus = STATUS_SUCCESS; /* ? */ + State->Processor = CurrentStateChange.Processor; + State->ProcessorLevel = CurrentStateChange.ProcessorLevel; + + /* Set the TLB according to the process being read. Pid 0 means any process. */ +#if MONOPROCESS + if ((gdb_dbg_tid != 0) && gdb_tid_to_handle(gdb_dbg_tid) != PsGetCurrentThreadId()) + { + PETHREAD AttachedThread = find_thread(0, gdb_dbg_tid); + PKPROCESS AttachedProcess; + if (AttachedThread == NULL) + { + KDDBGPRINT("The current GDB debug thread is invalid!"); + send_gdb_packet("E03"); + return (KDSTATUS)-1; + } + + AttachedProcess = AttachedThread->Tcb.Process; + if (AttachedProcess == NULL) + { + KDDBGPRINT("The current GDB debug thread is invalid!"); + send_gdb_packet("E03"); + return (KDSTATUS)-1; + } + __writecr3(AttachedProcess->DirectoryTableBase[0]); + } +#else + if ((gdb_dbg_pid != 0) && gdb_pid_to_handle(gdb_dbg_pid) != PsGetCurrentProcessId()) + { + PEPROCESS AttachedProcess = find_process(gdb_dbg_pid); + if (AttachedProcess == NULL) + { + KDDBGPRINT("The current GDB debug thread is invalid!"); + send_gdb_packet("E03"); + return (KDSTATUS)-1; + } + __writecr3(AttachedProcess->Pcb.DirectoryTableBase[0]); + } +#endif + + State->u.WriteMemory.TargetBaseAddress = hex_to_address(&gdb_input[1]); + BufferLength = hex_to_address(strstr(&gdb_input[1], ",") + 1); + if (BufferLength == 0) + { + /* Nothing to do */ + send_gdb_packet("OK"); + return (KDSTATUS)-1; + } + + State->u.WriteMemory.TransferCount = BufferLength; + MessageData->Length = BufferLength; + MessageData->Buffer = (CHAR*)OutBuffer; + + OutPtr = OutBuffer; + blob_ptr = strstr(strstr(&gdb_input[1], ",") + 1, ":") + 1; + while (BufferLength) + { + if (BufferLength >= 4) + { + *((ULONG*)OutPtr) = *((ULONG*)blob_ptr); + OutPtr += 4; + blob_ptr += 4; + BufferLength -= 4; + } + else if (BufferLength >= 2) + { + *((USHORT*)OutPtr) = *((USHORT*)blob_ptr); + OutPtr += 2; + blob_ptr += 2; + BufferLength -= 2; + } + else + { + *OutPtr++ = *blob_ptr++; + BufferLength--; + } + } + + /* KD will reply with KdSendPacket. Catch it */ + KdpSendPacketHandler = WriteMemorySendHandler; + + return KdPacketReceived; +} + +static +void +WriteBreakPointSendHandler( + _In_ ULONG PacketType, + _In_ PSTRING MessageHeader, + _In_ PSTRING MessageData) +{ + DBGKD_MANIPULATE_STATE64* State = (DBGKD_MANIPULATE_STATE64*)MessageHeader->Buffer; + + if (PacketType != PACKET_TYPE_KD_STATE_MANIPULATE) + { + // KdAssert + KDDBGPRINT("Wrong packet type (%lu) received after DbgKdWriteBreakPointApi request.\n", PacketType); + while (1); + } + + if (State->ApiNumber != DbgKdWriteBreakPointApi) + { + KDDBGPRINT("Wrong API number (%lu) after DbgKdWriteBreakPointApi request.\n", State->ApiNumber); + } + + /* Check status */ + if (!NT_SUCCESS(State->ReturnStatus)) + { + KDDBGPRINT("Inserting breakpoint failed!\n"); + send_gdb_ntstatus(State->ReturnStatus); + } + else + { + /* Keep track of the address+handle couple */ + ULONG i; + for (i = 0; i < (sizeof(BreakPointHandles) / sizeof(BreakPointHandles[0])); i++) + { + if (BreakPointHandles[i].Address == 0) + { + BreakPointHandles[i].Address = (ULONG_PTR)State->u.WriteBreakPoint.BreakPointAddress; + BreakPointHandles[i].Handle = State->u.WriteBreakPoint.BreakPointHandle; + break; + } + } + send_gdb_packet("OK"); + } + KdpSendPacketHandler = NULL; + KdpManipulateStateHandler = NULL; +} + +static +KDSTATUS +handle_gdb_insert_breakpoint( + _Out_ DBGKD_MANIPULATE_STATE64* State, + _Out_ PSTRING MessageData, + _Out_ PULONG MessageLength, + _Inout_ PKD_CONTEXT KdContext) +{ + State->ReturnStatus = STATUS_SUCCESS; /* ? */ + State->Processor = CurrentStateChange.Processor; + State->ProcessorLevel = CurrentStateChange.ProcessorLevel; + if (MessageData) + MessageData->Length = 0; + *MessageLength = 0; + + switch (gdb_input[1]) + { + case '0': + { + ULONG_PTR Address = hex_to_address(&gdb_input[3]); + ULONG i; + BOOLEAN HasFreeSlot = FALSE; + + KDDBGPRINT("Inserting breakpoint at %p.\n", (void*)Address); + + for (i = 0; i < (sizeof(BreakPointHandles) / sizeof(BreakPointHandles[0])); i++) + { + if (BreakPointHandles[i].Address == 0) + HasFreeSlot = TRUE; + } + + if (!HasFreeSlot) + { + /* We don't have a way to keep track of this break point. Fail. */ + KDDBGPRINT("No breakpoint slot available!\n"); + send_gdb_packet("E01"); + return (KDSTATUS)-1; + } + + State->ApiNumber = DbgKdWriteBreakPointApi; + State->u.WriteBreakPoint.BreakPointAddress = Address; + /* FIXME : ignoring all other Z0 arguments */ + + /* KD will reply with KdSendPacket. Catch it */ + KdpSendPacketHandler = WriteBreakPointSendHandler; + return KdPacketReceived; + } + } + + KDDBGPRINT("Unhandled 'Z' packet: %s\n", gdb_input); + send_gdb_packet("E01"); + return (KDSTATUS)-1; +} + +static +void +RestoreBreakPointSendHandler( + _In_ ULONG PacketType, + _In_ PSTRING MessageHeader, + _In_ PSTRING MessageData) +{ + DBGKD_MANIPULATE_STATE64* State = (DBGKD_MANIPULATE_STATE64*)MessageHeader->Buffer; + ULONG i; + + if (PacketType != PACKET_TYPE_KD_STATE_MANIPULATE) + { + // KdAssert + KDDBGPRINT("Wrong packet type (%lu) received after DbgKdRestoreBreakPointApi request.\n", PacketType); + while (1); + } + + if (State->ApiNumber != DbgKdRestoreBreakPointApi) + { + KDDBGPRINT("Wrong API number (%lu) after DbgKdRestoreBreakPointApi request.\n", State->ApiNumber); + } + + /* We ignore failure here. If DbgKdRestoreBreakPointApi fails, + * this means that the breakpoint was already invalid for KD. So clean it up on our side. */ + for (i = 0; i < (sizeof(BreakPointHandles) / sizeof(BreakPointHandles[0])); i++) + { + if (BreakPointHandles[i].Handle == State->u.RestoreBreakPoint.BreakPointHandle) + { + BreakPointHandles[i].Address = 0; + BreakPointHandles[i].Handle = 0; + break; + } + } + + send_gdb_packet("OK"); + + KdpSendPacketHandler = NULL; + KdpManipulateStateHandler = NULL; +} + +static +KDSTATUS +handle_gdb_remove_breakpoint( + _Out_ DBGKD_MANIPULATE_STATE64* State, + _Out_ PSTRING MessageData, + _Out_ PULONG MessageLength, + _Inout_ PKD_CONTEXT KdContext) +{ + State->ReturnStatus = STATUS_SUCCESS; /* ? */ + State->Processor = CurrentStateChange.Processor; + State->ProcessorLevel = CurrentStateChange.ProcessorLevel; + if (MessageData) + MessageData->Length = 0; + *MessageLength = 0; + + switch (gdb_input[1]) + { + case '0': + { + ULONG_PTR Address = hex_to_address(&gdb_input[3]); + ULONG i, Handle = 0; + + KDDBGPRINT("Removing breakpoint on %p.\n", (void*)Address); + + for (i = 0; i < (sizeof(BreakPointHandles) / sizeof(BreakPointHandles[0])); i++) + { + if (BreakPointHandles[i].Address == Address) + { + Handle = BreakPointHandles[i].Handle; + break; + } + } + + if (Handle == 0) + { + KDDBGPRINT("Received %s, but breakpoint was never inserted ?!\n", gdb_input); + send_gdb_packet("E01"); + return (KDSTATUS)-1; + } + + State->ApiNumber = DbgKdRestoreBreakPointApi; + State->u.RestoreBreakPoint.BreakPointHandle = Handle; + /* FIXME : ignoring all other z0 arguments */ + + /* KD will reply with KdSendPacket. Catch it */ + KdpSendPacketHandler = RestoreBreakPointSendHandler; + return KdPacketReceived; + } + } + + KDDBGPRINT("Unhandled 'Z' packet: %s\n", gdb_input); + send_gdb_packet("E01"); + return (KDSTATUS)-1; +} + +static +KDSTATUS +handle_gdb_c( + _Out_ DBGKD_MANIPULATE_STATE64* State, + _Out_ PSTRING MessageData, + _Out_ PULONG MessageLength, + _Inout_ PKD_CONTEXT KdContext) +{ + /* Tell GDB everything is fine, we will handle it */ + send_gdb_packet("OK"); + + if (CurrentStateChange.NewState == DbgKdExceptionStateChange) + { + DBGKM_EXCEPTION64* Exception = &CurrentStateChange.u.Exception; + ULONG_PTR ProgramCounter = KdpGetContextPc(&CurrentContext); + + /* See if we should update the program counter */ + if (Exception && (Exception->ExceptionRecord.ExceptionCode == STATUS_BREAKPOINT) + && ProgramCounter == KdDebuggerDataBlock->BreakpointWithStatus.Pointer) + { + /* We must get past the breakpoint instruction */ + KdpSetContextPc(&CurrentContext, ProgramCounter + KD_BREAKPOINT_SIZE); + + SetContextManipulateHandler(State, MessageData, MessageLength, KdContext); + KdpManipulateStateHandler = ContinueManipulateStateHandler; + return KdPacketReceived; + } + } + + return ContinueManipulateStateHandler(State, MessageData, MessageLength, KdContext); +} + +static +KDSTATUS +handle_gdb_s( + _Out_ DBGKD_MANIPULATE_STATE64* State, + _Out_ PSTRING MessageData, + _Out_ PULONG MessageLength, + _Inout_ PKD_CONTEXT KdContext) +{ + KDDBGPRINT("Single stepping.\n"); + /* Set CPU single step mode and continue */ + KdpSetSingleStep(&CurrentContext); + SetContextManipulateHandler(State, MessageData, MessageLength, KdContext); + KdpManipulateStateHandler = ContinueManipulateStateHandler; return KdPacketReceived; } @@ -464,36 +873,19 @@ if (gdb_input[5] == '?') { /* Report what we support */ - send_gdb_packet("vCont;c;C;s;S"); + send_gdb_packet("vCont;c;s"); return (KDSTATUS)-1; } if (strncmp(gdb_input, "vCont;c", 7) == 0) { - DBGKM_EXCEPTION64* Exception = NULL; - - /* Tell GDB everything is fine, we will handle it */ - send_gdb_packet("OK"); - - if (CurrentStateChange.NewState == DbgKdExceptionStateChange) - Exception = &CurrentStateChange.u.Exception; - - /* See if we should update the program counter (unlike windbg, gdb doesn't do it for us) */ - if (Exception && (Exception->ExceptionRecord.ExceptionCode == STATUS_BREAKPOINT) - && (Exception->ExceptionRecord.ExceptionInformation[0] == 0)) - { - ULONG_PTR ProgramCounter; - - /* So we must get past the breakpoint instruction */ - ProgramCounter = KdpGetContextPc(&CurrentContext); - KdpSetContextPc(&CurrentContext, ProgramCounter + KD_BREAKPOINT_SIZE); - - SetContextManipulateHandler(State, MessageData, MessageLength, KdContext); - KdpManipulateStateHandler = ContinueManipulateStateHandler; - return KdPacketReceived; - } - - return ContinueManipulateStateHandler(State, MessageData, MessageLength, KdContext); + return handle_gdb_c(State, MessageData, MessageLength, KdContext); + } + + if (strncmp(gdb_input, "vCont;s", 7) == 0) + { + + return handle_gdb_s(State, MessageData, MessageLength, KdContext); } } @@ -524,11 +916,14 @@ { case '?': /* Send the Status */ - gdb_send_exception(TRUE); + gdb_send_exception(); break; case '!': send_gdb_packet("OK"); break; + case 'c': + Status = handle_gdb_c(State, MessageData, MessageLength, KdContext); + break; case 'g': gdb_send_registers(); break; @@ -544,17 +939,28 @@ case 'q': handle_gdb_query(); break; + case 's': + Status = handle_gdb_s(State, MessageData, MessageLength, KdContext); + break; case 'T': handle_gdb_thread_alive(); break; case 'v': Status = handle_gdb_v(State, MessageData, MessageLength, KdContext); break; + case 'X': + Status = handle_gdb_write_mem(State, MessageData, MessageLength, KdContext); + break; + case 'z': + Status = handle_gdb_remove_breakpoint(State, MessageData, MessageLength, KdContext); + break; + case 'Z': + Status = handle_gdb_insert_breakpoint(State, MessageData, MessageLength, KdContext); + break; default: - /* We don't know how to handle this request. Maybe this is something for KD */ - State->ReturnStatus = STATUS_NOT_SUPPORTED; + /* We don't know how to handle this request. */ KDDBGPRINT("Unsupported GDB command: %s.\n", gdb_input); - return KdPacketReceived; + send_gdb_packet(""); } } while (Status == (KDSTATUS)-1); Modified: trunk/reactos/drivers/base/kdgdb/gdb_receive.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/base/kdgdb/gdb_rec…
============================================================================== --- trunk/reactos/drivers/base/kdgdb/gdb_receive.c [iso-8859-1] (original) +++ trunk/reactos/drivers/base/kdgdb/gdb_receive.c [iso-8859-1] Mon Aug 22 22:24:30 2016 @@ -30,7 +30,7 @@ NTAPI gdb_receive_packet(_Inout_ PKD_CONTEXT KdContext) { - char* ByteBuffer = gdb_input; + UCHAR* ByteBuffer = (UCHAR*)gdb_input; UCHAR Byte; KDSTATUS Status; CHAR CheckSum = 0, ReceivedCheckSum; @@ -60,9 +60,18 @@ *ByteBuffer = '\0'; break; } - + CheckSum += (CHAR)Byte; + + /* See if we should escape */ + if (Byte == 0x7d) + { + Status = KdpReceiveByte(&Byte); + if (Status != KdPacketReceived) + return Status; + CheckSum += (CHAR)Byte; + Byte ^= 0x20; + } *ByteBuffer++ = Byte; - CheckSum += (CHAR)Byte; } /* Get Check sum (two bytes) */ @@ -80,6 +89,7 @@ if (ReceivedCheckSum != CheckSum) { /* Do not acknowledge to GDB */ + KDDBGPRINT("Check sums don't match!"); KdpSendByte('-'); return KdPacketNeedsResend; } Modified: trunk/reactos/drivers/base/kdgdb/gdb_send.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/base/kdgdb/gdb_sen…
============================================================================== --- trunk/reactos/drivers/base/kdgdb/gdb_send.c [iso-8859-1] (original) +++ trunk/reactos/drivers/base/kdgdb/gdb_send.c [iso-8859-1] Mon Aug 22 22:24:30 2016 @@ -168,7 +168,7 @@ } void -gdb_send_exception(BOOLEAN WithThread) +gdb_send_exception() { char gdb_out[1024]; char* ptr = gdb_out; @@ -184,20 +184,16 @@ } else ptr += sprintf(ptr, "05"); - if (WithThread) - { + #if MONOPROCESS - ptr += sprintf(ptr, "thread:%" PRIxPTR ";", - handle_to_gdb_tid(PsGetThreadId(Thread))); + ptr += sprintf(ptr, "thread:%" PRIxPTR ";", + handle_to_gdb_tid(PsGetThreadId(Thread))); #else - ptr += sprintf(ptr, "thread:p%" PRIxPTR ".%" PRIxPTR ";", - handle_to_gdb_pid(PsGetThreadProcessId(Thread)), - handle_to_gdb_tid(PsGetThreadId(Thread))); + ptr += sprintf(ptr, "thread:p%" PRIxPTR ".%" PRIxPTR ";", + handle_to_gdb_pid(PsGetThreadProcessId(Thread)), + handle_to_gdb_tid(PsGetThreadId(Thread))); #endif - } ptr += sprintf(ptr, "core:%x;", CurrentStateChange.Processor); - /* Add program counter */ - gdb_append_pc_to_exception(Thread, ptr); send_gdb_packet(gdb_out); } Modified: trunk/reactos/drivers/base/kdgdb/i386_sup.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/base/kdgdb/i386_su…
============================================================================== --- trunk/reactos/drivers/base/kdgdb/i386_sup.c [iso-8859-1] (original) +++ trunk/reactos/drivers/base/kdgdb/i386_sup.c [iso-8859-1] Mon Aug 22 22:24:30 2016 @@ -251,28 +251,4 @@ } } -char* -gdb_append_pc_to_exception( - _In_ PETHREAD Thread, - _Inout_ char* ptr) -{ - /* Get EIP */ - unsigned short ptrSize; - unsigned char* EipPtr = thread_to_reg(Thread, EIP, &ptrSize); - - /* Print it */ - ptr += sprintf(ptr, "08:"); - *ptr++ = hex_chars[EipPtr[0] >> 4]; - *ptr++ = hex_chars[EipPtr[0] & 0xF]; - *ptr++ = hex_chars[EipPtr[1] >> 4]; - *ptr++ = hex_chars[EipPtr[1] & 0xF]; - *ptr++ = hex_chars[EipPtr[2] >> 4]; - *ptr++ = hex_chars[EipPtr[2] & 0xF]; - *ptr++ = hex_chars[EipPtr[3] >> 4]; - *ptr++ = hex_chars[EipPtr[3] & 0xF]; - *ptr++ = ';'; - *ptr++ = '\0'; - - return ptr; -} - + Modified: trunk/reactos/drivers/base/kdgdb/kdcom.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/base/kdgdb/kdcom.c…
============================================================================== --- trunk/reactos/drivers/base/kdgdb/kdcom.c [iso-8859-1] (original) +++ trunk/reactos/drivers/base/kdgdb/kdcom.c [iso-8859-1] Mon Aug 22 22:24:30 2016 @@ -303,7 +303,6 @@ return KdPacketReceived; } - KDDBGPRINT("CpGetByte returned %u.\n", CpStatus); return KdPacketTimedOut; } Modified: trunk/reactos/drivers/base/kdgdb/kdgdb.h URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/base/kdgdb/kdgdb.h…
============================================================================== --- trunk/reactos/drivers/base/kdgdb/kdgdb.h [iso-8859-1] (original) +++ trunk/reactos/drivers/base/kdgdb/kdgdb.h [iso-8859-1] Mon Aug 22 22:24:30 2016 @@ -19,7 +19,7 @@ #include <pstypes.h> -#define KDDEBUG /* uncomment to enable debugging this dll */ +//#define KDDEBUG /* uncomment to enable debugging this dll */ /* To undefine once
https://sourceware.org/bugzilla/show_bug.cgi?id=17397
is resolved */ #define MONOPROCESS 1 @@ -83,7 +83,7 @@ void send_gdb_packet(_In_ CHAR* Buffer); void send_gdb_memory(_In_ VOID* Buffer, size_t Length); void gdb_send_debug_io(_In_ PSTRING String, _In_ BOOLEAN WithPrefix); -void gdb_send_exception(BOOLEAN WithThread); +void gdb_send_exception(void); void send_gdb_ntstatus(_In_ NTSTATUS Status); extern const char hex_chars[]; @@ -113,15 +113,18 @@ /* arch_sup.c */ extern void gdb_send_register(void); extern void gdb_send_registers(void); -extern char* gdb_append_pc_to_exception(_In_ PETHREAD Thread, _Inout_ char* ptr); /* Architecture specific defines. See ntoskrnl/include/internal/arch/ke.h */ #ifdef _M_IX86 +/* Handling passing over the breakpoint instruction */ # define KdpGetContextPc(Context) \ ((Context)->Eip) # define KdpSetContextPc(Context, ProgramCounter) \ ((Context)->Eip = (ProgramCounter)) # define KD_BREAKPOINT_SIZE sizeof(UCHAR) +/* Single step mode */ +# define KdpSetSingleStep(Context) \ + ((Context)->EFlags |= EFLAGS_TF) #else # error "Please define relevant macros for your architecture" #endif Modified: trunk/reactos/drivers/base/kdgdb/kdpacket.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/base/kdgdb/kdpacke…
============================================================================== --- trunk/reactos/drivers/base/kdgdb/kdpacket.c [iso-8859-1] (original) +++ trunk/reactos/drivers/base/kdgdb/kdpacket.c [iso-8859-1] Mon Aug 22 22:24:30 2016 @@ -160,7 +160,7 @@ #else gdb_dbg_pid = handle_to_gdb_pid(PsGetThreadProcessId(Thread)); #endif - gdb_send_exception(FALSE); + gdb_send_exception(); /* Next receive call will ask for the context */ KdpManipulateStateHandler = GetContextManipulateHandler; break; @@ -394,6 +394,13 @@ IN PSTRING MessageData, IN OUT PKD_CONTEXT KdContext) { + /* Override if we have some debug print from KD. */ + if (PacketType == PACKET_TYPE_KD_DEBUG_IO) + { + send_kd_debug_io((DBGKD_DEBUG_IO*)MessageHeader->Buffer, MessageData); + return; + } + /* Maybe we are in a send <-> receive loop that GDB doesn't need to know about */ if (KdpSendPacketHandler) {
8 years, 4 months
1
0
0
0
[dchapyshev] 72434: [TRANSLATIONS] - Update Russian translation
by dchapyshev@svn.reactos.org
Author: dchapyshev Date: Mon Aug 22 21:18:42 2016 New Revision: 72434 URL:
http://svn.reactos.org/svn/reactos?rev=72434&view=rev
Log: [TRANSLATIONS] - Update Russian translation Modified: trunk/reactos/base/applications/mscutils/eventvwr/lang/ru-RU.rc trunk/reactos/base/applications/mscutils/servman/lang/ru-RU.rc trunk/reactos/base/shell/explorer/lang/ru-RU.rc trunk/reactos/sdk/include/reactos/mc/errcodes.mc trunk/reactos/sdk/include/reactos/mc/neteventmsg.mc [This mail would be too long, it was shortened to contain the URLs only.] Modified: trunk/reactos/base/applications/mscutils/eventvwr/lang/ru-RU.rc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/mscutils…
Modified: trunk/reactos/base/applications/mscutils/servman/lang/ru-RU.rc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/mscutils…
Modified: trunk/reactos/base/shell/explorer/lang/ru-RU.rc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/shell/explorer/lang/r…
Modified: trunk/reactos/sdk/include/reactos/mc/errcodes.mc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/sdk/include/reactos/mc/err…
Modified: trunk/reactos/sdk/include/reactos/mc/neteventmsg.mc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/sdk/include/reactos/mc/net…
8 years, 4 months
1
0
0
0
[dchapyshev] 72433: [SDK] - It is partially translated into Russian * Now there is a possibility of the translation of *.mc of files
by dchapyshev@svn.reactos.org
Author: dchapyshev Date: Mon Aug 22 16:48:55 2016 New Revision: 72433 URL:
http://svn.reactos.org/svn/reactos?rev=72433&view=rev
Log: [SDK] - It is partially translated into Russian * Now there is a possibility of the translation of *.mc of files Modified: trunk/reactos/sdk/include/reactos/mc/errcodes.mc Modified: trunk/reactos/sdk/include/reactos/mc/errcodes.mc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/sdk/include/reactos/mc/err…
============================================================================== --- trunk/reactos/sdk/include/reactos/mc/errcodes.mc [iso-8859-1] (original) +++ trunk/reactos/sdk/include/reactos/mc/errcodes.mc [iso-8859-1] Mon Aug 22 16:48:55 2016 @@ -11,7 +11,8 @@ WIN32=0x7:FACILITY_GENERAL ) -LanguageNames=(English=0x409:MSG00409) +LanguageNames=(English=0x409:MSG00409 + Russian=0x419:MSG00419) MessageId=0 Severity=Success @@ -20,6 +21,9 @@ Language=English ERROR_SUCCESS - The operation completed successfully. . +Language=Russian +ERROR_SUCCESS - ÐпеÑаÑÐ¸Ñ ÑÑпеÑно завеÑÑена. +. MessageId=1 Severity=Success @@ -28,6 +32,9 @@ Language=English ERROR_INVALID_FUNCTION - Incorrect function. . +Language=Russian +ERROR_INVALID_FUNCTION - ÐевеÑÐ½Ð°Ñ ÑÑнкÑиÑ. +. MessageId=2 Severity=Success @@ -36,6 +43,9 @@ Language=English ERROR_FILE_NOT_FOUND - The system cannot find the file specified. . +Language=Russian +ERROR_FILE_NOT_FOUND - Ðе ÑдаеÑÑÑ Ð½Ð°Ð¹Ñи ÑказаннÑй Ñайл. +. MessageId=3 Severity=Success @@ -44,6 +54,9 @@ Language=English ERROR_PATH_NOT_FOUND - The system cannot find the path specified. . +Language=Russian +ERROR_PATH_NOT_FOUND - СиÑÑеме не ÑдаеÑÑÑ Ð½Ð°Ð¹Ñи ÑказаннÑй пÑÑÑ. +. MessageId=4 Severity=Success @@ -52,6 +65,9 @@ Language=English ERROR_TOO_MANY_OPEN_FILES - The system cannot open the file. . +Language=Russian +ERROR_TOO_MANY_OPEN_FILES - СиÑÑеме не ÑдаеÑÑÑ Ð¾ÑкÑÑÑÑ Ñайл. +. MessageId=5 Severity=Success @@ -60,6 +76,9 @@ Language=English ERROR_ACCESS_DENIED - Access is denied. . +Language=Russian +ERROR_ACCESS_DENIED - ÐÑказано в доÑÑÑпе. +. MessageId=6 Severity=Success @@ -68,6 +87,9 @@ Language=English ERROR_INVALID_HANDLE - The handle is invalid. . +Language=Russian +ERROR_INVALID_HANDLE - ÐевеÑнÑй деÑкÑипÑоÑ. +. MessageId=7 Severity=Success @@ -76,6 +98,9 @@ Language=English ERROR_ARENA_TRASHED - The storage control blocks were destroyed. . +Language=Russian +ERROR_ARENA_TRASHED - ÐовÑÐµÐ¶Ð´ÐµÐ½Ñ ÑпÑавлÑÑÑие блоки памÑÑи. +. MessageId=8 Severity=Success @@ -84,6 +109,9 @@ Language=English ERROR_NOT_ENOUGH_MEMORY - Not enough storage is available to process this command. . +Language=Russian +ERROR_NOT_ENOUGH_MEMORY - ÐедоÑÑаÑоÑно памÑÑи Ð´Ð»Ñ Ð¾Ð±ÑабоÑки командÑ. +. MessageId=9 Severity=Success @@ -92,6 +120,9 @@ Language=English ERROR_INVALID_BLOCK - The storage control block address is invalid. . +Language=Russian +ERROR_INVALID_BLOCK - ÐевеÑнÑй адÑÐµÑ ÑпÑавлÑÑÑего блока памÑÑи. +. MessageId=10 Severity=Success @@ -100,6 +131,9 @@ Language=English ERROR_BAD_ENVIRONMENT - The environment is incorrect. . +Language=Russian +ERROR_BAD_ENVIRONMENT - ÐедопÑÑÑÐ¸Ð¼Ð°Ñ ÑÑеда. +. MessageId=11 Severity=Success @@ -108,6 +142,9 @@ Language=English ERROR_BAD_FORMAT - An attempt was made to load a program with an incorrect format. . +Language=Russian +ERROR_BAD_FORMAT - ÐопÑÑка запÑÑÑиÑÑ Ð¿ÑогÑÐ°Ð¼Ð¼Ñ Ñ Ð½ÐµÐ´Ð¾Ð¿ÑÑÑимÑм ÑоÑмаÑом. +. MessageId=12 Severity=Success @@ -116,6 +153,9 @@ Language=English ERROR_INVALID_ACCESS - The access code is invalid. . +Language=Russian +ERROR_INVALID_ACCESS - ÐевеÑнÑй код доÑÑÑпа. +. MessageId=13 Severity=Success @@ -124,6 +164,9 @@ Language=English ERROR_INVALID_DATA - The data is invalid. . +Language=Russian +ERROR_INVALID_DATA - ÐедопÑÑÑимÑе даннÑе. +. MessageId=14 Severity=Success @@ -132,6 +175,9 @@ Language=English ERROR_OUTOFMEMORY - Not enough storage is available to complete this operation. . +Language=Russian +ERROR_OUTOFMEMORY - ÐедоÑÑаÑоÑно памÑÑи Ð´Ð»Ñ Ð·Ð°Ð²ÐµÑÑÐµÐ½Ð¸Ñ Ð¾Ð¿ÐµÑаÑии. +. MessageId=15 Severity=Success @@ -140,6 +186,9 @@ Language=English ERROR_INVALID_DRIVE - The system cannot find the drive specified. . +Language=Russian +ERROR_INVALID_DRIVE - СиÑÑема не Ð¼Ð¾Ð¶ÐµÑ Ð½Ð°Ð¹Ñи Ñказанное ÑÑÑÑойÑÑво. +. MessageId=16 Severity=Success @@ -148,6 +197,9 @@ Language=English ERROR_CURRENT_DIRECTORY - The directory cannot be removed. . +Language=Russian +ERROR_CURRENT_DIRECTORY - ÐÑÐ¾Ñ ÐºÐ°Ñалог не Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ñдален. +. MessageId=17 Severity=Success @@ -156,6 +208,9 @@ Language=English ERROR_NOT_SAME_DEVICE - The system cannot move the file to a different disk drive. . +Language=Russian +ERROR_NOT_SAME_DEVICE - СиÑÑема не Ð¼Ð¾Ð¶ÐµÑ Ð¿ÐµÑемеÑÑиÑÑ Ñайл на дÑÑгое диÑковое ÑÑÑÑойÑÑво. +. MessageId=18 Severity=Success @@ -164,6 +219,9 @@ Language=English ERROR_NO_MORE_FILES - There are no more files. . +Language=Russian +ERROR_NO_MORE_FILES - Файлов болÑÑе неÑ. +. MessageId=19 Severity=Success @@ -172,6 +230,9 @@ Language=English ERROR_WRITE_PROTECT - The media is write protected. . +Language=Russian +ERROR_WRITE_PROTECT - ÐоÑиÑÐµÐ»Ñ Ð·Ð°ÑиÑен Ð¾Ñ Ð·Ð°Ð¿Ð¸Ñи. +. MessageId=20 Severity=Success @@ -180,6 +241,9 @@ Language=English ERROR_BAD_UNIT - The system cannot find the device specified. . +Language=Russian +ERROR_BAD_UNIT - СиÑÑема не Ð¼Ð¾Ð¶ÐµÑ Ð½Ð°Ð¹Ñи Ñказанное ÑÑÑÑойÑÑво. +. MessageId=21 Severity=Success @@ -188,6 +252,9 @@ Language=English ERROR_NOT_READY - The device is not ready. . +Language=Russian +ERROR_NOT_READY - УÑÑÑойÑÑво не гоÑово. +. MessageId=22 Severity=Success @@ -196,6 +263,9 @@ Language=English ERROR_BAD_COMMAND - The device does not recognize the command. . +Language=Russian +ERROR_BAD_COMMAND - УÑÑÑойÑÑво не ÑаÑÐ¿Ð¾Ð·Ð½Ð°ÐµÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ. +. MessageId=23 Severity=Success @@ -204,6 +274,9 @@ Language=English ERROR_CRC - Data error (cyclic redundancy check). . +Language=Russian +ERROR_CRC - ÐÑибка в даннÑÑ (ÑиклиÑеÑкий код Ñ Ð¸Ð·Ð±ÑÑоÑноÑÑÑÑ). +. MessageId=24 Severity=Success @@ -212,6 +285,9 @@ Language=English ERROR_BAD_LENGTH - The program issued a command but the command length is incorrect. . +Language=Russian +ERROR_BAD_LENGTH - ÐÑогÑамма вÑдала ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ Ñ Ð½ÐµÐ´Ð¾Ð¿ÑÑÑимой длиной. +. MessageId=25 Severity=Success @@ -220,6 +296,9 @@ Language=English ERROR_SEEK - The drive cannot locate a specific area or track on the disk. . +Language=Russian +ERROR_SEEK - ÐиÑковое ÑÑÑÑойÑÑво не Ð¼Ð¾Ð¶ÐµÑ Ð¾Ð±Ð½Ð°ÑÑжиÑÑ ÑказаннÑÑ Ð¾Ð±Ð»Ð°ÑÑÑ Ð¸Ð»Ð¸ доÑожкÑ. +. MessageId=26 Severity=Success @@ -228,6 +307,9 @@ Language=English ERROR_NOT_DOS_DISK - The specified disk or diskette cannot be accessed. . +Language=Russian +ERROR_NOT_DOS_DISK - ÐÐµÑ Ð´Ð¾ÑÑÑпа к диÑÐºÑ Ð¸Ð»Ð¸ диÑкеÑе. +. MessageId=27 Severity=Success @@ -236,6 +318,9 @@ Language=English ERROR_SECTOR_NOT_FOUND - The drive cannot find the sector requested. . +Language=Russian +ERROR_SECTOR_NOT_FOUND - ÐиÑковое ÑÑÑÑойÑÑво не Ð¼Ð¾Ð¶ÐµÑ Ð¾Ð±Ð½Ð°ÑÑжиÑÑ ÑказаннÑÑ Ð¾Ð±Ð»Ð°ÑÑÑ Ð¸Ð»Ð¸ доÑожкÑ. +. MessageId=28 Severity=Success @@ -244,6 +329,9 @@ Language=English ERROR_OUT_OF_PAPER - The printer is out of paper. . +Language=Russian +ERROR_OUT_OF_PAPER - РпÑинÑеÑе законÑилаÑÑ Ð±Ñмага. +. MessageId=29 Severity=Success @@ -252,6 +340,9 @@ Language=English ERROR_WRITE_FAULT - The system cannot write to the specified device. . +Language=Russian +ERROR_WRITE_FAULT - СиÑÑема не Ð¼Ð¾Ð¶ÐµÑ Ð²ÑполниÑÑ Ð·Ð°Ð¿Ð¸ÑÑ Ð½Ð° Ñказанное ÑÑÑÑойÑÑво. +. MessageId=30 Severity=Success @@ -260,6 +351,9 @@ Language=English ERROR_READ_FAULT - The system cannot read from the specified device. . +Language=Russian +ERROR_READ_FAULT - СиÑÑеме не Ð¼Ð¾Ð¶ÐµÑ Ð²ÑполниÑÑ ÑÑение Ñ Ñказанного ÑÑÑÑойÑÑва. +. MessageId=31 Severity=Success @@ -268,6 +362,9 @@ Language=English ERROR_GEN_FAILURE - A device attached to the system is not functioning. . +Language=Russian +ERROR_GEN_FAILURE - УÑÑÑойÑÑво, подклÑÑенное к ÑиÑÑеме, не ÑабоÑаеÑ. +. MessageId=32 Severity=Success @@ -276,6 +373,9 @@ Language=English ERROR_SHARING_VIOLATION - The process cannot access the file because it is being used by another process. . +Language=Russian +ERROR_SHARING_VIOLATION - ÐÑоÑеÑÑ Ð½Ðµ Ð¸Ð¼ÐµÐµÑ Ð´Ð¾ÑÑÑпа к ÑайлÑ, поÑколÑÐºÑ Ñайл иÑполÑзÑеÑÑÑ Ð´ÑÑгим пÑоÑеÑÑом. +. MessageId=33 Severity=Success @@ -284,6 +384,9 @@ Language=English ERROR_LOCK_VIOLATION - The process cannot access the file because another process has locked a portion of the file. . +Language=Russian +ERROR_LOCK_VIOLATION - ÐÑоÑеÑÑ Ð½Ðµ Ð¸Ð¼ÐµÐµÑ Ð´Ð¾ÑÑÑпа к ÑайлÑ, поÑколÑÐºÑ Ð´ÑÑгой пÑоÑеÑÑ Ð·Ð°Ð±Ð»Ð¾ÐºÐ¸Ñовал ÑаÑÑÑ Ñайла. +. MessageId=34 Severity=Success @@ -292,6 +395,9 @@ Language=English ERROR_WRONG_DISK - The wrong diskette is in the drive. Insert %2 (Volume Serial Number: %3) into drive %1. . +Language=Russian +ERROR_WRONG_DISK - ÐÑÑавÑе дÑÑгÑÑ Ð´Ð¸ÑкеÑÑ. ÐÑÑавÑÑе %2 (ÑеÑийнÑй Ð½Ð¾Ð¼ÐµÑ Ñома: %3) в диÑковод %1. +. MessageId=36 Severity=Success @@ -300,6 +406,9 @@ Language=English ERROR_SHARING_BUFFER_EXCEEDED - Too many files opened for sharing. . +Language=Russian +ERROR_SHARING_BUFFER_EXCEEDED - СлиÑком много Ñайлов оÑкÑÑÑо Ð´Ð»Ñ ÑовмеÑÑного иÑполÑзованиÑ. +. MessageId=38 Severity=Success @@ -308,6 +417,9 @@ Language=English ERROR_HANDLE_EOF - Reached the end of the file. . +Language=Russian +ERROR_HANDLE_EOF - ÐоÑÑигнÑÑ ÐºÐ¾Ð½ÐµÑ Ñайла. +. MessageId=39 Severity=Success @@ -316,6 +428,9 @@ Language=English ERROR_HANDLE_DISK_FULL - The disk is full. . +Language=Russian +ERROR_HANDLE_DISK_FULL - ÐÑÑÑÑÑÑвÑÐµÑ Ð¼ÐµÑÑо на диÑке. +. MessageId=50 Severity=Success @@ -324,14 +439,21 @@ Language=English ERROR_NOT_SUPPORTED - The request is not supported. . +Language=Russian +ERROR_NOT_SUPPORTED - ÐапÑÐ¾Ñ Ð½Ðµ поддеÑживаеÑÑÑ. +. MessageId=51 Severity=Success Facility=System SymbolicName=ERROR_REM_NOT_LIST Language=English -ERROR_REM_NOT_LIST - Windows cannot find the network path. Verify that the network path is correct and the destination computer is not busy or turned off. If Windows still cannot find the network path, contact your network administrator. -. +ERROR_REM_NOT_LIST - ReactOS cannot find the network path. Verify that the network path is correct and the destination computer is not busy or turned off. If ReactOS still cannot find the network path, contact your network administrator. +. +Language=Russian +ERROR_REM_NOT_LIST - Ðевозможно найÑи ÑеÑевой пÑÑÑ. УбедиÑеÑÑ, ÑÑо ÑеÑевой пÑÑÑ Ñказан веÑно, а конеÑнÑй компÑÑÑÐµÑ Ð²ÐºÐ»ÑÑен и не занÑÑ. ÐÑли ÑиÑÑема Ð²Ð½Ð¾Ð²Ñ Ð½Ðµ ÑÐ¼Ð¾Ð¶ÐµÑ Ð½Ð°Ð¹Ñи пÑÑÑ, обÑаÑиÑеÑÑ Ðº ÑеÑÐµÐ²Ð¾Ð¼Ñ Ð°Ð´Ð¼Ð¸Ð½Ð¸ÑÑÑаÑоÑÑ. +. + MessageId=52 Severity=Success @@ -340,6 +462,9 @@ Language=English ERROR_DUP_NAME - You were not connected because a duplicate name exists on the network. Go to System in the Control Panel to change the computer name and try again. . +Language=Russian +ERROR_DUP_NAME - ÐÑ Ð½Ðµ подклÑÑенÑ, поÑколÑÐºÑ Ñакое же Ð¸Ð¼Ñ Ñже ÑÑÑеÑÑвÑÐµÑ Ð² ÑÑой ÑеÑи. ÐÐ»Ñ Ð¿ÑиÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ Ðº Ð´Ð¾Ð¼ÐµÐ½Ñ Ð¾ÑкÑойÑе ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÐµÐ½Ñ Ð¿Ð°Ð½ÐµÐ»Ð¸ ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ "СиÑÑема", измениÑе Ð¸Ð¼Ñ ÐºÐ¾Ð¼Ð¿ÑÑÑеÑа и повÑоÑиÑе попÑÑкÑ. ÐÐ»Ñ Ð¿ÑиÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ Ðº ÑабоÑей гÑÑппе вÑбеÑиÑе дÑÑгое Ð¸Ð¼Ñ ÑабоÑей гÑÑппÑ. +. MessageId=53 Severity=Success @@ -348,6 +473,9 @@ Language=English ERROR_BAD_NETPATH - The network path was not found. . +Language=Russian +ERROR_BAD_NETPATH - Ðе найден ÑеÑевой пÑÑÑ. +. MessageId=54 Severity=Success @@ -356,6 +484,9 @@ Language=English ERROR_NETWORK_BUSY - The network is busy. . +Language=Russian +ERROR_NETWORK_BUSY - СеÑÑ Ð·Ð°Ð½ÑÑа. +. MessageId=55 Severity=Success @@ -364,6 +495,9 @@ Language=English ERROR_DEV_NOT_EXIST - The specified network resource or device is no longer available. . +Language=Russian +ERROR_DEV_NOT_EXIST - СеÑевой ÑеÑÑÑÑ Ð¸Ð»Ð¸ ÑÑÑÑойÑÑво более недоÑÑÑпно. +. MessageId=56 Severity=Success @@ -372,6 +506,9 @@ Language=English ERROR_TOO_MANY_CMDS - The network BIOS command limit has been reached. . +Language=Russian +ERROR_TOO_MANY_CMDS - ÐоÑÑигнÑÑ Ð¿Ñедел ÑиÑла команд NetBIOS. +. MessageId=57 Severity=Success @@ -380,6 +517,9 @@ Language=English ERROR_ADAP_HDW_ERR - A network adapter hardware error occurred. . +Language=Russian +ERROR_ADAP_HDW_ERR - ÐппаÑаÑÐ½Ð°Ñ Ð¾Ñибка ÑеÑевой плаÑÑ. +. MessageId=58 Severity=Success @@ -388,6 +528,9 @@ Language=English ERROR_BAD_NET_RESP - The specified server cannot perform the requested operation. . +Language=Russian +ERROR_BAD_NET_RESP - УказаннÑй ÑеÑÐ²ÐµÑ Ð½Ðµ Ð¼Ð¾Ð¶ÐµÑ Ð²ÑполниÑÑ ÑÑебÑемÑÑ Ð¾Ð¿ÐµÑаÑиÑ. +. MessageId=59 Severity=Success @@ -396,6 +539,9 @@ Language=English ERROR_UNEXP_NET_ERR - An unexpected network error occurred. . +Language=Russian +ERROR_UNEXP_NET_ERR - ÐепÑÐµÐ´Ð²Ð¸Ð´ÐµÐ½Ð½Ð°Ñ ÑеÑÐµÐ²Ð°Ñ Ð¾Ñибка. +. MessageId=60 Severity=Success @@ -404,6 +550,9 @@ Language=English ERROR_BAD_REM_ADAP - The remote adapter is not compatible. . +Language=Russian +ERROR_BAD_REM_ADAP - ÐеÑовмеÑÑимÑй ÑдаленнÑй конÑÑоллеÑ. +. MessageId=61 Severity=Success @@ -412,6 +561,9 @@ Language=English ERROR_PRINTQ_FULL - The printer queue is full. . +Language=Russian +ERROR_PRINTQ_FULL - ÐÑеÑÐµÐ´Ñ Ð¿ÐµÑаÑи пеÑеполнена. +. MessageId=62 Severity=Success @@ -420,6 +572,9 @@ Language=English ERROR_NO_SPOOL_SPACE - Space to store the file waiting to be printed is not available on the server. . +Language=Russian +ERROR_NO_SPOOL_SPACE - Ðа ÑеÑвеÑе Ð½ÐµÑ Ð¼ÐµÑÑа Ð´Ð»Ñ Ñ ÑÐ°Ð½ÐµÐ½Ð¸Ñ Ð¾Ð¶Ð¸Ð´Ð°ÑÑего пеÑаÑи Ñайла. +. MessageId=63 Severity=Success @@ -428,6 +583,9 @@ Language=English ERROR_PRINT_CANCELLED - Your file waiting to be printed was deleted. . +Language=Russian +ERROR_PRINT_CANCELLED - ÐÐ°Ñ Ñайл, Ð½Ð°Ñ Ð¾Ð´Ð¸Ð²ÑийÑÑ Ð² оÑеÑеди вÑвода на пеÑаÑÑ, бÑл Ñдален. +. MessageId=64 Severity=Success @@ -436,6 +594,9 @@ Language=English ERROR_NETNAME_DELETED - The specified network name is no longer available. . +Language=Russian +ERROR_NETNAME_DELETED - Указанное ÑеÑевое Ð¸Ð¼Ñ Ð±Ð¾Ð»ÐµÐµ недоÑÑÑпно. +. MessageId=65 Severity=Success @@ -444,6 +605,9 @@ Language=English ERROR_NETWORK_ACCESS_DENIED - Network access is denied. . +Language=Russian +ERROR_NETWORK_ACCESS_DENIED - ÐÐµÑ Ð´Ð¾ÑÑÑпа к ÑеÑи. +. MessageId=66 Severity=Success @@ -452,6 +616,9 @@ Language=English ERROR_BAD_DEV_TYPE - The network resource type is not correct. . +Language=Russian +ERROR_BAD_DEV_TYPE - ÐевеÑно Ñказан Ñип ÑеÑевого ÑеÑÑÑÑа. +. MessageId=67 Severity=Success @@ -460,6 +627,9 @@ Language=English ERROR_BAD_NET_NAME - The network name cannot be found. . +Language=Russian +ERROR_BAD_NET_NAME - Ðе найдено ÑеÑевое имÑ. +. MessageId=68 Severity=Success @@ -468,6 +638,9 @@ Language=English ERROR_TOO_MANY_NAMES - The name limit for the local computer network adapter card was exceeded. . +Language=Russian +ERROR_TOO_MANY_NAMES - ÐÑевÑÑен пÑедел ÑиÑла имен Ð´Ð»Ñ ÑеÑевого адапÑеÑа локалÑного компÑÑÑеÑа. +. MessageId=69 Severity=Success @@ -476,6 +649,9 @@ Language=English ERROR_TOO_MANY_SESS - The network BIOS session limit was exceeded. . +Language=Russian +ERROR_TOO_MANY_SESS - ÐÑевÑÑен пÑедел по ÑиÑÐ»Ñ ÑеанÑов NetBIOS. +. MessageId=70 Severity=Success @@ -484,6 +660,9 @@ Language=English ERROR_SHARING_PAUSED - The remote server has been paused or is in the process of being started. . +Language=Russian +ERROR_SHARING_PAUSED - СеÑÐ²ÐµÑ ÑеÑи бÑл оÑÑановлен или Ð½Ð°Ñ Ð¾Ð´Ð¸ÑÑÑ Ð² пÑоÑеÑÑе запÑÑка. +. MessageId=71 Severity=Success @@ -492,6 +671,9 @@ Language=English ERROR_REQ_NOT_ACCEP - No more connections can be made to this remote computer at this time because there are already as many connections as the computer can accept. . +Language=Russian +ERROR_REQ_NOT_ACCEP - ÐополниÑелÑнÑе подклÑÑÐµÐ½Ð¸Ñ Ðº ÑÑÐ¾Ð¼Ñ ÑÐ´Ð°Ð»ÐµÐ½Ð½Ð¾Ð¼Ñ ÐºÐ¾Ð¼Ð¿ÑÑÑеÑÑ ÑейÑÐ°Ñ Ð½ÐµÐ²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ñ, Ñак как Ð¸Ñ ÑиÑло доÑÑигло пÑедела. +. MessageId=72 Severity=Success @@ -500,6 +682,9 @@ Language=English ERROR_REDIR_PAUSED - The specified printer or disk device has been paused. . +Language=Russian +ERROR_REDIR_PAUSED - РабоÑа Ñказанного пÑинÑеÑа или диÑкового накопиÑÐµÐ»Ñ Ð±Ñла оÑÑановлена. +. MessageId=80 Severity=Success @@ -508,6 +693,9 @@ Language=English ERROR_FILE_EXISTS - The file exists. . +Language=Russian +ERROR_FILE_EXISTS - Файл ÑÑÑеÑÑвÑеÑ. +. MessageId=82 Severity=Success @@ -516,6 +704,9 @@ Language=English ERROR_CANNOT_MAKE - The directory or file cannot be created. . +Language=Russian +ERROR_CANNOT_MAKE - Ðе ÑдаеÑÑÑ ÑоздаÑÑ Ñайл или папкÑ. +. MessageId=83 Severity=Success @@ -524,6 +715,9 @@ Language=English ERROR_FAIL_I24 - Fail on INT 24. . +Language=Russian +ERROR_FAIL_I24 - Сбой пÑеÑÑÐ²Ð°Ð½Ð¸Ñ INT 24. +. MessageId=84 Severity=Success @@ -532,6 +726,9 @@ Language=English ERROR_OUT_OF_STRUCTURES - Storage to process this request is not available. . +Language=Russian +ERROR_OUT_OF_STRUCTURES - ÐедоÑÑаÑоÑно памÑÑи Ð´Ð»Ñ Ð¾Ð±ÑабоÑки запÑоÑа. +. MessageId=85 Severity=Success @@ -540,6 +737,9 @@ Language=English ERROR_ALREADY_ASSIGNED - The local device name is already in use. . +Language=Russian +ERROR_ALREADY_ASSIGNED - ÐÐ¼Ñ Ð»Ð¾ÐºÐ°Ð»Ñного ÑÑÑÑойÑÑва Ñже иÑполÑзÑеÑÑÑ. +. MessageId=86 Severity=Success @@ -548,6 +748,9 @@ Language=English ERROR_INVALID_PASSWORD - The specified network password is not correct. . +Language=Russian +ERROR_INVALID_PASSWORD - СеÑевой паÑÐ¾Ð»Ñ Ñказан невеÑно. +. MessageId=87 Severity=Success @@ -556,6 +759,9 @@ Language=English ERROR_INVALID_PARAMETER - The parameter is incorrect. . +Language=Russian +ERROR_INVALID_PARAMETER - ÐаÑамеÑÑ Ð·Ð°Ð´Ð°Ð½ невеÑно. +. MessageId=88 Severity=Success @@ -564,6 +770,9 @@ Language=English ERROR_NET_WRITE_FAULT - A write fault occurred on the network. . +Language=Russian +ERROR_NET_WRITE_FAULT - ÐÑибка запиÑи в ÑеÑи. +. MessageId=89 Severity=Success @@ -572,6 +781,9 @@ Language=English ERROR_NO_PROC_SLOTS - The system cannot start another process at this time. . +Language=Russian +ERROR_NO_PROC_SLOTS - РнаÑÑоÑÑее вÑÐµÐ¼Ñ ÑиÑÑеме не ÑдаеÑÑÑ Ð·Ð°Ð¿ÑÑÑиÑÑ Ð´ÑÑгой пÑоÑеÑÑ. +. MessageId=100 Severity=Success @@ -580,6 +792,9 @@ Language=English ERROR_TOO_MANY_SEMAPHORES - Cannot create another system semaphore. . +Language=Russian +ERROR_TOO_MANY_SEMAPHORES - Ðе ÑдаеÑÑÑ ÑоздаÑÑ ÐµÑе один ÑиÑÑемнÑй ÑемаÑоÑ. +. MessageId=101 Severity=Success @@ -588,6 +803,9 @@ Language=English ERROR_EXCL_SEM_ALREADY_OWNED - The exclusive semaphore is owned by another process. . +Language=Russian +ERROR_EXCL_SEM_ALREADY_OWNED - СемаÑÐ¾Ñ ÑкÑклÑзивного доÑÑÑпа занÑÑ Ð´ÑÑгим пÑоÑеÑÑом. +. MessageId=102 Severity=Success @@ -596,6 +814,9 @@ Language=English ERROR_SEM_IS_SET - The semaphore is set and cannot be closed. . +Language=Russian +ERROR_SEM_IS_SET - СемаÑÐ¾Ñ ÑÑÑановлен и не Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð·Ð°ÐºÑÑÑ. +. MessageId=103 Severity=Success @@ -604,6 +825,9 @@ Language=English ERROR_TOO_MANY_SEM_REQUESTS - The semaphore cannot be set again. . +Language=Russian +ERROR_TOO_MANY_SEM_REQUESTS - СемаÑÐ¾Ñ Ð½Ðµ Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ ÑÑÑановлен повÑоÑно. +. MessageId=104 Severity=Success @@ -612,6 +836,9 @@ Language=English ERROR_INVALID_AT_INTERRUPT_TIME - Cannot request exclusive semaphores at interrupt time. . +Language=Russian +ERROR_INVALID_AT_INTERRUPT_TIME - ÐапÑоÑÑ Ðº ÑемаÑоÑам ÑкÑклÑзивного доÑÑÑпа на вÑÐµÐ¼Ñ Ð²ÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð¿ÑеÑÑваний не допÑÑкаÑÑÑÑ. +. MessageId=105 Severity=Success @@ -620,6 +847,9 @@ Language=English ERROR_SEM_OWNER_DIED - The previous ownership of this semaphore has ended. . +Language=Russian +ERROR_SEM_OWNER_DIED - ÐÑÐ¾Ñ ÑемаÑÐ¾Ñ Ð±Ð¾Ð»ÐµÐµ не пÑÐ¸Ð½Ð°Ð´Ð»ÐµÐ¶Ð¸Ñ Ð¸ÑполÑзовавÑÐµÐ¼Ñ ÐµÐ³Ð¾ пÑоÑеÑÑÑ. +. MessageId=106 Severity=Success @@ -628,6 +858,9 @@ Language=English ERROR_SEM_USER_LIMIT - Insert the diskette for drive %1. . +Language=Russian +ERROR_SEM_USER_LIMIT - ÐÑÑавÑе диÑкеÑÑ Ð² диÑковод %1. +. MessageId=107 Severity=Success @@ -636,6 +869,9 @@ Language=English ERROR_DISK_CHANGE - The program stopped because an alternate diskette was not inserted. . +Language=Russian +ERROR_DISK_CHANGE - ÐÑогÑамма бÑла оÑÑановлена, Ñак как нÑжнÑй диÑк вÑÑавлен не бÑл. +. MessageId=108 Severity=Success @@ -644,6 +880,9 @@ Language=English ERROR_DRIVE_LOCKED - The disk is in use or locked by another process. . +Language=Russian +ERROR_DRIVE_LOCKED - ÐиÑк занÑÑ Ð¸Ð»Ð¸ заблокиÑован дÑÑгим пÑоÑеÑÑом. +. MessageId=109 Severity=Success @@ -652,6 +891,9 @@ Language=English ERROR_BROKEN_PIPE - The pipe has been ended. . +Language=Russian +ERROR_BROKEN_PIPE - Ðанал бÑл закÑÑÑ. +. MessageId=110 Severity=Success @@ -660,6 +902,9 @@ Language=English ERROR_OPEN_FAILED - The system cannot open the device or file specified. . +Language=Russian +ERROR_OPEN_FAILED - СиÑÑеме не ÑдаеÑÑÑ Ð¾ÑкÑÑÑÑ Ñказанное ÑÑÑÑойÑÑво или Ñайл. +. MessageId=111 Severity=Success @@ -668,6 +913,9 @@ Language=English ERROR_BUFFER_OVERFLOW - The file name is too long. . +Language=Russian +ERROR_BUFFER_OVERFLOW - Указано ÑлиÑком длинное Ð¸Ð¼Ñ Ñайла. +. MessageId=112 Severity=Success @@ -676,6 +924,9 @@ Language=English ERROR_DISK_FULL - There is not enough space on the disk. . +Language=Russian +ERROR_DISK_FULL - ÐедоÑÑаÑоÑно меÑÑа на диÑке. +. MessageId=113 Severity=Success @@ -684,6 +935,9 @@ Language=English ERROR_NO_MORE_SEARCH_HANDLES - No more internal file identifiers available. . +Language=Russian +ERROR_NO_MORE_SEARCH_HANDLES - ÐÑÑеÑÐ¿Ð°Ð½Ñ Ð²Ð½ÑÑÑенние иденÑиÑикаÑоÑÑ Ñайлов. +. MessageId=114 Severity=Success @@ -692,6 +946,9 @@ Language=English ERROR_INVALID_TARGET_HANDLE - The target internal file identifier is incorrect. . +Language=Russian +ERROR_INVALID_TARGET_HANDLE - РезÑлÑÑиÑÑÑÑий внÑÑÑенний иденÑиÑикаÑÐ¾Ñ Ñайла непÑавилен. +. MessageId=117 Severity=Success @@ -700,6 +957,9 @@ Language=English ERROR_INVALID_CATEGORY - The IOCTL call made by the application program is not correct. . +Language=Russian +ERROR_INVALID_CATEGORY - ÐÑзов IOCTL пÑиложением пÑоизведен невеÑно. +. MessageId=118 Severity=Success @@ -708,6 +968,9 @@ Language=English ERROR_INVALID_VERIFY_SWITCH - The verify-on-write switch parameter value is not correct. . +Language=Russian +ERROR_INVALID_VERIFY_SWITCH - ÐаÑамеÑÑ Ð¿ÑовеÑки запиÑи даннÑÑ Ð¸Ð¼ÐµÐµÑ Ð½ÐµÐ²ÐµÑное знаÑение. +. MessageId=119 Severity=Success @@ -716,6 +979,9 @@ Language=English ERROR_BAD_DRIVER_LEVEL - The system does not support the command requested. . +Language=Russian +ERROR_BAD_DRIVER_LEVEL - СиÑÑема не Ð¼Ð¾Ð¶ÐµÑ Ð¾Ð±ÑабоÑаÑÑ Ð¿Ð¾Ð»ÑÑеннÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ. +. MessageId=120 Severity=Success @@ -724,6 +990,9 @@ Language=English ERROR_CALL_NOT_IMPLEMENTED - This function is not supported on this system. . +Language=Russian +ERROR_CALL_NOT_IMPLEMENTED - ÐÑа ÑÑнкÑÐ¸Ñ Ð½Ðµ поддеÑживаеÑÑÑ Ð´Ð»Ñ ÑÑой ÑиÑÑемÑ. +. MessageId=121 Severity=Success @@ -732,6 +1001,9 @@ Language=English ERROR_SEM_TIMEOUT - The semaphore timeout period has expired. . +Language=Russian +ERROR_SEM_TIMEOUT - ÐÑевÑÑен ÑаймаÑÑ ÑемаÑоÑа. +. MessageId=122 Severity=Success @@ -740,6 +1012,9 @@ Language=English ERROR_INSUFFICIENT_BUFFER - The data area passed to a system call is too small. . +Language=Russian +ERROR_INSUFFICIENT_BUFFER - ÐблаÑÑÑ Ð´Ð°Ð½Ð½ÑÑ , пеÑÐµÐ´Ð°Ð½Ð½Ð°Ñ Ð¿Ð¾ ÑиÑÑÐµÐ¼Ð½Ð¾Ð¼Ñ Ð²ÑзовÑ, ÑлиÑком мала. +. MessageId=123 Severity=Success @@ -748,6 +1023,9 @@ Language=English ERROR_INVALID_NAME - The filename, directory name, or volume label syntax is incorrect. . +Language=Russian +ERROR_INVALID_NAME - СинÑакÑиÑеÑÐºÐ°Ñ Ð¾Ñибка в имени Ñайла, имени папки или меÑке Ñома. +. MessageId=124 Severity=Success @@ -756,6 +1034,9 @@ Language=English ERROR_INVALID_LEVEL - The system call level is not correct. . +Language=Russian +ERROR_INVALID_LEVEL - ÐевеÑнÑй ÑÑÐ¾Ð²ÐµÐ½Ñ ÑиÑÑемного вÑзова. +. MessageId=125 Severity=Success @@ -764,6 +1045,9 @@ Language=English ERROR_NO_VOLUME_LABEL - The disk has no volume label. . +Language=Russian +ERROR_NO_VOLUME_LABEL - У диÑка оÑÑÑÑÑÑвÑÐµÑ Ð¼ÐµÑка Ñома. +. MessageId=126 Severity=Success @@ -772,6 +1056,9 @@ Language=English ERROR_MOD_NOT_FOUND - The specified module could not be found. . +Language=Russian +ERROR_MOD_NOT_FOUND - Ðе найден ÑказаннÑй модÑлÑ. +. MessageId=127 Severity=Success @@ -780,6 +1067,9 @@ Language=English ERROR_PROC_NOT_FOUND - The specified procedure could not be found. . +Language=Russian +ERROR_PROC_NOT_FOUND - Ðе найдена ÑÐºÐ°Ð·Ð°Ð½Ð½Ð°Ñ Ð¿ÑоÑедÑÑа. +. MessageId=128 Severity=Success @@ -788,6 +1078,9 @@ Language=English ERROR_WAIT_NO_CHILDREN - There are no child processes to wait for. . +Language=Russian +ERROR_WAIT_NO_CHILDREN - ÐоÑеÑние пÑоÑеÑÑÑ, оконÑÐ°Ð½Ð¸Ñ ÐºÐ¾ÑоÑÑÑ ÑÑебÑеÑÑÑ Ð¾Ð¶Ð¸Ð´Ð°ÑÑ, оÑÑÑÑÑÑвÑÑÑ. +. MessageId=129 Severity=Success @@ -796,6 +1089,9 @@ Language=English ERROR_CHILD_NOT_COMPLETE - The %1 application cannot be run in Win32 mode. . +Language=Russian +ERROR_CHILD_NOT_COMPLETE - ÐÑиложение "%1" не Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð·Ð°Ð¿ÑÑено в Ñежиме Win32. +. MessageId=130 Severity=Success @@ -804,6 +1100,9 @@ Language=English ERROR_DIRECT_ACCESS_HANDLE - Attempt to use a file handle to an open disk partition for an operation other than raw disk I/O. . +Language=Russian +ERROR_DIRECT_ACCESS_HANDLE - ÐопÑÑка иÑполÑзоваÑÑ Ð´ÐµÑкÑипÑÐ¾Ñ Ñайла Ð´Ð»Ñ Ð¾ÑкÑÑÑÐ¸Ñ Ñаздела диÑка и вÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð¾Ð¿ÐµÑаÑии, оÑлиÑаÑÑейÑÑ Ð¾Ñ Ð²Ð²Ð¾Ð´Ð°/вÑвода нижнего ÑÑовнÑ. +. MessageId=131 Severity=Success @@ -812,6 +1111,9 @@ Language=English ERROR_NEGATIVE_SEEK - An attempt was made to move the file pointer before the beginning of the file. . +Language=Russian +ERROR_NEGATIVE_SEEK - ÐопÑÑка помеÑÑиÑÑ ÑказаÑÐµÐ»Ñ Ð½Ð° Ñайл пеÑед наÑалом Ñайла. +. MessageId=132 Severity=Success @@ -820,6 +1122,9 @@ Language=English ERROR_SEEK_ON_DEVICE - The file pointer cannot be set on the specified device or file. . +Language=Russian +ERROR_SEEK_ON_DEVICE - УказаÑÐµÐ»Ñ Ð½Ð° Ñайл не Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ ÑÑÑановлен на заданное ÑÑÑÑойÑÑво или Ñайл. +. MessageId=133 Severity=Success @@ -828,6 +1133,9 @@ Language=English ERROR_IS_JOIN_TARGET - A JOIN or SUBST command cannot be used for a drive that contains previously joined drives. . +Language=Russian +ERROR_IS_JOIN_TARGET - ÐÐ¾Ð¼Ð°Ð½Ð´Ñ JOIN и SUBST не могÑÑ Ð±ÑÑÑ Ð¸ÑполÑÐ·Ð¾Ð²Ð°Ð½Ñ Ð´Ð»Ñ Ð´Ð¸Ñков, ÑодеÑжаÑÐ¸Ñ Ñже обÑединеннÑе диÑки. +. MessageId=134 Severity=Success @@ -836,6 +1144,9 @@ Language=English ERROR_IS_JOINED - An attempt was made to use a JOIN or SUBST command on a drive that has already been joined. . +Language=Russian +ERROR_IS_JOINED - ÐопÑÑка иÑполÑзоваÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ JOIN или SUBST Ð´Ð»Ñ Ð´Ð¸Ñка, Ñже вклÑÑенного в Ð½Ð°Ð±Ð¾Ñ Ð¾Ð±ÑединеннÑÑ Ð´Ð¸Ñков. +. MessageId=135 Severity=Success @@ -844,6 +1155,9 @@ Language=English ERROR_IS_SUBSTED - An attempt was made to use a JOIN or SUBST command on a drive that has already been substituted. . +Language=Russian +ERROR_IS_SUBSTED - ÐопÑÑка иÑполÑзоваÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ JOIN или SUBST Ð´Ð»Ñ Ð´Ð¸Ñка, коÑоÑÑй Ñже бÑл оÑобÑажен. +. MessageId=136 Severity=Success @@ -852,6 +1166,9 @@ Language=English ERROR_NOT_JOINED - The system tried to delete the JOIN of a drive that is not joined. . +Language=Russian +ERROR_NOT_JOINED - ÐопÑÑка ÑнÑÑÑ Ð¿Ñизнак обÑÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ Ñ Ð´Ð¸Ñка, Ð´Ð»Ñ ÐºÐ¾ÑоÑого команда JOIN не вÑполнÑлаÑÑ. +. MessageId=137 Severity=Success @@ -860,6 +1177,9 @@ Language=English ERROR_NOT_SUBSTED - The system tried to delete the substitution of a drive that is not substituted. . +Language=Russian +ERROR_NOT_SUBSTED - ÐопÑÑка ÑнÑÑÑ Ð¿Ñизнак оÑобÑÐ°Ð¶ÐµÐ½Ð¸Ñ Ñ Ð´Ð¸Ñка, Ð´Ð»Ñ ÐºÐ¾ÑоÑого команда SUBST не вÑполнÑлаÑÑ. +. MessageId=138 Severity=Success @@ -868,6 +1188,9 @@ Language=English ERROR_JOIN_TO_JOIN - The system tried to join a drive to a directory on a joined drive. . +Language=Russian +ERROR_JOIN_TO_JOIN - ÐопÑÑка обÑединиÑÑ Ð´Ð¸Ñк Ñ Ð¿Ð°Ð¿ÐºÐ¾Ð¹ на обÑединенном диÑке. +. MessageId=139 Severity=Success @@ -876,6 +1199,9 @@ Language=English ERROR_SUBST_TO_SUBST - The system tried to substitute a drive to a directory on a substituted drive. . +Language=Russian +ERROR_SUBST_TO_SUBST - ÐопÑÑка оÑобÑазиÑÑ Ð´Ð¸Ñк на папкÑ, Ð½Ð°Ñ Ð¾Ð´ÑÑÑÑÑÑ Ð½Ð° оÑобÑаженном диÑке. +. MessageId=140 Severity=Success @@ -884,6 +1210,9 @@ Language=English ERROR_JOIN_TO_SUBST - The system tried to join a drive to a directory on a substituted drive. . +Language=Russian +ERROR_JOIN_TO_SUBST - ÐопÑÑка обÑединиÑÑ Ð´Ð¸Ñк Ñ Ð¿Ð°Ð¿ÐºÐ¾Ð¹ на оÑобÑаженном диÑке. +. MessageId=141 Severity=Success @@ -892,6 +1221,9 @@ Language=English ERROR_SUBST_TO_JOIN - The system tried to SUBST a drive to a directory on a joined drive. . +Language=Russian +ERROR_SUBST_TO_JOIN - ÐопÑÑка оÑобÑазиÑÑ Ð´Ð¸Ñк на папкÑ, Ð½Ð°Ñ Ð¾Ð´ÑÑÑÑÑÑ Ð½Ð° обÑединенном диÑке. +. MessageId=142 Severity=Success @@ -900,6 +1232,9 @@ Language=English ERROR_BUSY_DRIVE - The system cannot perform a JOIN or SUBST at this time. . +Language=Russian +ERROR_BUSY_DRIVE - РнаÑÑоÑÑее вÑÐµÐ¼Ñ Ð²ÑполниÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ JOIN или SUBST невозможно. +. MessageId=143 Severity=Success @@ -908,6 +1243,9 @@ Language=English ERROR_SAME_DRIVE - The system cannot join or substitute a drive to or for a directory on the same drive. . +Language=Russian +ERROR_SAME_DRIVE - Ðевозможно обÑединиÑÑ (или оÑобÑазиÑÑ) диÑк Ñ Ð¿Ð°Ð¿ÐºÐ¾Ð¹ (или на папкÑ) ÑÑого же диÑка. +. MessageId=144 Severity=Success @@ -916,6 +1254,9 @@ Language=English ERROR_DIR_NOT_ROOT - The directory is not a subdirectory of the root directory. . +Language=Russian +ERROR_DIR_NOT_ROOT - ÐÑа папка не ÑвлÑеÑÑÑ Ð¿Ð¾Ð´Ð¿Ð°Ð¿ÐºÐ¾Ð¹ коÑневой папки. +. MessageId=145 Severity=Success @@ -924,6 +1265,9 @@ Language=English ERROR_DIR_NOT_EMPTY - The directory is not empty. . +Language=Russian +ERROR_DIR_NOT_EMPTY - Ðапка не пÑÑÑа. +. MessageId=146 Severity=Success @@ -932,6 +1276,9 @@ Language=English ERROR_IS_SUBST_PATH - The path specified is being used in a substitute. . +Language=Russian +ERROR_IS_SUBST_PATH - УказаннÑй пÑÑÑ Ð¸ÑполÑзÑеÑÑÑ Ð´Ð»Ñ Ð¾ÑобÑаженного диÑка. +. MessageId=147 Severity=Success @@ -940,6 +1287,9 @@ Language=English ERROR_IS_JOIN_PATH - Not enough resources are available to process this command. . +Language=Russian +ERROR_IS_JOIN_PATH - ÐедоÑÑаÑоÑно ÑеÑÑÑÑов Ð´Ð»Ñ Ð¾Ð±ÑабоÑки командÑ. +. MessageId=148 Severity=Success @@ -948,6 +1298,9 @@ Language=English ERROR_PATH_BUSY - The path specified cannot be used at this time. . +Language=Russian +ERROR_PATH_BUSY - УказаннÑй пÑÑÑ Ð½ÐµÐ²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ð¾ иÑполÑзоваÑÑ ÑейÑаÑ. +. MessageId=149 Severity=Success @@ -956,6 +1309,9 @@ Language=English ERROR_IS_SUBST_TARGET - An attempt was made to join or substitute a drive for which a directory on the drive is the target of a previous substitute. . +Language=Russian +ERROR_IS_SUBST_TARGET - ÐопÑÑка обÑединиÑÑ Ð¸Ð»Ð¸ оÑобÑазиÑÑ Ð´Ð¸Ñк, папка на коÑоÑом Ñже иÑполÑзÑеÑÑÑ Ð´Ð»Ñ Ð¾ÑобÑажениÑ. +. MessageId=150 Severity=Success @@ -964,6 +1320,9 @@ Language=English ERROR_SYSTEM_TRACE - System trace information was not specified in your CONFIG.SYS file, or tracing is disallowed. . +Language=Russian +ERROR_SYSTEM_TRACE - Ð¡Ð²ÐµÐ´ÐµÐ½Ð¸Ñ Ð¾ ÑÑаÑÑиÑовке в Ñайле CONFIG.SYS не найденÑ, либо ÑÑаÑÑиÑовка запÑеÑена. +. MessageId=151 Severity=Success @@ -972,6 +1331,9 @@ Language=English ERROR_INVALID_EVENT_COUNT - The number of specified semaphore events for DosMuxSemWait is not correct. . +Language=Russian +ERROR_INVALID_EVENT_COUNT - ЧиÑло ÑемаÑоÑов Ð´Ð»Ñ DosMuxSemWait задано невеÑно. +. MessageId=152 Severity=Success @@ -980,6 +1342,9 @@ Language=English ERROR_TOO_MANY_MUXWAITERS - DosMuxSemWait did not execute; too many semaphores are already set. . +Language=Russian +ERROR_TOO_MANY_MUXWAITERS - Ðе вÑполнен вÑзов DosMuxSemWait. УÑÑановлено ÑлиÑком много ÑемаÑоÑов. +. MessageId=153 Severity=Success @@ -988,6 +1353,9 @@ Language=English ERROR_INVALID_LIST_FORMAT - The DosMuxSemWait list is not correct. . +Language=Russian +ERROR_INVALID_LIST_FORMAT - ÐекоÑÑекÑнÑй вÑзов DosMuxSemWait. +. MessageId=154 Severity=Success @@ -996,6 +1364,9 @@ Language=English ERROR_LABEL_TOO_LONG - The volume label you entered exceeds the label character limit of the target file system. . +Language=Russian +ERROR_LABEL_TOO_LONG - Ðлина меÑки Ñома пÑевоÑÑ Ð¾Ð´Ð¸Ñ Ð¿Ñедел, ÑÑÑановленнÑй Ð´Ð»Ñ Ñайловой ÑиÑÑемÑ. +. MessageId=155 Severity=Success @@ -1004,6 +1375,9 @@ Language=English ERROR_TOO_MANY_TCBS - Cannot create another thread. . +Language=Russian +ERROR_TOO_MANY_TCBS - Ðе ÑдаеÑÑÑ ÑоздаÑÑ ÐµÑе один поÑок команд. +. MessageId=156 Severity=Success @@ -1012,6 +1386,9 @@ Language=English ERROR_SIGNAL_REFUSED - The recipient process has refused the signal. . +Language=Russian +ERROR_SIGNAL_REFUSED - ÐÑинимаÑÑий пÑоÑеÑÑ Ð¾Ñклонил Ñигнал. +. MessageId=157 Severity=Success @@ -1020,6 +1397,9 @@ Language=English ERROR_DISCARDED - The segment is already discarded and cannot be locked. . +Language=Russian +ERROR_DISCARDED - Ð¡ÐµÐ³Ð¼ÐµÐ½Ñ Ñже оÑвобожден и не Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð·Ð°Ð±Ð»Ð¾ÐºÐ¸Ñован. +. MessageId=158 Severity=Success @@ -1028,6 +1408,9 @@ Language=English ERROR_NOT_LOCKED - The segment is already unlocked. . +Language=Russian +ERROR_NOT_LOCKED - ÐлокиÑовка Ñ ÑегменÑа Ñже ÑнÑÑа. +. MessageId=159 Severity=Success @@ -1036,6 +1419,9 @@ Language=English ERROR_BAD_THREADID_ADDR - The address for the thread ID is not correct. . +Language=Russian +ERROR_BAD_THREADID_ADDR - ÐдÑÐµÑ Ð¸Ð´ÐµÐ½ÑиÑикаÑоÑа поÑока команд задан невеÑно. +. MessageId=160 Severity=Success @@ -1044,6 +1430,9 @@ Language=English ERROR_BAD_ARGUMENTS - The argument string passed to DosExecPgm is not correct. . +Language=Russian +ERROR_BAD_ARGUMENTS - ÐевеÑÐ½Ñ Ð¾Ð´Ð¸Ð½ или неÑколÑко аÑгÑменÑов. +. MessageId=161 Severity=Success @@ -1052,6 +1441,9 @@ Language=English ERROR_BAD_PATHNAME - The specified path is invalid. . +Language=Russian +ERROR_BAD_PATHNAME - Указан недопÑÑÑимÑй пÑÑÑ. +. MessageId=162 Severity=Success @@ -1060,6 +1452,9 @@ Language=English ERROR_SIGNAL_PENDING - A signal is already pending. . +Language=Russian +ERROR_SIGNAL_PENDING - Сигнал Ñже Ð½Ð°Ñ Ð¾Ð´Ð¸ÑÑÑ Ð² ÑоÑÑоÑнии обÑабоÑки. +. MessageId=164 Severity=Success @@ -1068,6 +1463,9 @@ Language=English ERROR_MAX_THRDS_REACHED - No more threads can be created in the system. . +Language=Russian +ERROR_MAX_THRDS_REACHED - Создание дополниÑелÑнÑÑ Ð¿Ð¾Ñоков команд невозможно. +. MessageId=167 Severity=Success @@ -1076,6 +1474,9 @@ Language=English ERROR_LOCK_FAILED - Unable to lock a region of a file. . +Language=Russian +ERROR_LOCK_FAILED - Ðе ÑдаеÑÑÑ ÑнÑÑÑ Ð±Ð»Ð¾ÐºÐ¸ÑÐ¾Ð²ÐºÑ Ñ Ð¾Ð±Ð»Ð°ÑÑи Ñайла. +. MessageId=170 Severity=Success @@ -1084,6 +1485,9 @@ Language=English ERROR_BUSY - The requested resource is in use. . +Language=Russian +ERROR_BUSY - ТÑебÑемÑй ÑеÑÑÑÑ Ð·Ð°Ð½ÑÑ. +. MessageId=173 Severity=Success @@ -1092,6 +1496,9 @@ Language=English ERROR_CANCEL_VIOLATION - A lock request was not outstanding for the supplied cancel region. . +Language=Russian +ERROR_CANCEL_VIOLATION - ÐапÑÐ¾Ñ Ð½Ð° блокиÑÐ¾Ð²ÐºÑ ÑооÑвеÑÑÑвÑÐµÑ Ð¾Ð¿Ñеделенной облаÑÑи. +. MessageId=174 Severity=Success @@ -1100,6 +1507,9 @@ Language=English ERROR_ATOMIC_LOCKS_NOT_SUPPORTED - The file system does not support atomic changes to the lock type. . +Language=Russian +ERROR_ATOMIC_LOCKS_NOT_SUPPORTED - Ð¤Ð°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑÑема не поддеÑÐ¶Ð¸Ð²Ð°ÐµÑ ÑказаннÑе Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñипа блокиÑовки. +. MessageId=180 Severity=Success @@ -1108,6 +1518,9 @@ Language=English ERROR_INVALID_SEGMENT_NUMBER - The system detected a segment number that was not correct. . +Language=Russian +ERROR_INVALID_SEGMENT_NUMBER - СиÑÑема обнаÑÑжила невеÑнÑй Ð½Ð¾Ð¼ÐµÑ ÑегменÑа. +. MessageId=182 Severity=Success @@ -1116,6 +1529,9 @@ Language=English ERROR_INVALID_ORDINAL - The operating system cannot run %1. . +Language=Russian +ERROR_INVALID_ORDINAL - ÐпеÑаÑÐ¸Ð¾Ð½Ð½Ð°Ñ ÑиÑÑема не Ð¼Ð¾Ð¶ÐµÑ Ð²ÑполниÑÑ "%1". +. MessageId=183 Severity=Success @@ -1124,6 +1540,9 @@ Language=English ERROR_ALREADY_EXISTS - Cannot create a file when that file already exists. . +Language=Russian +ERROR_ALREADY_EXISTS - Ðевозможно ÑоздаÑÑ Ñайл, Ñак как он Ñже ÑÑÑеÑÑвÑеÑ. +. MessageId=186 Severity=Success @@ -1132,6 +1551,9 @@ Language=English ERROR_INVALID_FLAG_NUMBER - The flag passed is not correct. . +Language=Russian +ERROR_INVALID_FLAG_NUMBER - ÐеÑедан невеÑнÑй Ñлаг. +. MessageId=187 Severity=Success @@ -1140,6 +1562,9 @@ Language=English ERROR_SEM_NOT_FOUND - The specified system semaphore name was not found. . +Language=Russian +ERROR_SEM_NOT_FOUND - Ðе найдено Ñказанное Ð¸Ð¼Ñ ÑиÑÑемного ÑемаÑоÑа. +. MessageId=188 Severity=Success @@ -1148,6 +1573,9 @@ Language=English ERROR_INVALID_STARTING_CODESEG - The operating system cannot run %1. . +Language=Russian +ERROR_INVALID_STARTING_CODESEG - ÐпеÑаÑÐ¸Ð¾Ð½Ð½Ð°Ñ ÑиÑÑема не Ð¼Ð¾Ð¶ÐµÑ Ð²ÑполниÑÑ "%1". +. MessageId=189 Severity=Success @@ -1156,6 +1584,9 @@ Language=English ERROR_INVALID_STACKSEG - The operating system cannot run %1. . +Language=Russian +ERROR_INVALID_STACKSEG - ÐпеÑаÑÐ¸Ð¾Ð½Ð½Ð°Ñ ÑиÑÑема не Ð¼Ð¾Ð¶ÐµÑ Ð²ÑполниÑÑ "%1". +. MessageId=190 Severity=Success @@ -1164,6 +1595,9 @@ Language=English ERROR_INVALID_MODULETYPE - The operating system cannot run %1. . +Language=Russian +ERROR_INVALID_MODULETYPE - ÐпеÑаÑÐ¸Ð¾Ð½Ð½Ð°Ñ ÑиÑÑема не Ð¼Ð¾Ð¶ÐµÑ Ð²ÑполниÑÑ "%1". +. MessageId=191 Severity=Success @@ -1172,6 +1606,9 @@ Language=English ERROR_INVALID_EXE_SIGNATURE - Cannot run %1 in Win32 mode. . +Language=Russian +ERROR_INVALID_EXE_SIGNATURE - Ðевозможно запÑÑÑиÑÑ "%1" в Ñежиме Win32. +. MessageId=192 Severity=Success @@ -1180,6 +1617,9 @@ Language=English ERROR_EXE_MARKED_INVALID - The operating system cannot run %1. . +Language=Russian +ERROR_EXE_MARKED_INVALID - ÐпеÑаÑÐ¸Ð¾Ð½Ð½Ð°Ñ ÑиÑÑема не Ð¼Ð¾Ð¶ÐµÑ Ð²ÑполниÑÑ "%1". +. MessageId=193 Severity=Success @@ -1188,6 +1628,9 @@ Language=English ERROR_BAD_EXE_FORMAT - %1 is not a valid Win32 application. . +Language=Russian +ERROR_BAD_EXE_FORMAT - "%1" не ÑвлÑеÑÑÑ Ð¿Ñиложением Win32. +. MessageId=194 Severity=Success @@ -1196,6 +1639,9 @@ Language=English ERROR_ITERATED_DATA_EXCEEDS_64k - The operating system cannot run %1. . +Language=Russian +ERROR_ITERATED_DATA_EXCEEDS_64k - ÐпеÑаÑÐ¸Ð¾Ð½Ð½Ð°Ñ ÑиÑÑема не Ð¼Ð¾Ð¶ÐµÑ Ð²ÑполниÑÑ "%1". +. MessageId=195 Severity=Success @@ -1204,6 +1650,9 @@ Language=English ERROR_INVALID_MINALLOCSIZE - The operating system cannot run %1. . +Language=Russian +ERROR_INVALID_MINALLOCSIZE - ÐпеÑаÑÐ¸Ð¾Ð½Ð½Ð°Ñ ÑиÑÑема не Ð¼Ð¾Ð¶ÐµÑ Ð²ÑполниÑÑ "%1". +. MessageId=196 Severity=Success @@ -1212,6 +1661,9 @@ Language=English ERROR_DYNLINK_FROM_INVALID_RING - The operating system cannot run this application program. . +Language=Russian +ERROR_DYNLINK_FROM_INVALID_RING - ÐпеÑаÑÐ¸Ð¾Ð½Ð½Ð°Ñ ÑиÑÑема не Ð¼Ð¾Ð¶ÐµÑ Ð·Ð°Ð¿ÑÑÑиÑÑ ÑÑо пÑиложение. +. MessageId=197 Severity=Success @@ -1220,6 +1672,9 @@ Language=English ERROR_IOPL_NOT_ENABLED - The operating system is not presently configured to run this application. . +Language=Russian +ERROR_IOPL_NOT_ENABLED - ÐонÑигÑÑаÑÐ¸Ñ Ð¾Ð¿ÐµÑаÑионной ÑиÑÑÐµÐ¼Ñ Ð½Ðµ ÑаÑÑÑиÑана на запÑÑк ÑÑого пÑиложениÑ. +. MessageId=198 Severity=Success @@ -1228,6 +1683,9 @@ Language=English ERROR_INVALID_SEGDPL - The operating system cannot run %1. . +Language=Russian +ERROR_INVALID_SEGDPL - ÐпеÑаÑÐ¸Ð¾Ð½Ð½Ð°Ñ ÑиÑÑема не Ð¼Ð¾Ð¶ÐµÑ Ð²ÑполниÑÑ "%1". +. MessageId=199 Severity=Success @@ -1236,6 +1694,9 @@ Language=English ERROR_AUTODATASEG_EXCEEDS_64k - The operating system cannot run this application program. . +Language=Russian +ERROR_AUTODATASEG_EXCEEDS_64k - ÐпеÑаÑÐ¸Ð¾Ð½Ð½Ð°Ñ ÑиÑÑема не Ð¼Ð¾Ð¶ÐµÑ Ð·Ð°Ð¿ÑÑÑиÑÑ ÑÑо пÑиложение. +. MessageId=200 Severity=Success @@ -1244,6 +1705,9 @@ Language=English ERROR_RING2SEG_MUST_BE_MOVABLE - The code segment cannot be greater than or equal to 64K. . +Language=Russian +ERROR_RING2SEG_MUST_BE_MOVABLE - Ð¡ÐµÐ³Ð¼ÐµÐ½Ñ ÐºÐ¾Ð´Ð° должен бÑÑÑ Ð¼ÐµÐ½ÑÑе 64 ÐÐ. +. MessageId=201 Severity=Success @@ -1252,6 +1716,9 @@ Language=English ERROR_RELOC_CHAIN_XEEDS_SEGLIM - The operating system cannot run %1. . +Language=Russian +ERROR_RELOC_CHAIN_XEEDS_SEGLIM - ÐпеÑаÑÐ¸Ð¾Ð½Ð½Ð°Ñ ÑиÑÑема не Ð¼Ð¾Ð¶ÐµÑ Ð²ÑполниÑÑ "%1". +. MessageId=202 Severity=Success @@ -1260,6 +1727,9 @@ Language=English ERROR_INFLOOP_IN_RELOC_CHAIN - The operating system cannot run %1. . +Language=Russian +ERROR_INFLOOP_IN_RELOC_CHAIN - ÐпеÑаÑÐ¸Ð¾Ð½Ð½Ð°Ñ ÑиÑÑема не Ð¼Ð¾Ð¶ÐµÑ Ð²ÑполниÑÑ "%1". +. MessageId=203 Severity=Success @@ -1268,6 +1738,9 @@ Language=English ERROR_ENVVAR_NOT_FOUND - The system could not find the environment option that was entered. . +Language=Russian +ERROR_ENVVAR_NOT_FOUND - СиÑÑеме не ÑдаеÑÑÑ Ð½Ð°Ð¹Ñи ÑказаннÑй паÑамеÑÑ ÑÑедÑ. +. MessageId=205 Severity=Success @@ -1276,6 +1749,9 @@ Language=English ERROR_NO_SIGNAL_SENT - No process in the command subtree has a signal handler. . +Language=Russian +ERROR_NO_SIGNAL_SENT - Ðи один из пÑоÑеÑÑов в деÑеве ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ Ð½Ðµ Ð¸Ð¼ÐµÐµÑ Ð¾Ð±ÑабоÑÑика Ñигналов. +. MessageId=206 Severity=Success @@ -1284,6 +1760,9 @@ Language=English ERROR_FILENAME_EXCED_RANGE - The filename or extension is too long. . +Language=Russian +ERROR_FILENAME_EXCED_RANGE - ÐÐ¼Ñ Ñайла или его ÑаÑÑиÑение Ð¸Ð¼ÐµÐµÑ ÑлиÑком болÑÑÑÑ Ð´Ð»Ð¸Ð½Ñ. +. MessageId=207 Severity=Success @@ -1292,6 +1771,9 @@ Language=English ERROR_RING2_STACK_IN_USE - The ring 2 stack is in use. . +Language=Russian +ERROR_RING2_STACK_IN_USE - ÐолÑÑо 2 ÑÑека занÑÑо. +. MessageId=208 Severity=Success @@ -1300,6 +1782,9 @@ Language=English ERROR_META_EXPANSION_TOO_LONG - The global filename characters, * or ?, are entered incorrectly or too many global filename characters are specified. . +Language=Russian +ERROR_META_EXPANSION_TOO_LONG - ÐодÑÑановоÑнÑе знаки * и/или ? Ð·Ð°Ð´Ð°Ð½Ñ Ð½ÐµÐ²ÐµÑно или обÑазÑÑÑ Ð½ÐµÐ²ÐµÑнÑй Ñаблон имени. +. MessageId=209 Severity=Success @@ -1308,6 +1793,9 @@ Language=English ERROR_INVALID_SIGNAL_NUMBER - The signal being posted is not correct. . +Language=Russian +ERROR_INVALID_SIGNAL_NUMBER - ÐÑпÑавлÑемÑй Ñигнал невеÑен. +. MessageId=210 Severity=Success @@ -1316,6 +1804,9 @@ Language=English ERROR_THREAD_1_INACTIVE - The signal handler cannot be set. . +Language=Russian +ERROR_THREAD_1_INACTIVE - Ðе ÑдаеÑÑÑ ÑÑÑановиÑÑ Ð¾Ð±ÑабоÑÑик Ñигналов. +. MessageId=212 Severity=Success @@ -1324,6 +1815,9 @@ Language=English ERROR_LOCKED - The segment is locked and cannot be reallocated. . +Language=Russian +ERROR_LOCKED - Ð¡ÐµÐ³Ð¼ÐµÐ½Ñ Ð·Ð°Ð±Ð»Ð¾ÐºÐ¸Ñован и не Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¿ÐµÑемеÑен. +. MessageId=214 Severity=Success @@ -1332,6 +1826,9 @@ Language=English ERROR_TOO_MANY_MODULES - Too many dynamic-link modules are attached to this program or dynamic-link module. . +Language=Russian +ERROR_TOO_MANY_MODULES - Ð ÑÑой пÑогÑамме или модÑÐ»Ñ Ð¿ÑиÑоединено ÑлиÑком много динамиÑеÑки подклÑÑаемÑÑ Ð¼Ð¾Ð´Ñлей. +. MessageId=215 Severity=Success @@ -1339,6 +1836,9 @@ SymbolicName=ERROR_NESTING_NOT_ALLOWED Language=English ERROR_NESTING_NOT_ALLOWED - Cannot nest calls to LoadModule. +. +Language=Russian +ERROR_NESTING_NOT_ALLOWED - ÐÑÐ·Ð¾Ð²Ñ LoadModule не могÑÑ Ð±ÑÑÑ Ð²Ð»Ð¾Ð¶ÐµÐ½Ñ. . MessageId=216
8 years, 4 months
1
0
0
0
[dchapyshev] 72432: [CMAKE] - Update kernel32 address
by dchapyshev@svn.reactos.org
Author: dchapyshev Date: Mon Aug 22 14:34:53 2016 New Revision: 72432 URL:
http://svn.reactos.org/svn/reactos?rev=72432&view=rev
Log: [CMAKE] - Update kernel32 address Modified: trunk/reactos/sdk/cmake/baseaddress.cmake Modified: trunk/reactos/sdk/cmake/baseaddress.cmake URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/sdk/cmake/baseaddress.cmak…
============================================================================== --- trunk/reactos/sdk/cmake/baseaddress.cmake [iso-8859-1] (original) +++ trunk/reactos/sdk/cmake/baseaddress.cmake [iso-8859-1] Mon Aug 22 14:34:53 2016 @@ -1,5 +1,5 @@ set(baseaddress_ntdll 0x7c920000) # should be above 0x7c920000 -set(baseaddress_kernel32 0x7c760000) +set(baseaddress_kernel32 0x7cc70000) set(baseaddress_msvcrt 0x7c6b0000) set(baseaddress_advapi32 0x7c600000) set(baseaddress_gdi32 0x7c560000)
8 years, 4 months
1
0
0
0
[dchapyshev] 72431: [CMAKE] - Convert all *.mc files to UTF16 LE (without BOM) at build - Use unicode flag in windmc/mc for source files - Switch UNICODE_SOURCE files to UNICODE (must check for the...
by dchapyshev@svn.reactos.org
Author: dchapyshev Date: Mon Aug 22 14:02:42 2016 New Revision: 72431 URL:
http://svn.reactos.org/svn/reactos?rev=72431&view=rev
Log: [CMAKE] - Convert all *.mc files to UTF16 LE (without BOM) at build - Use unicode flag in windmc/mc for source files - Switch UNICODE_SOURCE files to UNICODE (must check for the presence of regression tests) Modified: trunk/reactos/sdk/cmake/CMakeMacros.cmake trunk/reactos/sdk/cmake/gcc.cmake trunk/reactos/sdk/include/reactos/mc/CMakeLists.txt Modified: trunk/reactos/sdk/cmake/CMakeMacros.cmake URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/sdk/cmake/CMakeMacros.cmak…
============================================================================== --- trunk/reactos/sdk/cmake/CMakeMacros.cmake [iso-8859-1] (original) +++ trunk/reactos/sdk/cmake/CMakeMacros.cmake [iso-8859-1] Mon Aug 22 14:02:42 2016 @@ -115,11 +115,17 @@ endif() foreach(_in_FILE ${ARGN}) get_filename_component(FILE ${_in_FILE} NAME_WE) + set(_converted_item ${REACTOS_BINARY_DIR}/sdk/include/reactos/mc/${FILE}.mc) + set(_source_item ${CMAKE_CURRENT_SOURCE_DIR}/${FILE}.mc) + add_custom_command( + OUTPUT "${_converted_item}" + COMMAND native-utf16le "${_source_item}" "${_converted_item}" "nobom" + DEPENDS native-utf16le "${_source_item}") macro_mc(${_flag} ${FILE}) add_custom_command( OUTPUT ${REACTOS_BINARY_DIR}/sdk/include/reactos/${FILE}.rc ${REACTOS_BINARY_DIR}/sdk/include/reactos/${FILE}.h COMMAND ${COMMAND_MC} ${MC_FLAGS} - DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${FILE}.mc) + DEPENDS "${_converted_item}") set_source_files_properties( ${REACTOS_BINARY_DIR}/sdk/include/reactos/${FILE}.h ${REACTOS_BINARY_DIR}/sdk/include/reactos/${FILE}.rc PROPERTIES GENERATED TRUE) Modified: trunk/reactos/sdk/cmake/gcc.cmake URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/sdk/cmake/gcc.cmake?rev=72…
============================================================================== --- trunk/reactos/sdk/cmake/gcc.cmake [iso-8859-1] (original) +++ trunk/reactos/sdk/cmake/gcc.cmake [iso-8859-1] Mon Aug 22 14:02:42 2016 @@ -379,7 +379,7 @@ endfunction() macro(macro_mc FLAG FILE) - set(COMMAND_MC ${CMAKE_MC_COMPILER} ${FLAG} -b ${CMAKE_CURRENT_SOURCE_DIR}/${FILE}.mc -r ${REACTOS_BINARY_DIR}/sdk/include/reactos -h ${REACTOS_BINARY_DIR}/sdk/include/reactos) + set(COMMAND_MC ${CMAKE_MC_COMPILER} -u ${FLAG} -b ${REACTOS_BINARY_DIR}/sdk/include/reactos/mc/${FILE}.mc -r ${REACTOS_BINARY_DIR}/sdk/include/reactos -h ${REACTOS_BINARY_DIR}/sdk/include/reactos) endmacro() # PSEH lib, needed with mingw Modified: trunk/reactos/sdk/include/reactos/mc/CMakeLists.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/sdk/include/reactos/mc/CMa…
============================================================================== --- trunk/reactos/sdk/include/reactos/mc/CMakeLists.txt [iso-8859-1] (original) +++ trunk/reactos/sdk/include/reactos/mc/CMakeLists.txt [iso-8859-1] Mon Aug 22 14:02:42 2016 @@ -15,5 +15,5 @@ add_message_headers(ANSI ${ANSI_SOURCE}) # FIXME: this needs testing before switching to unicode -add_message_headers(ANSI ${UNICODE_SOURCE}) +add_message_headers(UNICODE ${UNICODE_SOURCE}) add_message_headers(UNICODE ${UNICODE_SOURCE_REALLY})
8 years, 4 months
1
0
0
0
[dchapyshev] 72430: [UTF16LE] - Fix MSVC build
by dchapyshev@svn.reactos.org
Author: dchapyshev Date: Mon Aug 22 13:49:12 2016 New Revision: 72430 URL:
http://svn.reactos.org/svn/reactos?rev=72430&view=rev
Log: [UTF16LE] - Fix MSVC build Modified: trunk/reactos/sdk/tools/utf16le/utf16le.cpp Modified: trunk/reactos/sdk/tools/utf16le/utf16le.cpp URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/sdk/tools/utf16le/utf16le.…
============================================================================== --- trunk/reactos/sdk/tools/utf16le/utf16le.cpp [iso-8859-1] (original) +++ trunk/reactos/sdk/tools/utf16le/utf16le.cpp [iso-8859-1] Mon Aug 22 13:49:12 2016 @@ -18,6 +18,10 @@ //#define DISPLAY_DETECTED_UNICODE using namespace std; + +#ifdef _MSC_VER +#define strcasecmp _stricmp +#endif class utf_converter {
8 years, 4 months
1
0
0
0
[jimtabor] 72429: [NtUser] - Defer the changing of the window region while setting the window position. - Patch based on Stefano Toncich work. See CORE-6897 and possibly CORE-7229.
by jimtabor@svn.reactos.org
Author: jimtabor Date: Mon Aug 22 13:28:02 2016 New Revision: 72429 URL:
http://svn.reactos.org/svn/reactos?rev=72429&view=rev
Log: [NtUser] - Defer the changing of the window region while setting the window position. - Patch based on Stefano Toncich work. See CORE-6897 and possibly CORE-7229. Modified: trunk/reactos/win32ss/user/ntuser/winpos.c Modified: trunk/reactos/win32ss/user/ntuser/winpos.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/user/ntuser/winpos…
============================================================================== --- trunk/reactos/win32ss/user/ntuser/winpos.c [iso-8859-1] (original) +++ trunk/reactos/win32ss/user/ntuser/winpos.c [iso-8859-1] Mon Aug 22 13:28:02 2016 @@ -31,6 +31,40 @@ VOID FASTCALL IntLinkWindow(PWND Wnd,PWND WndInsertAfter); /* FUNCTIONS *****************************************************************/ + +#if DBG +/*********************************************************************** + * dump_winpos_flags + */ +static void dump_winpos_flags(UINT flags) +{ + static const DWORD dumped_flags = (SWP_NOSIZE | SWP_NOMOVE | SWP_NOZORDER | SWP_NOREDRAW | + SWP_NOACTIVATE | SWP_FRAMECHANGED | SWP_SHOWWINDOW | + SWP_HIDEWINDOW | SWP_NOCOPYBITS | SWP_NOOWNERZORDER | + SWP_NOSENDCHANGING | SWP_DEFERERASE | SWP_ASYNCWINDOWPOS | + SWP_NOCLIENTSIZE | SWP_NOCLIENTMOVE | SWP_STATECHANGED); + TRACE("flags:"); + if(flags & SWP_NOSIZE) TRACE(" SWP_NOSIZE"); + if(flags & SWP_NOMOVE) TRACE(" SWP_NOMOVE"); + if(flags & SWP_NOZORDER) TRACE(" SWP_NOZORDER"); + if(flags & SWP_NOREDRAW) TRACE(" SWP_NOREDRAW"); + if(flags & SWP_NOACTIVATE) TRACE(" SWP_NOACTIVATE"); + if(flags & SWP_FRAMECHANGED) TRACE(" SWP_FRAMECHANGED"); + if(flags & SWP_SHOWWINDOW) TRACE(" SWP_SHOWWINDOW"); + if(flags & SWP_HIDEWINDOW) TRACE(" SWP_HIDEWINDOW"); + if(flags & SWP_NOCOPYBITS) TRACE(" SWP_NOCOPYBITS"); + if(flags & SWP_NOOWNERZORDER) TRACE(" SWP_NOOWNERZORDER"); + if(flags & SWP_NOSENDCHANGING) TRACE(" SWP_NOSENDCHANGING"); + if(flags & SWP_DEFERERASE) TRACE(" SWP_DEFERERASE"); + if(flags & SWP_ASYNCWINDOWPOS) TRACE(" SWP_ASYNCWINDOWPOS"); + if(flags & SWP_NOCLIENTSIZE) TRACE(" SWP_NOCLIENTSIZE"); + if(flags & SWP_NOCLIENTMOVE) TRACE(" SWP_NOCLIENTMOVE"); + if(flags & SWP_STATECHANGED) TRACE(" SWP_STATECHANGED"); + + if(flags & ~dumped_flags) TRACE(" %08x", flags & ~dumped_flags); + TRACE("\n"); +} +#endif BOOL FASTCALL IntGetClientOrigin(PWND Window OPTIONAL, LPPOINT Point) @@ -218,6 +252,30 @@ return pWnd; } return NULL; +} + +VOID +SelectWindowRgn( PWND Window, HRGN hRgnClip) +{ + if (Window->hrgnClip) + { + /* Delete no longer needed region handle */ + IntGdiSetRegionOwner(Window->hrgnClip, GDI_OBJ_HMGR_POWNED); + GreDeleteObject(Window->hrgnClip); + Window->hrgnClip = NULL; + } + + if (hRgnClip > HRGN_WINDOW) + { + /*if (Window != UserGetDesktopWindow()) // Window->fnid != FNID_DESKTOP) + { + NtGdiOffsetRgn(hRgnClip, Window->rcWindow.left, Window->rcWindow.top); + }*/ + /* Set public ownership */ + IntGdiSetRegionOwner(hRgnClip, GDI_OBJ_HMGR_PUBLIC); + + Window->hrgnClip = hRgnClip; + } } // @@ -1758,10 +1816,16 @@ HDC Dc; RECTL CopyRect; PWND Ancestor; - BOOL bPointerInWindow; + BOOL bPointerInWindow, PosChanged = FALSE; //PTHREADINFO pti = PsGetCurrentThreadWin32Thread(); ASSERT_REFS_CO(Window); + + TRACE("pwnd %p, after %p, %d,%d (%dx%d), flags %s", + Window, WndInsertAfter, x, y, cx, cy, flags); +#if DBG + dump_winpos_flags(flags); +#endif /* FIXME: Get current active window from active queue. Why? since r2915. */ @@ -1862,6 +1926,13 @@ } } + //// HACK 3 + if (Window->hrgnNewFrame) + { + SelectWindowRgn( Window, Window->hrgnNewFrame ); // Should be PSMWP->acvr->hrgnClip + Window->hrgnNewFrame = NULL; + } + WvrFlags = co_WinPosDoNCCALCSize(Window, &WinPos, &NewWindowRect, &NewClientRect, valid_rects); // ERR("co_WinPosDoNCCALCSize returned 0x%x\n valid dest: %d %d %d %d\n valid src : %d %d %d %d\n", WvrFlags, @@ -1884,6 +1955,7 @@ WinPosInternalMoveWindow(Window, NewClientRect.left - OldClientRect.left, NewClientRect.top - OldClientRect.top); + PosChanged = TRUE; } Window->rcWindow = NewWindowRect; @@ -1951,11 +2023,12 @@ * class need to be completely repainted on (horizontal/vertical) size * change. */ - if ( VisBefore != NULL && - VisAfter != NULL && - !(WinPos.flags & SWP_NOCOPYBITS) && - ((WinPos.flags & SWP_NOSIZE) || !(WvrFlags & WVR_REDRAW)) && - !(Window->ExStyle & WS_EX_TRANSPARENT) ) + if ( ( VisBefore != NULL && + VisAfter != NULL && + !(WinPos.flags & SWP_NOCOPYBITS) && + ((WinPos.flags & SWP_NOSIZE) || !(WvrFlags & WVR_REDRAW)) && + !(Window->ExStyle & WS_EX_TRANSPARENT) ) || + ( !PosChanged && (WinPos.flags & SWP_FRAMECHANGED) && VisBefore) ) { /* @@ -2000,8 +2073,9 @@ REGION_Delete(CopyRgn); CopyRgn = NULL; } - else if (OldWindowRect.left != NewWindowRect.left || - OldWindowRect.top != NewWindowRect.top) + else if ( OldWindowRect.left != NewWindowRect.left || + OldWindowRect.top != NewWindowRect.top || + (WinPos.flags & SWP_FRAMECHANGED) ) { HRGN DcRgn = NtGdiCreateRectRgn(0, 0, 0, 0); PREGION DcRgnObj = REGION_LockRgn(DcRgn); @@ -2041,7 +2115,19 @@ { CopyRgn = NULL; } - +#if 0 + /////// Fixes NoPopup tests but breaks msg_paint tests. + if ( !PosChanged && (WinPos.flags & SWP_FRAMECHANGED) && VisBefore) + { + PWND Parent = Window->spwndParent; + ERR("SWP_FRAMECHANGED no chg\n"); + if ( !(Window->style & WS_CHILD) && (Parent) && (Parent->style & WS_CLIPCHILDREN)) + { + ERR("SWP_FRAMECHANGED Parent WS_CLIPCHILDREN\n"); + //IntInvalidateWindows( Window, VisBefore, /*RDW_ERASE |*/ RDW_FRAME | RDW_INVALIDATE | RDW_ALLCHILDREN); + } + } +#endif /* We need to redraw what wasn't visible before */ if (VisAfter != NULL) { @@ -3303,20 +3389,16 @@ RETURN( 0); } - if (Window->hrgnClip) - { - /* Delete no longer needed region handle */ - IntGdiSetRegionOwner(Window->hrgnClip, GDI_OBJ_HMGR_POWNED); - GreDeleteObject(Window->hrgnClip); - } - + //// HACK 1 : Work around the lack of supporting DeferWindowPos. if (hrgnCopy) { - /* Set public ownership */ - IntGdiSetRegionOwner(hrgnCopy, GDI_OBJ_HMGR_PUBLIC); - } - Window->hrgnClip = hrgnCopy; - + Window->hrgnNewFrame = hrgnCopy; // Should be PSMWP->acvr->hrgnClip + } + else + { + Window->hrgnNewFrame = (HRGN) 1; + } + //// HACK 2 Ret = co_WinPosSetWindowPos(Window, HWND_TOP, 0, 0, 0, 0, bRedraw ? flags : (flags|SWP_NOREDRAW) ); RETURN( (INT)Ret);
8 years, 4 months
1
0
0
0
← Newer
1
...
7
8
9
10
11
12
13
...
47
Older →
Jump to page:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
Results per page:
10
25
50
100
200