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
June 2019
----- 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
28 participants
288 discussions
Start a n
N
ew thread
[reactos] 01/06: [ACLUI] Add Portuguese (neutral) translation.
by Jose Carlos Jesus
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=64785cf7d359375f28102…
commit 64785cf7d359375f281029301efd5297cf23ad8b Author: Jose Carlos Jesus <zecarlos1957(a)hotmail.com> AuthorDate: Thu Jun 20 09:09:44 2019 +0100 Commit: Hermès Bélusca-Maïto <hermes.belusca-maito(a)reactos.org> CommitDate: Thu Jun 20 17:15:14 2019 +0200 [ACLUI] Add Portuguese (neutral) translation. --- dll/win32/aclui/aclui.rc | 5 ++++- dll/win32/aclui/lang/pt-PT.rc | 31 +++++++++++++++++++++++++++++++ 2 files changed, 35 insertions(+), 1 deletion(-) diff --git a/dll/win32/aclui/aclui.rc b/dll/win32/aclui/aclui.rc index e0fbedfea7..aa98d59473 100644 --- a/dll/win32/aclui/aclui.rc +++ b/dll/win32/aclui/aclui.rc @@ -68,6 +68,9 @@ IDB_USRGRPIMAGES BITMAP "res/usrgrp.bmp" #ifdef LANGUAGE_PL_PL #include "lang/pl-PL.rc" #endif +#ifdef LANGUAGE_PT_PT + #include "lang/pt-PT.rc" +#endif #ifdef LANGUAGE_RO_RO #include "lang/ro-RO.rc" #endif @@ -94,4 +97,4 @@ IDB_USRGRPIMAGES BITMAP "res/usrgrp.bmp" #endif #ifdef LANGUAGE_ZH_TW #include "lang/zh-TW.rc" -#endif \ No newline at end of file +#endif diff --git a/dll/win32/aclui/lang/pt-PT.rc b/dll/win32/aclui/lang/pt-PT.rc new file mode 100644 index 0000000000..ab5fa539a8 --- /dev/null +++ b/dll/win32/aclui/lang/pt-PT.rc @@ -0,0 +1,31 @@ +LANGUAGE LANG_PORTUGUESE, SUBLANG_NEUTRAL + +IDD_SECPAGE DIALOGEX 0, 0, 227, 215 +STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE | WS_CAPTION +CAPTION "Seguran�a" +FONT 8, "MS Shell Dlg", 0, 0, 0x0 +BEGIN + LTEXT "Nome do &group ou utilizadore:", -1, 7, 21, 105, 8 + CONTROL "", IDC_PRINCIPALS, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | LVS_NOCOLUMNHEADER | LVS_NOSORTHEADER | WS_CHILD | WS_VISIBLE | WS_VSCROLL | WS_TABSTOP, 7, 31, 213, 52, WS_EX_NOPARENTNOTIFY | WS_EX_CLIENTEDGE + LTEXT "&Propriet�rio:", -1, 7, 7, 49, 8 + EDITTEXT IDC_OWNER, 63, 4, 156, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP | ES_READONLY + PUSHBUTTON "A&dicionar...", IDC_ADD_PRINCIPAL, 116, 87, 50, 14 + PUSHBUTTON "&Remover", IDC_REMOVE_PRINCIPAL, 170, 87, 50, 14 + LTEXT "", IDC_LABEL_PERMISSIONS_FOR, 7, 107, 105, 8, SS_LEFT | SS_NOPREFIX + LTEXT "Permitir", IDC_LABEL_ALLOW, 135, 107, 32, 8, SS_CENTER + LTEXT "Recusar", IDC_LABEL_DENY, 176, 107, 32, 8, SS_CENTER + CONTROL "", IDC_ACE_CHECKLIST, "CHECKLIST_ACLUI", WS_CHILD | WS_VISIBLE | WS_TABSTOP, 7, 117, 213, 72, WS_EX_CLIENTEDGE + LTEXT "Para permiss�es especiais ou defini��es avan�adas, clique em Avan�adas.", IDC_LABEL_ADVANCED, 7, 194, 153, 16, SS_LEFT + PUSHBUTTON "A&van�adas", IDC_ADVANCED, 165, 194, 55, 14 +END + +STRINGTABLE +BEGIN + IDS_PSP_TITLE "Permiss�es para %1" + IDS_UNKNOWN "Desconhecido" + IDS_SPECIAL_PERMISSIONS "Permiss�es especiais" + IDS_PERMISSIONS_FOR "Permiss�es para %1" + IDS_PERMISSIONS "Permiss�es" + IDS_USERDOMAINFORMAT "%1 (%2\\%3)" + IDS_USERFORMAT "%1" +END
5 years, 6 months
1
0
0
0
[reactos] 01/01: Create FUNDING.yml (#1658)
by Filip Š
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=242b4b0e722484a1ebdf0…
commit 242b4b0e722484a1ebdf0814260c0ff3b228f7f1 Author: Filip Š <filip.stamcar(a)hotmail.com> AuthorDate: Thu Jun 20 16:07:06 2019 +0200 Commit: Katayama Hirofumi MZ <katayama.hirofumi.mz(a)gmail.com> CommitDate: Thu Jun 20 23:07:06 2019 +0900 Create FUNDING.yml (#1658) GitHub now supports sponsorships in the repository.
https://help.github.com/en/articles/displaying-a-sponsor-button-in-your-rep…
--- .github/FUNDING.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml new file mode 100644 index 0000000000..283f9f1195 --- /dev/null +++ b/.github/FUNDING.yml @@ -0,0 +1,2 @@ +liberapay: ReactOS +custom:
https://reactos.org/donating
5 years, 6 months
1
0
0
0
[reactos] 01/01: [WIN32SS][NTGDI] usWinAscent and usWinDescent must be treated as signed (#1670)
by Katayama Hirofumi MZ
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=641a0ea99be50975e7949…
commit 641a0ea99be50975e79498e48ae73b2edfc5c616 Author: Katayama Hirofumi MZ <katayama.hirofumi.mz(a)gmail.com> AuthorDate: Thu Jun 20 18:58:45 2019 +0900 Commit: GitHub <noreply(a)github.com> CommitDate: Thu Jun 20 18:58:45 2019 +0900 [WIN32SS][NTGDI] usWinAscent and usWinDescent must be treated as signed (#1670) TT_OS2.usWinAscent and TT_OS2.usWinDescent must be treated as FT_Short. These values affect font metrics. This PR will fix CORE-14994. --- win32ss/gdi/ntgdi/freetype.c | 32 ++++++++++++++++++-------------- 1 file changed, 18 insertions(+), 14 deletions(-) diff --git a/win32ss/gdi/ntgdi/freetype.c b/win32ss/gdi/ntgdi/freetype.c index 6a2fae1ed7..027ccdb66e 100644 --- a/win32ss/gdi/ntgdi/freetype.c +++ b/win32ss/gdi/ntgdi/freetype.c @@ -1868,21 +1868,17 @@ FillTMEx(TEXTMETRICW *TM, PFONTGDI FontGDI, return; } - if (pOS2->usWinAscent + pOS2->usWinDescent == 0) + if ((FT_Short)pOS2->usWinAscent + (FT_Short)pOS2->usWinDescent == 0) { Ascent = pHori->Ascender; Descent = -pHori->Descender; } else { - Ascent = pOS2->usWinAscent; - Descent = pOS2->usWinDescent; + Ascent = (FT_Short)pOS2->usWinAscent; + Descent = (FT_Short)pOS2->usWinDescent; } - if (FontGDI->Magic != FONTGDI_MAGIC) - { - IntRequestFontSize(NULL, FontGDI, 0, 0); - } TM->tmAscent = FontGDI->tmAscent; TM->tmDescent = FontGDI->tmDescent; TM->tmHeight = TM->tmAscent + TM->tmDescent; @@ -2649,7 +2645,7 @@ FontFamilyFillInfo(PFONTFAMILYINFO Info, LPCWSTR FaceName, } Ntm->ntmSizeEM = Otm->otmEMSquare; - Ntm->ntmCellHeight = pOS2->usWinAscent + pOS2->usWinDescent; + Ntm->ntmCellHeight = (FT_Short)pOS2->usWinAscent + (FT_Short)pOS2->usWinDescent; Ntm->ntmAvgWidth = 0; ExFreePoolWithTag(Otm, GDITAG_TEXT); @@ -3273,12 +3269,20 @@ IntRequestFontSize(PDC dc, PFONTGDI FontGDI, LONG lfWidth, LONG lfHeight) return FT_Request_Size(face, &req); } - /* See also:
https://docs.microsoft.com/en-us/typography/opentype/spec/os2#fsselection
*/ + /* + * NOTE: We cast TT_OS2.usWinAscent and TT_OS2.usWinDescent to signed FT_Short. + * Why? See:
https://docs.microsoft.com/en-us/typography/opentype/spec/os2#uswindescent
+ * + * > usWinDescent is "usually" a positive value ... + * + * We can read it as "not always". See CORE-14994. + * See also:
https://docs.microsoft.com/en-us/typography/opentype/spec/os2#fsselection
+ */ #define FM_SEL_USE_TYPO_METRICS 0x80 if (lfHeight > 0) { /* case (A): lfHeight is positive */ - Sum = pOS2->usWinAscent + pOS2->usWinDescent; + Sum = (FT_Short)pOS2->usWinAscent + (FT_Short)pOS2->usWinDescent; if (Sum == 0 || (pOS2->fsSelection & FM_SEL_USE_TYPO_METRICS)) { Ascent = pHori->Ascender; @@ -3287,8 +3291,8 @@ IntRequestFontSize(PDC dc, PFONTGDI FontGDI, LONG lfWidth, LONG lfHeight) } else { - Ascent = pOS2->usWinAscent; - Descent = pOS2->usWinDescent; + Ascent = (FT_Short)pOS2->usWinAscent; + Descent = (FT_Short)pOS2->usWinDescent; } FontGDI->tmAscent = FT_MulDiv(lfHeight, Ascent, Sum); @@ -3306,8 +3310,8 @@ IntRequestFontSize(PDC dc, PFONTGDI FontGDI, LONG lfWidth, LONG lfHeight) } else { - FontGDI->tmAscent = FT_MulDiv(-lfHeight, pOS2->usWinAscent, face->units_per_EM); - FontGDI->tmDescent = FT_MulDiv(-lfHeight, pOS2->usWinDescent, face->units_per_EM); + FontGDI->tmAscent = FT_MulDiv(-lfHeight, (FT_Short)pOS2->usWinAscent, face->units_per_EM); + FontGDI->tmDescent = FT_MulDiv(-lfHeight, (FT_Short)pOS2->usWinDescent, face->units_per_EM); } FontGDI->tmHeight = FontGDI->tmAscent + FontGDI->tmDescent; FontGDI->tmInternalLeading = FontGDI->tmHeight + lfHeight;
5 years, 6 months
1
0
0
0
[reactos] 01/01: [NETCFGX] Add the interfaces INetCfgBindingInterface and IEnumNetCfgBindingInterface (stubs only).
by Eric Kohl
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=e57f103d53d35b0093112…
commit e57f103d53d35b0093112f73102ca106a51830e7 Author: Eric Kohl <eric.kohl(a)reactos.org> AuthorDate: Wed Jun 19 22:38:31 2019 +0200 Commit: Eric Kohl <eric.kohl(a)reactos.org> CommitDate: Wed Jun 19 22:38:31 2019 +0200 [NETCFGX] Add the interfaces INetCfgBindingInterface and IEnumNetCfgBindingInterface (stubs only). --- dll/win32/netcfgx/CMakeLists.txt | 1 + dll/win32/netcfgx/netcfgbindinginterface_iface.c | 301 +++++++++++++++++++++++ dll/win32/netcfgx/netcfgbindingpath_iface.c | 2 +- dll/win32/netcfgx/precomp.h | 4 + 4 files changed, 307 insertions(+), 1 deletion(-) diff --git a/dll/win32/netcfgx/CMakeLists.txt b/dll/win32/netcfgx/CMakeLists.txt index 79ff37cc4d..bde3f69f9d 100644 --- a/dll/win32/netcfgx/CMakeLists.txt +++ b/dll/win32/netcfgx/CMakeLists.txt @@ -9,6 +9,7 @@ list(APPEND SOURCE classfactory.c installer.c netcfg_iface.c + netcfgbindinginterface_iface.c netcfgbindingpath_iface.c inetcfgcomp_iface.c tcpipconf_notify.c diff --git a/dll/win32/netcfgx/netcfgbindinginterface_iface.c b/dll/win32/netcfgx/netcfgbindinginterface_iface.c new file mode 100644 index 0000000000..7258399d01 --- /dev/null +++ b/dll/win32/netcfgx/netcfgbindinginterface_iface.c @@ -0,0 +1,301 @@ +#include "precomp.h" + +typedef struct +{ + const INetCfgBindingInterface *lpVtbl; + LONG ref; +} INetCfgBindingInterfaceImpl; + +typedef struct +{ + const IEnumNetCfgBindingInterface *lpVtbl; + LONG ref; +} IEnumNetCfgBindingInterfaceImpl; + + +/*************************************************************** + * INetCfgBindingInterface + */ + +HRESULT +WINAPI +INetCfgBindingInterface_fnQueryInterface( + INetCfgBindingInterface *iface, + REFIID iid, + LPVOID *ppvObj) +{ + INetCfgBindingInterfaceImpl *This = (INetCfgBindingInterfaceImpl*)iface; + *ppvObj = NULL; + + if (IsEqualIID (iid, &IID_IUnknown) || + IsEqualIID (iid, &IID_INetCfgBindingInterface)) + { + *ppvObj = This; + return S_OK; + } + + return E_NOINTERFACE; +} + +ULONG +WINAPI +INetCfgBindingInterface_fnAddRef( + INetCfgBindingInterface *iface) +{ + INetCfgBindingInterfaceImpl *This = (INetCfgBindingInterfaceImpl*)iface; + ULONG refCount = InterlockedIncrement(&This->ref); + + return refCount; +} + +ULONG +WINAPI +INetCfgBindingInterface_fnRelease( + INetCfgBindingInterface *iface) +{ + INetCfgBindingInterfaceImpl *This = (INetCfgBindingInterfaceImpl*)iface; + ULONG refCount = InterlockedDecrement(&This->ref); + + if (!refCount) + { + CoTaskMemFree(This); + } + return refCount; +} + +HRESULT +WINAPI +INetCfgBindingInterface_fnGetName( + INetCfgBindingInterface *iface, + LPWSTR *ppszwInterfaceName) +{ + return E_NOTIMPL; +} + +HRESULT +WINAPI +INetCfgBindingInterface_fnGetUpperComponent( + INetCfgBindingInterface *iface, + INetCfgComponent **ppnccItem) +{ + return E_NOTIMPL; +} + +HRESULT +WINAPI +INetCfgBindingInterface_fnGetLowerComponent( + INetCfgBindingInterface *iface, + INetCfgComponent **ppnccItem) +{ + return E_NOTIMPL; +} + +static const INetCfgBindingInterfaceVtbl vt_NetCfgBindingInterface = +{ + INetCfgBindingInterface_fnQueryInterface, + INetCfgBindingInterface_fnAddRef, + INetCfgBindingInterface_fnRelease, + INetCfgBindingInterface_fnGetName, + INetCfgBindingInterface_fnGetUpperComponent, + INetCfgBindingInterface_fnGetLowerComponent, +}; + +HRESULT +WINAPI +INetCfgBindingInterface_Constructor( + IUnknown *pUnkOuter, + REFIID riid, + LPVOID *ppv) +{ + INetCfgBindingInterfaceImpl *This; + + if (!ppv) + return E_POINTER; + + This = (INetCfgBindingInterfaceImpl *)CoTaskMemAlloc(sizeof(INetCfgBindingInterfaceImpl)); + if (!This) + return E_OUTOFMEMORY; + + This->ref = 1; + This->lpVtbl = (const INetCfgBindingInterface*)&vt_NetCfgBindingInterface; + + if (!SUCCEEDED(INetCfgBindingInterface_QueryInterface((INetCfgBindingInterface*)This, riid, ppv))) + { + return E_NOINTERFACE; + } + + INetCfgBindingInterface_Release((INetCfgBindingInterface*)This); + return S_OK; +} + + +/*************************************************************** + * IEnumNetCfgBindingInterface + */ + +HRESULT +WINAPI +IEnumNetCfgBindingInterface_fnQueryInterface( + IEnumNetCfgBindingInterface *iface, + REFIID iid, + LPVOID *ppvObj) +{ + IEnumNetCfgBindingInterfaceImpl *This = (IEnumNetCfgBindingInterfaceImpl*)iface; + *ppvObj = NULL; + + if (IsEqualIID (iid, &IID_IUnknown) || + IsEqualIID (iid, &IID_IEnumNetCfgBindingInterface)) + { + *ppvObj = This; + return S_OK; + } + + return E_NOINTERFACE; +} + + +ULONG +WINAPI +IEnumNetCfgBindingInterface_fnAddRef( + IEnumNetCfgBindingInterface *iface) +{ + IEnumNetCfgBindingInterfaceImpl *This = (IEnumNetCfgBindingInterfaceImpl*)iface; + ULONG refCount = InterlockedIncrement(&This->ref); + + return refCount; +} + +ULONG +WINAPI +IEnumNetCfgBindingInterface_fnRelease( + IEnumNetCfgBindingInterface *iface) +{ + IEnumNetCfgBindingInterfaceImpl *This = (IEnumNetCfgBindingInterfaceImpl*)iface; + ULONG refCount = InterlockedDecrement(&This->ref); + + return refCount; +} + +HRESULT +WINAPI +IEnumNetCfgBindingInterface_fnNext( + IEnumNetCfgBindingInterface *iface, + ULONG celt, + INetCfgBindingInterface **rgelt, + ULONG *pceltFetched) +{ +#if 0 + IEnumNetCfgBindingInterfaceImpl *This = (IEnumNetCfgBindingInterfaceImpl*)iface; + HRESULT hr; + + if (!iface || !rgelt) + return E_POINTER; + + if (celt != 1) + return E_INVALIDARG; + + if (!This->pCurrent) + return S_FALSE; + + hr = INetCfgBindingInterface_Constructor(NULL, &IID_INetCfgBindingInterface, (LPVOID*)rgelt); + if (SUCCEEDED(hr)) + { + This->pCurrent = This->pCurrent->pNext; + if (pceltFetched) + *pceltFetched = 1; + } + return hr; +#endif + + return E_NOTIMPL; +} + +HRESULT +WINAPI +IEnumNetCfgBindingInterface_fnSkip( + IEnumNetCfgBindingInterface *iface, + ULONG celt) +{ +#if 0 + IEnumNetCfgBindingInterfaceImpl *This = (IEnumNetCfgBindingInterfaceImpl*)iface; + + if (!This->pCurrent) + return S_FALSE; + + while (celt-- > 0 && This->pCurrent) + This->pCurrent = This->pCurrent->pNext; + + if (!celt) + return S_OK; + else + return S_FALSE; +#endif + + return E_NOTIMPL; +} + +HRESULT +WINAPI +IEnumNetCfgBindingInterface_fnReset( + IEnumNetCfgBindingInterface *iface) +{ +#if 0 + IEnumNetCfgBindingInterfaceImpl *This = (IEnumNetCfgBindingInterfaceImpl*)iface; + + This->pCurrent = This->pHead; + return S_OK; +#endif + + return E_NOTIMPL; +} + +HRESULT +WINAPI +IEnumNetCfgBindingInterface_fnClone( + IEnumNetCfgBindingInterface *iface, + IEnumNetCfgBindingInterface **ppenum) +{ + return E_NOTIMPL; +} + +static const IEnumNetCfgBindingInterfaceVtbl vt_EnumNetCfgBindingInterface = +{ + IEnumNetCfgBindingInterface_fnQueryInterface, + IEnumNetCfgBindingInterface_fnAddRef, + IEnumNetCfgBindingInterface_fnRelease, + IEnumNetCfgBindingInterface_fnNext, + IEnumNetCfgBindingInterface_fnSkip, + IEnumNetCfgBindingInterface_fnReset, + IEnumNetCfgBindingInterface_fnClone +}; + +HRESULT +WINAPI +IEnumNetCfgBindingInterface_Constructor(IUnknown *pUnkOuter, REFIID riid, LPVOID *ppv) +{ + IEnumNetCfgBindingInterfaceImpl *This; + + if (!ppv) + return E_POINTER; + + This = (IEnumNetCfgBindingInterfaceImpl *)CoTaskMemAlloc(sizeof(IEnumNetCfgBindingInterfaceImpl)); + if (!This) + return E_OUTOFMEMORY; + + This->ref = 1; + This->lpVtbl = (const IEnumNetCfgBindingInterface*)&vt_EnumNetCfgBindingInterface; +#if 0 + This->pCurrent = pItem; + This->pHead = pItem; + This->pNCfg = pNCfg; +#endif + + if (!SUCCEEDED (IEnumNetCfgBindingInterface_QueryInterface((INetCfgBindingInterface*)This, riid, ppv))) + { + IEnumNetCfgBindingInterface_Release((INetCfg*)This); + return E_NOINTERFACE; + } + + IEnumNetCfgBindingInterface_Release((IEnumNetCfgBindingInterface*)This); + return S_OK; +} diff --git a/dll/win32/netcfgx/netcfgbindingpath_iface.c b/dll/win32/netcfgx/netcfgbindingpath_iface.c index ad5f982cb4..6ca2ad27ed 100644 --- a/dll/win32/netcfgx/netcfgbindingpath_iface.c +++ b/dll/win32/netcfgx/netcfgbindingpath_iface.c @@ -131,7 +131,7 @@ INetCfgBindingPath_fnEnumBindingInterfaces( INetCfgBindingPath *iface, IEnumNetCfgBindingInterface **ppenumInterface) { - return E_NOTIMPL; + return IEnumNetCfgBindingInterface_Constructor(NULL, &IID_IEnumNetCfgBindingInterface, (LPVOID *)ppenumInterface); } static const INetCfgBindingPathVtbl vt_NetCfgBindingPath = diff --git a/dll/win32/netcfgx/precomp.h b/dll/win32/netcfgx/precomp.h index efb5d6439f..4230377bd8 100644 --- a/dll/win32/netcfgx/precomp.h +++ b/dll/win32/netcfgx/precomp.h @@ -64,6 +64,10 @@ extern HINSTANCE netcfgx_hInstance; HRESULT WINAPI INetCfgComponent_Constructor (IUnknown * pUnkOuter, REFIID riid, LPVOID * ppv, NetCfgComponentItem * pItem,INetCfg * iface); HRESULT WINAPI IEnumNetCfgComponent_Constructor (IUnknown * pUnkOuter, REFIID riid, LPVOID * ppv, NetCfgComponentItem * pItem, INetCfg * iface); +/* netcfgbindinginterface_iface.c */ +HRESULT WINAPI INetCfgBindingInterface_Constructor(IUnknown *pUnkOuter, REFIID riid, LPVOID *ppv); +HRESULT WINAPI IEnumNetCfgBindingInterface_Constructor(IUnknown *pUnkOuter, REFIID riid, LPVOID *ppv); + /* netcfgbindingpath_iface.c */ HRESULT WINAPI INetCfgBindingPath_Constructor(IUnknown *pUnkOuter, REFIID riid, LPVOID *ppv); HRESULT WINAPI IEnumNetCfgBindingPath_Constructor(IUnknown *pUnkOuter, REFIID riid, LPVOID *ppv, DWORD dwFlags);
5 years, 6 months
1
0
0
0
[reactos] 02/02: [EXPLORER] Properly initialise tbBtn.iBitmap. CORE-14262.
by Andreas Maier
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=8d6c9e844c9b5e8a33344…
commit 8d6c9e844c9b5e8a33344c9768e0d2fa305445c5 Author: Andreas Maier <staubim(a)quantentunnel.de> AuthorDate: Tue Jun 18 22:40:27 2019 +0200 Commit: Mark Jansen <mark.jansen(a)reactos.org> CommitDate: Wed Jun 19 20:37:04 2019 +0200 [EXPLORER] Properly initialise tbBtn.iBitmap. CORE-14262. In CNotifyToolbar::AddButton tbBtn.iBitmap (imagelist-index) was inialised with 0. Tigthvnc adds the icon wihtout NIF_ICON flag. So the wrong icon index was kept and later replaced. --- base/shell/explorer/syspager.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/base/shell/explorer/syspager.cpp b/base/shell/explorer/syspager.cpp index 2186933150..8d4f9145ce 100644 --- a/base/shell/explorer/syspager.cpp +++ b/base/shell/explorer/syspager.cpp @@ -742,6 +742,7 @@ BOOL CNotifyToolbar::AddButton(_In_ CONST NOTIFYICONDATA *iconData) tbBtn.dwData = (DWORD_PTR)notifyItem; tbBtn.iString = (INT_PTR) text; tbBtn.idCommand = GetButtonCount(); + tbBtn.iBitmap = -1; if (iconData->uFlags & NIF_STATE) {
5 years, 6 months
1
0
0
0
[reactos] 01/02: [EXPLORER] fix traces
by Andreas Maier
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=7796df375a29c2881803d…
commit 7796df375a29c2881803de4d4ce6e4b0d43245ae Author: Andreas Maier <staubim(a)quantentunnel.de> AuthorDate: Tue Jun 18 21:00:43 2019 +0200 Commit: Mark Jansen <mark.jansen(a)reactos.org> CommitDate: Wed Jun 19 20:37:04 2019 +0200 [EXPLORER] fix traces --- base/shell/explorer/syspager.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/base/shell/explorer/syspager.cpp b/base/shell/explorer/syspager.cpp index 44ccff9b90..2186933150 100644 --- a/base/shell/explorer/syspager.cpp +++ b/base/shell/explorer/syspager.cpp @@ -449,14 +449,14 @@ UINT WINAPI CIconWatcher::WatcherThread(_In_opt_ LPVOID lpParam) { // We've been kicked, we have updates to our list (or we're exiting the thread) if (This->m_Loop) - TRACE("Updating watched icon list"); + TRACE("Updating watched icon list\n"); } else if ((Status >= WAIT_OBJECT_0 + 1) && (Status < Size)) { IconWatcherData *Icon; Icon = This->GetListEntry(NULL, WatchList[Status], false); - TRACE("Pid %lu owns a notification icon and has stopped without deleting it. We'll cleanup on its behalf", Icon->ProcessId); + TRACE("Pid %lu owns a notification icon and has stopped without deleting it. We'll cleanup on its behalf\n", Icon->ProcessId); TRAYNOTIFYDATAW tnid = {0}; tnid.dwSignature = NI_NOTIFY_SIG; @@ -837,7 +837,7 @@ BOOL CNotifyToolbar::UpdateButton(_In_ CONST NOTIFYICONDATA *iconData) InternalIconData * notifyItem; TBBUTTONINFO tbbi = { 0 }; - TRACE("Updating icon %d from hWnd %08x flags%s%s state%s%s", + TRACE("Updating icon %d from hWnd %08x flags%s%s state%s%s\n", iconData->uID, iconData->hWnd, (iconData->uFlags & NIF_ICON) ? " ICON" : "", (iconData->uFlags & NIF_STATE) ? " STATE" : "", @@ -847,7 +847,7 @@ BOOL CNotifyToolbar::UpdateButton(_In_ CONST NOTIFYICONDATA *iconData) int index = FindItem(iconData->hWnd, iconData->uID, ¬ifyItem); if (index < 0) { - WARN("Icon %d from hWnd %08x DOES NOT EXIST!", iconData->uID, iconData->hWnd); + WARN("Icon %d from hWnd %08x DOES NOT EXIST!\n", iconData->uID, iconData->hWnd); return AddButton(iconData); } @@ -946,7 +946,7 @@ BOOL CNotifyToolbar::RemoveButton(_In_ CONST NOTIFYICONDATA *iconData) int index = FindItem(iconData->hWnd, iconData->uID, ¬ifyItem); if (index < 0) { - TRACE("Icon %d from hWnd %08x ALREADY MISSING!", iconData->uID, iconData->hWnd); + TRACE("Icon %d from hWnd %08x ALREADY MISSING!\n", iconData->uID, iconData->hWnd); return FALSE; }
5 years, 6 months
1
0
0
0
[reactos] 01/01: [NETCFGX] Add the interfaces INetCfgBindingPath and IEnumNetCfgBindingPath (stubs only).
by Eric Kohl
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=ec9c8fdf258b9204e9cb4…
commit ec9c8fdf258b9204e9cb4d855989aaa776a31882 Author: Eric Kohl <eric.kohl(a)reactos.org> AuthorDate: Tue Jun 18 22:35:46 2019 +0200 Commit: Eric Kohl <eric.kohl(a)reactos.org> CommitDate: Tue Jun 18 22:35:46 2019 +0200 [NETCFGX] Add the interfaces INetCfgBindingPath and IEnumNetCfgBindingPath (stubs only). --- dll/win32/netcfgx/CMakeLists.txt | 1 + dll/win32/netcfgx/inetcfgcomp_iface.c | 2 +- dll/win32/netcfgx/netcfgbindingpath_iface.c | 350 ++++++++++++++++++++++++++++ dll/win32/netcfgx/precomp.h | 4 + 4 files changed, 356 insertions(+), 1 deletion(-) diff --git a/dll/win32/netcfgx/CMakeLists.txt b/dll/win32/netcfgx/CMakeLists.txt index 99313a57a4..79ff37cc4d 100644 --- a/dll/win32/netcfgx/CMakeLists.txt +++ b/dll/win32/netcfgx/CMakeLists.txt @@ -9,6 +9,7 @@ list(APPEND SOURCE classfactory.c installer.c netcfg_iface.c + netcfgbindingpath_iface.c inetcfgcomp_iface.c tcpipconf_notify.c propertypage.c diff --git a/dll/win32/netcfgx/inetcfgcomp_iface.c b/dll/win32/netcfgx/inetcfgcomp_iface.c index 76c8f8dda1..3f72f980a1 100644 --- a/dll/win32/netcfgx/inetcfgcomp_iface.c +++ b/dll/win32/netcfgx/inetcfgcomp_iface.c @@ -111,7 +111,7 @@ INetCfgComponentBindings_fnEnumBindingPaths( DWORD dwFlags, IEnumNetCfgBindingPath **ppIEnum) { - return E_NOTIMPL; + return IEnumNetCfgBindingPath_Constructor(NULL, &IID_IEnumNetCfgBindingPath, (LPVOID *)ppIEnum, dwFlags); } HRESULT diff --git a/dll/win32/netcfgx/netcfgbindingpath_iface.c b/dll/win32/netcfgx/netcfgbindingpath_iface.c new file mode 100644 index 0000000000..ad5f982cb4 --- /dev/null +++ b/dll/win32/netcfgx/netcfgbindingpath_iface.c @@ -0,0 +1,350 @@ +#include "precomp.h" + +typedef struct +{ + const INetCfgBindingPath *lpVtbl; + LONG ref; +} INetCfgBindingPathImpl; + +typedef struct +{ + const IEnumNetCfgBindingPath *lpVtbl; + LONG ref; +} IEnumNetCfgBindingPathImpl; + + +/*************************************************************** + * INetCfgBindingPath + */ + +HRESULT +WINAPI +INetCfgBindingPath_fnQueryInterface( + INetCfgBindingPath *iface, + REFIID iid, + LPVOID *ppvObj) +{ + INetCfgBindingPathImpl *This = (INetCfgBindingPathImpl*)iface; + *ppvObj = NULL; + + if (IsEqualIID (iid, &IID_IUnknown) || + IsEqualIID (iid, &IID_INetCfgBindingPath)) + { + *ppvObj = This; + return S_OK; + } + + return E_NOINTERFACE; +} + +ULONG +WINAPI +INetCfgBindingPath_fnAddRef( + INetCfgBindingPath * iface) +{ + INetCfgBindingPathImpl * This = (INetCfgBindingPathImpl*)iface; + ULONG refCount = InterlockedIncrement(&This->ref); + + return refCount; +} + +ULONG +WINAPI +INetCfgBindingPath_fnRelease( + INetCfgBindingPath *iface) +{ + INetCfgBindingPathImpl *This = (INetCfgBindingPathImpl*)iface; + ULONG refCount = InterlockedDecrement(&This->ref); + + if (!refCount) + { + CoTaskMemFree(This); + } + return refCount; +} + +HRESULT +WINAPI +INetCfgBindingPath_fnIsSamePathAs( + INetCfgBindingPath *iface, + INetCfgBindingPath *pPath) +{ + return E_NOTIMPL; +} + +HRESULT +WINAPI +INetCfgBindingPath_fnIsSubPathOf( + INetCfgBindingPath *iface, + INetCfgBindingPath *pPath) +{ + return E_NOTIMPL; +} + +HRESULT +WINAPI +INetCfgBindingPath_fnIsEnabled( + INetCfgBindingPath *iface) +{ + return E_NOTIMPL; +} + +HRESULT +WINAPI +INetCfgBindingPath_fnEnable( + INetCfgBindingPath *iface, + BOOL fEnable) +{ + return E_NOTIMPL; +} + +HRESULT +WINAPI +INetCfgBindingPath_fnGetPathToken( + INetCfgBindingPath *iface, + LPWSTR *ppszwPathToken) +{ + return E_NOTIMPL; +} + +HRESULT +WINAPI +INetCfgBindingPath_fnGetOwner( + INetCfgBindingPath *iface, + INetCfgComponent **ppComponent) +{ + return E_NOTIMPL; +} + +HRESULT +WINAPI +INetCfgBindingPath_fnGetDepth( + INetCfgBindingPath *iface, + ULONG *pcInterfaces) +{ + return E_NOTIMPL; +} + +HRESULT +WINAPI +INetCfgBindingPath_fnEnumBindingInterfaces( + INetCfgBindingPath *iface, + IEnumNetCfgBindingInterface **ppenumInterface) +{ + return E_NOTIMPL; +} + +static const INetCfgBindingPathVtbl vt_NetCfgBindingPath = +{ + INetCfgBindingPath_fnQueryInterface, + INetCfgBindingPath_fnAddRef, + INetCfgBindingPath_fnRelease, + INetCfgBindingPath_fnIsSamePathAs, + INetCfgBindingPath_fnIsSubPathOf, + INetCfgBindingPath_fnIsEnabled, + INetCfgBindingPath_fnEnable, + INetCfgBindingPath_fnGetPathToken, + INetCfgBindingPath_fnGetOwner, + INetCfgBindingPath_fnGetDepth, + INetCfgBindingPath_fnEnumBindingInterfaces, +}; + +HRESULT +WINAPI +INetCfgBindingPath_Constructor( + IUnknown *pUnkOuter, + REFIID riid, + LPVOID *ppv) +{ + INetCfgBindingPathImpl *This; + + if (!ppv) + return E_POINTER; + + This = (INetCfgBindingPathImpl *)CoTaskMemAlloc(sizeof(INetCfgBindingPathImpl)); + if (!This) + return E_OUTOFMEMORY; + + This->ref = 1; + This->lpVtbl = (const INetCfgBindingPath*)&vt_NetCfgBindingPath; + + if (!SUCCEEDED (INetCfgBindingPath_QueryInterface ((INetCfgBindingPath*)This, riid, ppv))) + { + return E_NOINTERFACE; + } + + INetCfgBindingPath_Release((INetCfgBindingPath*)This); + return S_OK; +} + + +/*************************************************************** + * IEnumNetCfgBindingPath + */ + +HRESULT +WINAPI +IEnumNetCfgBindingPath_fnQueryInterface( + IEnumNetCfgBindingPath *iface, + REFIID iid, + LPVOID *ppvObj) +{ + IEnumNetCfgBindingPathImpl *This = (IEnumNetCfgBindingPathImpl*)iface; + *ppvObj = NULL; + + if (IsEqualIID (iid, &IID_IUnknown) || + IsEqualIID (iid, &IID_IEnumNetCfgBindingPath)) + { + *ppvObj = This; + return S_OK; + } + + return E_NOINTERFACE; +} + + +ULONG +WINAPI +IEnumNetCfgBindingPath_fnAddRef( + IEnumNetCfgBindingPath *iface) +{ + IEnumNetCfgBindingPathImpl *This = (IEnumNetCfgBindingPathImpl*)iface; + ULONG refCount = InterlockedIncrement(&This->ref); + + return refCount; +} + +ULONG +WINAPI +IEnumNetCfgBindingPath_fnRelease( + IEnumNetCfgBindingPath *iface) +{ + IEnumNetCfgBindingPathImpl *This = (IEnumNetCfgBindingPathImpl*)iface; + ULONG refCount = InterlockedDecrement(&This->ref); + + return refCount; +} + +HRESULT +WINAPI +IEnumNetCfgBindingPath_fnNext( + IEnumNetCfgBindingPath *iface, + ULONG celt, + INetCfgBindingPath **rgelt, + ULONG *pceltFetched) +{ +#if 0 + IEnumNetCfgBindingPathImpl *This = (IEnumNetCfgBindingPathImpl*)iface; + HRESULT hr; + + if (!iface || !rgelt) + return E_POINTER; + + if (celt != 1) + return E_INVALIDARG; + + if (!This->pCurrent) + return S_FALSE; + + hr = INetCfgBindingPath_Constructor (NULL, &IID_INetCfgComponent, (LPVOID*)rgelt); + if (SUCCEEDED(hr)) + { + This->pCurrent = This->pCurrent->pNext; + if (pceltFetched) + *pceltFetched = 1; + } + return hr; +#endif + + return E_NOTIMPL; +} + +HRESULT +WINAPI +IEnumNetCfgBindingPath_fnSkip( + IEnumNetCfgBindingPath *iface, + ULONG celt) +{ +#if 0 + IEnumNetCfgBindingPathImpl *This = (IEnumNetCfgBindingPathImpl*)iface; + + if (!This->pCurrent) + return S_FALSE; + + while (celt-- > 0 && This->pCurrent) + This->pCurrent = This->pCurrent->pNext; + + if (!celt) + return S_OK; + else + return S_FALSE; +#endif + + return E_NOTIMPL; +} + +HRESULT +WINAPI +IEnumNetCfgBindingPath_fnReset( + IEnumNetCfgBindingPath *iface) +{ +#if 0 + IEnumNetCfgBindingPathImpl *This = (IEnumNetCfgBindingPathImpl*)iface; + + This->pCurrent = This->pHead; + return S_OK; +#endif + + return E_NOTIMPL; +} + +HRESULT +WINAPI +IEnumNetCfgBindingPath_fnClone( + IEnumNetCfgBindingPath *iface, + IEnumNetCfgBindingPath **ppenum) +{ + return E_NOTIMPL; +} + +static const IEnumNetCfgBindingPathVtbl vt_EnumNetCfgBindingPath = +{ + IEnumNetCfgBindingPath_fnQueryInterface, + IEnumNetCfgBindingPath_fnAddRef, + IEnumNetCfgBindingPath_fnRelease, + IEnumNetCfgBindingPath_fnNext, + IEnumNetCfgBindingPath_fnSkip, + IEnumNetCfgBindingPath_fnReset, + IEnumNetCfgBindingPath_fnClone +}; + +HRESULT +WINAPI +IEnumNetCfgBindingPath_Constructor(IUnknown *pUnkOuter, REFIID riid, LPVOID *ppv, DWORD dwFlags) +{ + IEnumNetCfgBindingPathImpl *This; + + if (!ppv) + return E_POINTER; + + This = (IEnumNetCfgBindingPathImpl *)CoTaskMemAlloc(sizeof(IEnumNetCfgBindingPathImpl)); + if (!This) + return E_OUTOFMEMORY; + + This->ref = 1; + This->lpVtbl = (const IEnumNetCfgBindingPath*)&vt_EnumNetCfgBindingPath; +#if 0 + This->pCurrent = pItem; + This->pHead = pItem; + This->pNCfg = pNCfg; +#endif + + if (!SUCCEEDED (IEnumNetCfgBindingPath_QueryInterface((INetCfgBindingPath*)This, riid, ppv))) + { + IEnumNetCfgBindingPath_Release((INetCfg*)This); + return E_NOINTERFACE; + } + + IEnumNetCfgBindingPath_Release((IEnumNetCfgBindingPath*)This); + return S_OK; +} diff --git a/dll/win32/netcfgx/precomp.h b/dll/win32/netcfgx/precomp.h index ceaa12e571..efb5d6439f 100644 --- a/dll/win32/netcfgx/precomp.h +++ b/dll/win32/netcfgx/precomp.h @@ -64,6 +64,10 @@ extern HINSTANCE netcfgx_hInstance; HRESULT WINAPI INetCfgComponent_Constructor (IUnknown * pUnkOuter, REFIID riid, LPVOID * ppv, NetCfgComponentItem * pItem,INetCfg * iface); HRESULT WINAPI IEnumNetCfgComponent_Constructor (IUnknown * pUnkOuter, REFIID riid, LPVOID * ppv, NetCfgComponentItem * pItem, INetCfg * iface); +/* netcfgbindingpath_iface.c */ +HRESULT WINAPI INetCfgBindingPath_Constructor(IUnknown *pUnkOuter, REFIID riid, LPVOID *ppv); +HRESULT WINAPI IEnumNetCfgBindingPath_Constructor(IUnknown *pUnkOuter, REFIID riid, LPVOID *ppv, DWORD dwFlags); + /* tcpipconf_notify.c */ HRESULT WINAPI TcpipConfigNotify_Constructor (IUnknown * pUnkOuter, REFIID riid, LPVOID * ppv);
5 years, 6 months
1
0
0
0
[reactos] 01/01: [NETCFGX] NetPropPageProvider: Handle the Min and Max values for INT, LONG and WORD types properly
by Eric Kohl
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=2da533a8a422048ca7ca2…
commit 2da533a8a422048ca7ca2520741c600092e7ef82 Author: Eric Kohl <eric.kohl(a)reactos.org> AuthorDate: Tue Jun 18 21:46:40 2019 +0200 Commit: Eric Kohl <eric.kohl(a)reactos.org> CommitDate: Tue Jun 18 21:47:29 2019 +0200 [NETCFGX] NetPropPageProvider: Handle the Min and Max values for INT, LONG and WORD types properly CORE-15095 --- dll/win32/netcfgx/propertypage.c | 106 ++++++++++++++++++++++++++++++++------- 1 file changed, 88 insertions(+), 18 deletions(-) diff --git a/dll/win32/netcfgx/propertypage.c b/dll/win32/netcfgx/propertypage.c index 87be83650f..a7ded46a05 100644 --- a/dll/win32/netcfgx/propertypage.c +++ b/dll/win32/netcfgx/propertypage.c @@ -43,8 +43,20 @@ typedef struct _PARAMETER INT iBase; INT iStep; - LONG lMin; - LONG lMax; + + union + { + struct + { + LONG lMin; + LONG lMax; + } l; + struct + { + DWORD dwMin; + DWORD dwMax; + } dw; + } u; } PARAMETER, *PPARAMETER; typedef struct _PARAMETER_ARRAY @@ -236,6 +248,41 @@ GetLongValue( } +static DWORD +GetDWordValue( + _In_ HKEY hKey, + _In_ PWSTR pValueName, + _In_ DWORD dwDefault, + _Out_ PDWORD pValue) +{ + WCHAR szBuffer[24]; + DWORD dwLength = 0; + DWORD dwRegType; + PWSTR ptr = NULL; + + dwLength = sizeof(szBuffer); + RegQueryValueExW(hKey, + pValueName, + NULL, + &dwRegType, + (LPBYTE)szBuffer, + &dwLength); + + if (dwRegType == REG_SZ && dwLength >= sizeof(WCHAR)) + { + *pValue = wcstoul(szBuffer, &ptr, 10); + if (*pValue == 0 && ptr != NULL) + *pValue = dwDefault; + } + else + { + *pValue = dwDefault; + } + + return ERROR_SUCCESS; +} + + static DWORD GetEnumOptions( @@ -388,6 +435,7 @@ BuildParameterArray( PWSTR pszType = NULL; LONG lError; LONG lDefaultMin, lDefaultMax; + DWORD dwDefaultMin, dwDefaultMax; BOOL ret = FALSE; hDriverKey = SetupDiOpenDevRegKey(DeviceInfoSet, @@ -543,26 +591,43 @@ BuildParameterArray( } else if (ParamArray->Array[dwIndex].Type == WORD_TYPE) { - lDefaultMin = 0L; - lDefaultMax = 65535L; // MAX_WORD; + dwDefaultMin = 0UL; + dwDefaultMax = 65535UL; // MAX_WORD; } #if 0 else if (ParamArray->Array[dwIndex].Type == DWORD_TYPE) { - lDefaultMin = 0; - lDefaultMax = 4294967295; //MAX_DWORD; + dwDefaultMin = 0UL; + dwDefaultMax = 4294967295UL; //MAX_DWORD; } #endif - GetLongValue(hParamKey, - L"Min", - lDefaultMin, - &ParamArray->Array[dwIndex].lMin); - - GetLongValue(hParamKey, - L"Max", - lDefaultMax, - &ParamArray->Array[dwIndex].lMax); + if (ParamArray->Array[dwIndex].Type == INT_TYPE || + ParamArray->Array[dwIndex].Type == LONG_TYPE) + { + GetLongValue(hParamKey, + L"Min", + lDefaultMin, + &ParamArray->Array[dwIndex].u.l.lMin); + + GetLongValue(hParamKey, + L"Max", + lDefaultMax, + &ParamArray->Array[dwIndex].u.l.lMax); + } + else if (ParamArray->Array[dwIndex].Type == WORD_TYPE || + ParamArray->Array[dwIndex].Type == DWORD_TYPE) + { + GetDWordValue(hParamKey, + L"Min", + dwDefaultMin, + &ParamArray->Array[dwIndex].u.dw.dwMin); + + GetDWordValue(hParamKey, + L"Max", + dwDefaultMax, + &ParamArray->Array[dwIndex].u.dw.dwMax); + } GetIntValue(hParamKey, L"Base", @@ -773,10 +838,15 @@ DisplayParameter( else SendMessage(hwndControl, UDM_SETBASE, 10, 0); - if (Parameter->Type != DWORD_TYPE) + if (Parameter->Type == INT_TYPE || Parameter->Type == LONG_TYPE) + { + TRACE("SetMin %ld SetMax %ld\n", Parameter->u.l.lMin, Parameter->u.l.lMax); + SendMessage(hwndControl, UDM_SETRANGE32, Parameter->u.l.lMin, Parameter->u.l.lMax); + } + else if (Parameter->Type == WORD_TYPE) { - TRACE("SetMin %ld SetMax %ld\n", Parameter->lMin, Parameter->lMax); - SendMessage(hwndControl, UDM_SETRANGE32, Parameter->lMin, Parameter->lMax); + TRACE("SetMin %lu SetMax %lu\n", Parameter->u.dw.dwMin, Parameter->u.dw.dwMax); + SendMessage(hwndControl, UDM_SETRANGE32, (INT)Parameter->u.dw.dwMin, (INT)Parameter->u.dw.dwMax); } hwndControl = GetDlgItem(hwnd, IDC_PROPERTY_VALUE_EDIT);
5 years, 6 months
1
0
0
0
[reactos] 01/01: [URLMON] Directly call cabinet!Extract instead of calling it via advpack!ExtractFilesW CORE-15795
by Mark Jansen
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=c8ef4912a7230bdeef25d…
commit c8ef4912a7230bdeef25d90dc7120c70c79bad74 Author: Mark Jansen <mark.jansen(a)reactos.org> AuthorDate: Sat Jun 15 22:32:22 2019 +0200 Commit: Mark Jansen <mark.jansen(a)reactos.org> CommitDate: Mon Jun 17 19:51:58 2019 +0200 [URLMON] Directly call cabinet!Extract instead of calling it via advpack!ExtractFilesW CORE-15795 --- dll/win32/urlmon/axinstall.c | 129 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 129 insertions(+) diff --git a/dll/win32/urlmon/axinstall.c b/dll/win32/urlmon/axinstall.c index 5eac00d46c7..86beb09e568 100644 --- a/dll/win32/urlmon/axinstall.c +++ b/dll/win32/urlmon/axinstall.c @@ -72,13 +72,142 @@ static inline BOOL file_exists(const WCHAR *file_name) return GetFileAttributesW(file_name) != INVALID_FILE_ATTRIBUTES; } +#ifdef __REACTOS__ + +/* The following definitions were copied from dll/win32/advpack32/files.c */ + +/* SESSION Operation */ +#define EXTRACT_FILLFILELIST 0x00000001 +#define EXTRACT_EXTRACTFILES 0x00000002 + +struct FILELIST{ + LPSTR FileName; + struct FILELIST *next; + BOOL DoExtract; +}; + +typedef struct { + INT FileSize; + ERF Error; + struct FILELIST *FileList; + INT FileCount; + INT Operation; + CHAR Destination[MAX_PATH]; + CHAR CurrentFile[MAX_PATH]; + CHAR Reserved[MAX_PATH]; + struct FILELIST *FilterList; +} SESSION; + +static HRESULT (WINAPI *pExtract)(SESSION*, LPCSTR); + + +/* The following functions were copied from dll/win32/advpack32/files.c + All unused arguments are removed */ + +static void free_file_node(struct FILELIST *pNode) +{ + HeapFree(GetProcessHeap(), 0, pNode->FileName); + HeapFree(GetProcessHeap(), 0, pNode); +} + +static void free_file_list(SESSION* session) +{ + struct FILELIST *next, *curr = session->FileList; + + while (curr) + { + next = curr->next; + free_file_node(curr); + curr = next; + } +} + +HRESULT WINAPI Modified_ExtractFilesA(LPCSTR CabName, LPCSTR ExpandDir) +{ + SESSION session; + HMODULE hCabinet; + HRESULT res = S_OK; + LPSTR szConvertedList = NULL; + + TRACE("(%s, %s)\n", debugstr_a(CabName), debugstr_a(ExpandDir)); + + if (!CabName || !ExpandDir) + return E_INVALIDARG; + + if (GetFileAttributesA(ExpandDir) == INVALID_FILE_ATTRIBUTES) + return HRESULT_FROM_WIN32(ERROR_PATH_NOT_FOUND); + + hCabinet = LoadLibraryA("cabinet.dll"); + if (!hCabinet) + return E_FAIL; + + ZeroMemory(&session, sizeof(SESSION)); + + pExtract = (void *)GetProcAddress(hCabinet, "Extract"); + if (!pExtract) + { + res = E_FAIL; + goto done; + } + + lstrcpyA(session.Destination, ExpandDir); + + session.Operation |= (EXTRACT_FILLFILELIST | EXTRACT_EXTRACTFILES); + res = pExtract(&session, CabName); + +done: + free_file_list(&session); + FreeLibrary(hCabinet); + HeapFree(GetProcessHeap(), 0, szConvertedList); + + return res; +} + + + +HRESULT WINAPI Modified_ExtractFilesW(LPCWSTR CabName, LPCWSTR ExpandDir) +{ + char *cab_name = NULL, *expand_dir = NULL; + HRESULT hres = S_OK; + + TRACE("(%s, %s, %d)\n", debugstr_w(CabName), debugstr_w(ExpandDir)); + + if(CabName) { + cab_name = heap_strdupWtoA(CabName); + if(!cab_name) + return E_OUTOFMEMORY; + } + + if(ExpandDir) { + expand_dir = heap_strdupWtoA(ExpandDir); + if(!expand_dir) + hres = E_OUTOFMEMORY; + } + + /* cabinet.dll, which does the real job of extracting files, doesn't have UNICODE API, + so we need W->A conversion at some point anyway. */ + if(SUCCEEDED(hres)) + hres = Modified_ExtractFilesA(cab_name, expand_dir); + + heap_free(cab_name); + heap_free(expand_dir); + return hres; +} + +#endif + + static HRESULT extract_cab_file(install_ctx_t *ctx) { size_t path_len, file_len; WCHAR *ptr; HRESULT hres; +#ifdef __REACTOS__ + hres = Modified_ExtractFilesW(ctx->cache_file, ctx->tmp_dir); +#else hres = ExtractFilesW(ctx->cache_file, ctx->tmp_dir, 0, NULL, NULL, 0); +#endif if(FAILED(hres)) { WARN("ExtractFilesW failed: %08x\n", hres); return hres;
5 years, 6 months
1
0
0
0
[reactos] 08/08: [REGEDIT] Update Portuguese (neutral) translations. (#1656)
by Jose Carlos Jesus
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=3fbbfc8f2fda7dc712a83…
commit 3fbbfc8f2fda7dc712a830768637a34e7b2bd6e5 Author: Jose Carlos Jesus <zecarlos1957(a)hotmail.com> AuthorDate: Mon Jun 17 15:04:50 2019 +0200 Commit: Hermès Bélusca-Maïto <hermes.belusca-maito(a)reactos.org> CommitDate: Mon Jun 17 15:12:13 2019 +0200 [REGEDIT] Update Portuguese (neutral) translations. (#1656) --- base/applications/regedit/lang/pt-PT.rc | 262 ++++++++++++++++---------------- 1 file changed, 131 insertions(+), 131 deletions(-) diff --git a/base/applications/regedit/lang/pt-PT.rc b/base/applications/regedit/lang/pt-PT.rc index 6da9a4a9475..84b402183cd 100644 --- a/base/applications/regedit/lang/pt-PT.rc +++ b/base/applications/regedit/lang/pt-PT.rc @@ -1,4 +1,4 @@ -LANGUAGE LANG_PORTUGUESE, SUBLANG_PORTUGUESE +LANGUAGE LANG_PORTUGUESE, SUBLANG_NEUTRAL ID_ACCEL ACCELERATORS BEGIN @@ -26,16 +26,16 @@ END IDR_REGEDIT_MENU MENU BEGIN - POPUP "&Registro" + POPUP "&Registo" BEGIN - MENUITEM "&Importar arquivo do Registro...", ID_REGISTRY_IMPORTREGISTRYFILE - MENUITEM "&Exportar arquivo do Registro...", ID_REGISTRY_EXPORTREGISTRYFILE + MENUITEM "&Importar arquivo do Registo...", ID_REGISTRY_IMPORTREGISTRYFILE + MENUITEM "&Exportar arquivo do Registo...", ID_REGISTRY_EXPORTREGISTRYFILE MENUITEM SEPARATOR MENUITEM "Load Hive...", ID_REGISTRY_LOADHIVE, GRAYED MENUITEM "Unload Hive...", ID_REGISTRY_UNLOADHIVE, GRAYED MENUITEM SEPARATOR - MENUITEM "&Conectar Registro da rede...", ID_REGISTRY_CONNECTNETWORKREGISTRY - MENUITEM "&Desconectar Registro da rede...", ID_REGISTRY_DISCONNECTNETWORKREGISTRY, GRAYED + MENUITEM "&Ligar Registo da rede...", ID_REGISTRY_CONNECTNETWORKREGISTRY + MENUITEM "&Desligar Registo da rede...", ID_REGISTRY_DISCONNECTNETWORKREGISTRY, GRAYED MENUITEM SEPARATOR MENUITEM "Im&primir...\tCtrl+P", ID_REGISTRY_PRINT, GRAYED MENUITEM SEPARATOR @@ -52,11 +52,11 @@ BEGIN MENUITEM "Valor &Texto", ID_EDIT_NEW_STRINGVALUE MENUITEM "Valor &Binário", ID_EDIT_NEW_BINARYVALUE MENUITEM "Valor &DWORD", ID_EDIT_NEW_DWORDVALUE - MENUITEM "&Multi-String Value", ID_EDIT_NEW_MULTISTRINGVALUE - MENUITEM "&Expandable String Value", ID_EDIT_NEW_EXPANDABLESTRINGVALUE + MENUITEM "Valor &Multi-String", ID_EDIT_NEW_MULTISTRINGVALUE + MENUITEM "Valor &Expand. String", ID_EDIT_NEW_EXPANDABLESTRINGVALUE END MENUITEM SEPARATOR - MENUITEM "&Permissions...", ID_EDIT_PERMISSIONS + MENUITEM "&Permissões...", ID_EDIT_PERMISSIONS MENUITEM SEPARATOR MENUITEM "&Excluir\tDel", ID_EDIT_DELETE MENUITEM "&Renomear", ID_EDIT_RENAME @@ -72,7 +72,7 @@ BEGIN MENUITEM SEPARATOR MENUITEM "&Dividir", ID_VIEW_SPLIT MENUITEM SEPARATOR - MENUITEM "&Atualizar\tF5", ID_VIEW_REFRESH + MENUITEM "&Actualizar\tF5", ID_VIEW_REFRESH END POPUP "&Favoritos" BEGIN @@ -83,7 +83,7 @@ BEGIN BEGIN MENUITEM "&Topics da Ajuda", ID_HELP_HELPTOPICS MENUITEM SEPARATOR - MENUITEM "&Sobre o Editor do Registro", ID_HELP_ABOUT + MENUITEM "&Sobre o Editor do Registo", ID_HELP_ABOUT END END @@ -106,41 +106,41 @@ BEGIN MENUITEM "Valor &Texto", ID_EDIT_NEW_STRINGVALUE MENUITEM "Valor &Binário", ID_EDIT_NEW_BINARYVALUE MENUITEM "Valor &DWORD", ID_EDIT_NEW_DWORDVALUE - MENUITEM "&Multi-String Value", ID_EDIT_NEW_MULTISTRINGVALUE - MENUITEM "&Expandable String Value", ID_EDIT_NEW_EXPANDABLESTRINGVALUE + MENUITEM "Valor &Multi-String", ID_EDIT_NEW_MULTISTRINGVALUE + MENUITEM "valor &Expand String", ID_EDIT_NEW_EXPANDABLESTRINGVALUE END END POPUP "" BEGIN - MENUITEM "Expand/Collapse", ID_TREE_EXPANDBRANCH - POPUP "&New" + MENUITEM "Expandir/Recolher", ID_TREE_EXPANDBRANCH + POPUP "&Novo" BEGIN - MENUITEM "&Key", ID_EDIT_NEW_KEY + MENUITEM "&Chave", ID_EDIT_NEW_KEY MENUITEM SEPARATOR MENUITEM "&String Value", ID_EDIT_NEW_STRINGVALUE MENUITEM "&Binary Value", ID_EDIT_NEW_BINARYVALUE MENUITEM "&DWORD Value", ID_EDIT_NEW_DWORDVALUE - MENUITEM "&Multi-String Value", ID_EDIT_NEW_MULTISTRINGVALUE - MENUITEM "&Expandable String Value", ID_EDIT_NEW_EXPANDABLESTRINGVALUE + MENUITEM "Valor &Multi-String", ID_EDIT_NEW_MULTISTRINGVALUE + MENUITEM "Valor &Expand String", ID_EDIT_NEW_EXPANDABLESTRINGVALUE END MENUITEM "&Localizar...", ID_EDIT_FIND MENUITEM SEPARATOR - MENUITEM "&Delete", ID_TREE_DELETE - MENUITEM "&Rename", ID_TREE_RENAME + MENUITEM "&Apagar", ID_TREE_DELETE + MENUITEM "&Renomear", ID_TREE_RENAME MENUITEM SEPARATOR - MENUITEM "&Export", ID_TREE_EXPORT - MENUITEM "&Permissions...", ID_TREE_PERMISSIONS, GRAYED + MENUITEM "&Exportar", ID_TREE_EXPORT + MENUITEM "&Permissões...", ID_TREE_PERMISSIONS, GRAYED MENUITEM SEPARATOR - MENUITEM "&Copy Key Name", ID_EDIT_COPYKEYNAME + MENUITEM "&Copiar chave 'Nome'", ID_EDIT_COPYKEYNAME END POPUP "" BEGIN - MENUITEM "C&ut", ID_HEXEDIT_CUT - MENUITEM "&Copy", ID_HEXEDIT_COPY - MENUITEM "&Paste", ID_HEXEDIT_PASTE - MENUITEM "&Delete", ID_HEXEDIT_DELETE + MENUITEM "C&ortar", ID_HEXEDIT_CUT + MENUITEM "&Copiar", ID_HEXEDIT_COPY + MENUITEM "&Colar", ID_HEXEDIT_PASTE + MENUITEM "&Apagar", ID_HEXEDIT_DELETE MENUITEM SEPARATOR - MENUITEM "Select &All", ID_HEXEDIT_SELECT_ALL + MENUITEM "Seleccionar &Tudo", ID_HEXEDIT_SELECT_ALL END END @@ -164,13 +164,13 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | WS_POPUP | CAPTION "Edit Multi-String" FONT 8, "MS Shell Dlg" BEGIN - LTEXT "Value &name:", IDC_STATIC, 6, 6, 134, 8 + LTEXT "Valor &nome:", IDC_STATIC, 6, 6, 134, 8 EDITTEXT IDC_VALUE_NAME, 6, 17, 240, 12, ES_AUTOHSCROLL | ES_READONLY - LTEXT "&Value data:", IDC_STATIC, 6, 35, 161, 8 + LTEXT "&Valor dados:", IDC_STATIC, 6, 35, 161, 8 EDITTEXT IDC_VALUE_DATA, 6, 46, 240, 102, ES_AUTOHSCROLL | ES_MULTILINE | ES_WANTRETURN | ES_AUTOVSCROLL | WS_VSCROLL DEFPUSHBUTTON "OK", IDOK, 142, 154, 50, 14 - PUSHBUTTON "Cancel", IDCANCEL, 196, 154, 50, 14 + PUSHBUTTON "Cancearl", IDCANCEL, 196, 154, 50, 14 END IDD_EDIT_BIN_DATA DIALOGEX 32, 24, 252, 174 @@ -178,12 +178,12 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | WS_POPUP | CAPTION "Edit Binary Value" FONT 8, "MS Shell Dlg" BEGIN - LTEXT "Value &name:", IDC_STATIC, 6, 6, 134, 8 + LTEXT "Valor &nome:", IDC_STATIC, 6, 6, 134, 8 EDITTEXT IDC_VALUE_NAME, 6, 17, 240, 12, ES_AUTOHSCROLL | ES_READONLY - LTEXT "&Value data:", IDC_STATIC, 6, 35, 161, 8 + LTEXT "&Valor dados:", IDC_STATIC, 6, 35, 161, 8 CONTROL "", IDC_VALUE_DATA, "HexEdit32", WS_VSCROLL | WS_BORDER | WS_TABSTOP, 6, 46, 240, 102 DEFPUSHBUTTON "OK", IDOK, 142, 154, 50, 14 - PUSHBUTTON "Cancel", IDCANCEL, 196, 154, 50, 14 + PUSHBUTTON "Cancelar", IDCANCEL, 196, 154, 50, 14 END IDD_EDIT_DWORD DIALOGEX 32, 24, 252, 104 @@ -191,15 +191,15 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | WS_POPUP | CAPTION "Edit DWORD" FONT 8, "MS Shell Dlg" BEGIN - LTEXT "Value &name:", IDC_STATIC, 6, 6, 134, 8 + LTEXT "Valor &nome:", IDC_STATIC, 6, 6, 134, 8 EDITTEXT IDC_VALUE_NAME, 6, 17, 240, 12, ES_AUTOHSCROLL | ES_READONLY - LTEXT "&Value data:", IDC_STATIC, 6, 35, 161, 8 + LTEXT "&Valor dados:", IDC_STATIC, 6, 35, 161, 8 EDITTEXT IDC_VALUE_DATA, 6, 46, 116, 12, ES_AUTOHSCROLL GROUPBOX "Base", IDC_STATIC, 130, 35, 116, 39 AUTORADIOBUTTON "&Hexadecimal", IDC_FORMAT_HEX, 141, 46, 60, 10, WS_GROUP AUTORADIOBUTTON "&Decimal", IDC_FORMAT_DEC, 141, 59, 60, 10 DEFPUSHBUTTON "OK", IDOK, 142, 82, 50, 14 - PUSHBUTTON "Cancel", IDCANCEL, 196, 82, 50, 14 + PUSHBUTTON "Cancelar", IDCANCEL, 196, 82, 50, 14 END IDD_EDIT_RESOURCE_LIST DIALOGEX 32, 24, 170, 120 @@ -210,7 +210,7 @@ BEGIN CONTROL "", IDC_RESOURCE_LIST, "SysListView32", LVS_REPORT | LVS_NOSORTHEADER | LVS_SINGLESEL | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP, 10, 10, 150, 75 DEFPUSHBUTTON "OK", IDOK, 27, 100, 50, 14 - PUSHBUTTON "Show...", IDC_SHOW_RESOURCE, 93, 100, 50, 14, WS_DISABLED + PUSHBUTTON "Mostrar...", IDC_SHOW_RESOURCE, 93, 100, 50, 14, WS_DISABLED END IDD_EDIT_RESOURCE DIALOGEX 6, 18, 281, 283 @@ -261,18 +261,18 @@ END STRINGTABLE BEGIN - IDS_APP_TITLE "Editor do Registro" + IDS_APP_TITLE "Editor do Registo" IDC_REGEDIT "REGEDIT" IDC_REGEDIT_FRAME "REGEDIT_FRAME" END STRINGTABLE BEGIN - ID_REGISTRY_MENU "Contém comandos para trabalhar com o Registro inteiro." + ID_REGISTRY_MENU "Contém comandos para trabalhar com o Registo inteiro." ID_EDIT_MENU "Contém comandos para edição de valores ou chaves." ID_VIEW_MENU "Contém comandos para personalização da janela do Registro." ID_FAVOURITES_MENU "Contém comandos para acessar chaves frequentemente usadas." - ID_HELP_MENU "Contém comandos para exibição da ajuda e informações sobre o Editor do Registro." + ID_HELP_MENU "Contém comandos para exibição da ajuda e informações sobre o Editor do Registo." ID_EDIT_NEW_MENU "Contém comandos para criação de novas chaves ou valores" END @@ -284,120 +284,120 @@ BEGIN ID_EDIT_NEW_BINARYVALUE "Adiciona um novo valor binário." ID_EDIT_NEW_DWORDVALUE "Adiciona um novo valor DWORD." ID_REGISTRY_IMPORTREGISTRYFILE "Importa um arquivo texto para o registro." - ID_REGISTRY_EXPORTREGISTRYFILE "Exporta todo ou parte do registro para um arquivo texto." - ID_REGISTRY_LOADHIVE "Loads a hive file into the registry" - ID_REGISTRY_UNLOADHIVE "Unloads a hive from the registry" - ID_REGISTRY_CONNECTNETWORKREGISTRY "Conecta a um registro em um computador remoto." - ID_REGISTRY_DISCONNECTNETWORKREGISTRY "Desconecta de um registro um computador remoto." - ID_REGISTRY_PRINT "Imprime todo ou parte do registro." + ID_REGISTRY_EXPORTREGISTRYFILE "Exporta todo ou parte do registo para um arquivo texto." + ID_REGISTRY_LOADHIVE "Carrega um arquivo de secção no registo" + ID_REGISTRY_UNLOADHIVE "Descarrega um arquivo de seção no registro" + ID_REGISTRY_CONNECTNETWORKREGISTRY "Liga a um registo num computador remoto." + ID_REGISTRY_DISCONNECTNETWORKREGISTRY "Desliga um registo de um computador remoto." + ID_REGISTRY_PRINT "Imprime todo ou parte do registo." /* ID_HELP_HELPTOPICS "Abre a ajuda do Editor do Registro." */ ID_HELP_ABOUT "Exibe informações do programa, número da versão e copyright." END STRINGTABLE BEGIN - ID_REGISTRY_EXIT "Encerra o Editor do Registro." - ID_FAVOURITES_ADDTOFAVOURITES "Adiciona chaves a lista de favoritos." + ID_REGISTRY_EXIT "Encerra o Editor do Registo." + ID_FAVOURITES_ADDTOFAVOURITES "Adiciona chaves na lista de favoritos." ID_FAVOURITES_REMOVEFAVOURITE "Remove chaves da lista de favoritos." ID_VIEW_STATUSBAR "Mostra ou oculta a barra de status." ID_VIEW_SPLIT "Altera a posição da divisão entre os painéis." - ID_VIEW_REFRESH "Atualiza a janela." - ID_EDIT_DELETE "Exclui a selecão." - ID_EDIT_RENAME "Renomeia a selecão." - ID_EDIT_COPYKEYNAME "Copia o nome da chave selecionada para a Área de transferência." - ID_EDIT_FIND "Localiza um texto em uma chave, valor ou dado." + ID_VIEW_REFRESH "Actualiza a janela." + ID_EDIT_DELETE "Exclui a seleccão." + ID_EDIT_RENAME "Renomeia a seleccão." + ID_EDIT_COPYKEYNAME "Copia o nome da chave seleccionada para a Área de transferência." + ID_EDIT_FIND "Localiza um texto numa chave, valor ou dado." ID_EDIT_FINDNEXT "Localiza a próxima ocorrência do texto especificado na pesquisa anterior." END STRINGTABLE BEGIN IDS_ERROR "Erro" - IDS_WARNING "Warning" - IDS_BAD_KEY "Can't query key '%s'" + IDS_WARNING "Aviso" + IDS_BAD_KEY "Não é possível consultar a chave'%s'" IDS_BAD_VALUE "Não pode perguntar o valor '%s'" IDS_UNSUPPORTED_TYPE "Não pode editar chaves deste tipo (%ld)" IDS_TOO_BIG_VALUE "Valor é muito grande (%ld)" - IDS_MULTI_SZ_EMPTY_STRING "Data of type REG_MULTI_SZ cannot contain empty strings.\nThe empty strings have been removed from the list." - IDS_QUERY_DELETE_KEY_ONE "Are you sure you want to delete this key?" - IDS_QUERY_DELETE_KEY_MORE "Are you sure you want to delete these keys?" - IDS_QUERY_DELETE_KEY_CONFIRM "Confirm Key Delete" - IDS_QUERY_DELETE_ONE "Are you sure you want to delete this value?" - IDS_QUERY_DELETE_MORE "Are you sure you want to delete these values?" - IDS_QUERY_DELETE_CONFIRM "Confirm Value Delete" - IDS_ERR_DELVAL_CAPTION "Error Deleting Values" - IDS_ERR_DELETEVALUE "Unable to delete all specified values!" - IDS_ERR_RENVAL_CAPTION "Error Renaming Value" - IDS_ERR_RENVAL_TOEMPTY "Cannot rename %s. The specified value name is empty. Try another name and try again." - IDS_QUERY_IMPORT_HIVE_CAPTION "Confirm Key Restoration" - IDS_QUERY_IMPORT_HIVE_MSG "A key will be restored on top of the currently selected key.\nAll values and subkeys of this key will be deleted.\nDo you want to continue the operation?" - IDS_NEW_KEY "New Key #%d" - IDS_NEW_VALUE "New Value #%d" + IDS_MULTI_SZ_EMPTY_STRING "Os dados do tipo REG_MULTI_SZ não podem conter strings vazias.\nAs strings vazias foram removidas da lista." + IDS_QUERY_DELETE_KEY_ONE "Tem certeza que deseja excluir esta chave?" + IDS_QUERY_DELETE_KEY_MORE "Tem certeza que deseja excluir estas chaves?" + IDS_QUERY_DELETE_KEY_CONFIRM "Confirme exclusão da chave" + IDS_QUERY_DELETE_ONE "Tem certeza que deseja excluir este valor?" + IDS_QUERY_DELETE_MORE "Tem certeza que deseja excluir estes valores??" + IDS_QUERY_DELETE_CONFIRM "Confirme a exclusão do Valor" + IDS_ERR_DELVAL_CAPTION "Erro ao apagar Valor" + IDS_ERR_DELETEVALUE "Não foi possível apagar todos os valores especificados!" + IDS_ERR_RENVAL_CAPTION "Erro ao Renomear Valor" + IDS_ERR_RENVAL_TOEMPTY "Não foi possível renomear %s. O nome do valor especificado está vazio. Tente outro nome." + IDS_QUERY_IMPORT_HIVE_CAPTION "Confirme a restauração da chave" + IDS_QUERY_IMPORT_HIVE_MSG "A chave será restaurada no topo da chave atualmente selecionada.\nTodos os valores e subchaves desta chave serão excluídos.\nDeseja continuar a operação?" + IDS_NEW_KEY "Nova chave #%d" + IDS_NEW_VALUE "Novo valor #%d" END STRINGTABLE BEGIN - IDS_BINARY_EMPTY "(zero-length binary value)" - IDS_DEFAULT_VALUE_NAME "(Default)" - IDS_VALUE_NOT_SET "(value not set)" - IDS_UNKNOWN_TYPE "Unknown type: (0x%lx)" - IDS_MY_COMPUTER "My Computer" - IDS_IMPORT_REG_FILE "Import Registry File" - IDS_EXPORT_REG_FILE "Export Registry File" - IDS_LOAD_HIVE "Load Hive" - IDS_UNLOAD_HIVE "Unload Hive" - IDS_INVALID_DWORD "(invalid DWORD value)" + IDS_BINARY_EMPTY "(valor binário de comprimento zero)" + IDS_DEFAULT_VALUE_NAME "(Por default)" + IDS_VALUE_NOT_SET "(valor não atribuido)" + IDS_UNKNOWN_TYPE "tipo desconhecido: (0x%lx)" + IDS_MY_COMPUTER "O meu computador" + IDS_IMPORT_REG_FILE "Importar ficheiro de registo" + IDS_EXPORT_REG_FILE "Exportar ficheiro de registo" + IDS_LOAD_HIVE "Carregar secção" + IDS_UNLOAD_HIVE "Descarregar secção" + IDS_INVALID_DWORD "(valor DWORD inválido)" END STRINGTABLE BEGIN - IDS_FLT_REGFILE "Registration File" - IDS_FLT_REGFILES "Registration Files (*.reg)" + IDS_FLT_REGFILE "Arquivo de registo" + IDS_FLT_REGFILES "Arquivos de registo (*.reg)" IDS_FLT_REGFILES_FLT "*.reg" - IDS_FLT_HIVFILES "Registry Hive Files (*.*)" + IDS_FLT_HIVFILES "Arquivo de secção do registo (*.*)" IDS_FLT_HIVFILES_FLT "*.*" - IDS_FLT_REGEDIT4 "Win9x/NT4 Registration Files (REGEDIT4) (*.reg)" + IDS_FLT_REGEDIT4 "Win9x/NT4 Arquivos de registo (REGEDIT4) (*.reg)" IDS_FLT_REGEDIT4_FLT "*.reg" - IDS_FLT_ALLFILES "All Files (*.*)" + IDS_FLT_ALLFILES "Todos os ficheiros (*.*)" IDS_FLT_ALLFILES_FLT "*.*" END STRINGTABLE BEGIN - IDS_ACCESS_FULLCONTROL "Full Control" - IDS_ACCESS_READ "Read" - IDS_ACCESS_QUERYVALUE "Query Value" - IDS_ACCESS_SETVALUE "Set Value" - IDS_ACCESS_CREATESUBKEY "Create Subkey" - IDS_ACCESS_ENUMERATESUBKEYS "Enumerate Subkeys" - IDS_ACCESS_NOTIFY "Notify" - IDS_ACCESS_CREATELINK "Create Link" - IDS_ACCESS_DELETE "Delete" - IDS_ACCESS_WRITEDAC "Write DAC" - IDS_ACCESS_WRITEOWNER "Write Owner" - IDS_ACCESS_READCONTROL "Read Control" + IDS_ACCESS_FULLCONTROL "Control total" + IDS_ACCESS_READ "lêr" + IDS_ACCESS_QUERYVALUE "Valor da consulta" + IDS_ACCESS_SETVALUE "Definir valor" + IDS_ACCESS_CREATESUBKEY "Criar Sub-chave" + IDS_ACCESS_ENUMERATESUBKEYS "Enumerar sub-chaves" + IDS_ACCESS_NOTIFY "Notificar" + IDS_ACCESS_CREATELINK "Criar Link" + IDS_ACCESS_DELETE "Apagar" + IDS_ACCESS_WRITEDAC "Gravar DAC" + IDS_ACCESS_WRITEOWNER "Gravar proprietário" + IDS_ACCESS_READCONTROL "Lêr Control" END STRINGTABLE BEGIN - IDS_INHERIT_THISKEYONLY "This key only" - IDS_INHERIT_THISKEYANDSUBKEYS "This key and subkeys" - IDS_INHERIT_SUBKEYSONLY "Subkeys only" + IDS_INHERIT_THISKEYONLY "Sómente esta chave" + IDS_INHERIT_THISKEYANDSUBKEYS "Esta chave e sub-chave" + IDS_INHERIT_SUBKEYSONLY "Somente sub-chaves" END STRINGTABLE BEGIN - IDS_EXPAND "&Expand" - IDS_COLLAPSE "&Collapse" - IDS_GOTO_SUGGESTED_KEY "&Go to '%s'" - IDS_FINISHEDFIND "Finished searching through the registry." + IDS_EXPAND "&Expandir" + IDS_COLLAPSE "&Recolher" + IDS_GOTO_SUGGESTED_KEY "&ir para '%s'" + IDS_FINISHEDFIND "Concluída a pesquisa no registo." END STRINGTABLE BEGIN - IDS_IMPORT_PROMPT "Adding information can unintentionally change or delete values and cause components to stop working correctly.\nIf you do not trust the source of this information in '%s', do not add it to registry.\n\nAre you sure you want to continue?" - IDS_IMPORT_OK "The keys and values contained in '%s' have been successfully added to the registry." - IDS_IMPORT_ERROR "Cannot import '%s': Error opening the file. There may be a disk, file system error or file may not exist." - IDS_EXPORT_ERROR "Cannot export '%s': Error creating or writing to the file. There may be a disk or file system error." + IDS_IMPORT_PROMPT "Adicionar informações pode, inadvertidamente, alterar ou excluir valores e fazer com que os componentes parem de funcionar correctamente.\nSe não confiar na fonte dessas informações em '%s', não as adicione ao registro.\n\nTem certeza de que deseja continuar ?" + IDS_IMPORT_OK "As chaves e valores contidos em '%s' foram adicionados com sucesso ao registo." + IDS_IMPORT_ERROR "Não é possível importar '%s': Erro ao abrir o arquivo. Pode haver um erro no sistema de ficheiros ou o arquivo pode não existir." + IDS_EXPORT_ERROR "Não é possível exportar '%s': Erro ao criar ou gravar no arquivo. Pode haver um erro no disco ou no sistema de ficheiros." END STRINGTABLE @@ -462,76 +462,76 @@ IDD_EXPORTRANGE DIALOGEX 50, 50, 370, 50 STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_BORDER FONT 8, "MS Shell Dlg" BEGIN - GROUPBOX "Export Range", IDC_STATIC, 2, 0, 366, 48 - CONTROL "&All", IDC_EXPORT_ALL, "Button", BS_AUTORADIOBUTTON, 10, 10, 29, 11 - CONTROL "S&elected Branch", IDC_EXPORT_BRANCH, "Button", BS_AUTORADIOBUTTON, 10, 22, 100, 11 + GROUPBOX "Faixa de Exportação", IDC_STATIC, 2, 0, 366, 48 + CONTROL "&Todos", IDC_EXPORT_ALL, "Button", BS_AUTORADIOBUTTON, 10, 10, 29, 11 + CONTROL "&Ramo Seleccionado", IDC_EXPORT_BRANCH, "Button", BS_AUTORADIOBUTTON, 10, 22, 100, 11 EDITTEXT IDC_EXPORT_BRANCH_TEXT, 30, 34, 335, 12 END IDD_LOADHIVE DIALOGEX 0, 0, 193, 34 STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU -CAPTION "Load Hive" +CAPTION "Carregar secção" FONT 8, "Ms Shell Dlg" BEGIN - LTEXT "&Key:", IDC_STATIC, 4, 4, 15, 8, SS_LEFT + LTEXT "&Chave:", IDC_STATIC, 4, 4, 15, 8, SS_LEFT EDITTEXT IDC_EDIT_KEY, 23, 2, 167, 13 DEFPUSHBUTTON "OK", IDOK, 140, 17, 50, 14 - PUSHBUTTON "Cancel", IDCANCEL, 89, 17, 50, 14 + PUSHBUTTON "Cancelar", IDCANCEL, 89, 17, 50, 14 END IDD_ADDFAVORITES DIALOGEX 0, 0, 186, 46 STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU -CAPTION "Add to Favorites" +CAPTION "Adicionar aos Favoritos" FONT 8, "MS Shell Dlg" BEGIN DEFPUSHBUTTON "OK", IDOK, 129, 7, 50, 14 - PUSHBUTTON "Cancel", IDCANCEL, 129, 24, 50, 14 - LTEXT "&Favorite Name:", IDC_STATIC, 7, 7, 70, 10 + PUSHBUTTON "Cancelar", IDCANCEL, 129, 24, 50, 14 + LTEXT "Nome &Favorito:", IDC_STATIC, 7, 7, 70, 10 EDITTEXT IDC_FAVORITENAME, 7, 26, 110, 13, ES_AUTOHSCROLL END IDD_REMOVEFAVORITES DIALOGEX 0, 0, 164, 135 STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU -CAPTION "Remove Favorites" +CAPTION "Remover Favoritos" FONT 8, "MS Shell Dlg" BEGIN DEFPUSHBUTTON "OK", IDOK, 107, 114, 50, 14 - PUSHBUTTON "Cancel", IDCANCEL, 7, 114, 50, 14 + PUSHBUTTON "Cancelar", IDCANCEL, 7, 114, 50, 14 CONTROL "List1", IDC_FAVORITESLIST, "SysListView32", LVS_LIST | WS_BORDER | WS_TABSTOP, 7, 20, 150, 90 - LTEXT "Select Favorite(s):", IDC_STATIC, 7, 7, 99, 12 + LTEXT "Seleccione Favorito(s):", IDC_STATIC, 7, 7, 99, 12 END IDD_FIND DIALOGEX 0, 0, 254, 82 STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU -CAPTION "Find" +CAPTION "Procurar" FONT 8, "MS Shell Dlg" BEGIN DEFPUSHBUTTON "&Find Next", IDOK, 197, 7, 50, 14 PUSHBUTTON "Cancel", IDCANCEL, 197, 24, 50, 14 GROUPBOX "Look at", IDC_STATIC, 7, 25, 63, 51 - LTEXT "Fi&nd what:", IDC_STATIC, 7, 8, 37, 10 + LTEXT "&Procurar:", IDC_STATIC, 7, 8, 37, 10 EDITTEXT IDC_FINDWHAT, 47, 7, 142, 13, ES_AUTOHSCROLL - CONTROL "&Keys", IDC_LOOKAT_KEYS, "Button", BS_AUTOCHECKBOX | + CONTROL "&Chaves", IDC_LOOKAT_KEYS, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 14, 36, 35, 8 - CONTROL "&Values", IDC_LOOKAT_VALUES, "Button", BS_AUTOCHECKBOX | + CONTROL "&Valores", IDC_LOOKAT_VALUES, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 14, 48, 36, 8 - CONTROL "&Data", IDC_LOOKAT_DATA, "Button", BS_AUTOCHECKBOX | + CONTROL "&Dados", IDC_LOOKAT_DATA, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 14, 60, 42, 8 - CONTROL "Match &whole string only", IDC_MATCHSTRING, "Button", BS_AUTOCHECKBOX | + CONTROL "Corresponder apenas &string inteira", IDC_MATCHSTRING, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 83, 32, 94, 13 - CONTROL "Match &case", IDC_MATCHCASE, "Button", BS_AUTOCHECKBOX | + CONTROL "Cor&respondencia &", IDC_MATCHCASE, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 83, 48, 90, 12 END IDD_FINDING DIALOGEX 0, 0, 145, 50 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU -CAPTION "Find" +CAPTION "Procurar" FONT 8, "MS Shell Dlg", 400, 0, 0x1 BEGIN ICON IDI_REGEDIT, IDC_STATIC, 7, 7, 20, 20 - DEFPUSHBUTTON "&Cancel", IDCANCEL, 93, 29, 45, 14 - LTEXT "Searching the registry...", IDC_STATIC, 33, 12, 83, 8 + DEFPUSHBUTTON "&Cancelar", IDCANCEL, 93, 29, 45, 14 + LTEXT "Procurar no registo...", IDC_STATIC, 33, 12, 83, 8 END /* String Table */
5 years, 6 months
1
0
0
0
← Newer
1
...
9
10
11
12
13
14
15
...
29
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
Results per page:
10
25
50
100
200