mirror of
https://github.com/reactos/reactos.git
synced 2025-04-19 20:19:26 +00:00
Autosyncing with Wine HEAD
svn path=/trunk/; revision=30871
This commit is contained in:
parent
a1a2b731f0
commit
66fba2f89d
10 changed files with 185 additions and 98 deletions
|
@ -1,13 +1,12 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
<!DOCTYPE module SYSTEM "../../../tools/rbuild/project.dtd">
|
||||||
<module name="mpr" type="win32dll" baseaddress="${BASEADDRESS_MPR}" installbase="system32" installname="mpr.dll" allowwarnings="true">
|
<module name="mpr" type="win32dll" baseaddress="${BASEADDRESS_MPR}" installbase="system32" installname="mpr.dll" allowwarnings="true">
|
||||||
<importlibrary definition="mpr.spec.def" />
|
<importlibrary definition="mpr.spec.def" />
|
||||||
<include base="mpr">.</include>
|
<include base="mpr">.</include>
|
||||||
<include base="ReactOS">include/reactos/wine</include>
|
<include base="ReactOS">include/reactos/wine</include>
|
||||||
<define name="__REACTOS__" />
|
|
||||||
<define name="__WINESRC__" />
|
<define name="__WINESRC__" />
|
||||||
<define name="__USE_W32API" />
|
<define name="WINVER">0x600</define>
|
||||||
<define name="_WIN32_IE">0x600</define>
|
<define name="_WIN32_WINNT">0x600</define>
|
||||||
<define name="_WIN32_WINNT">0x501</define>
|
|
||||||
<define name="WINVER">0x501</define>
|
|
||||||
<library>wine</library>
|
<library>wine</library>
|
||||||
<library>user32</library>
|
<library>user32</library>
|
||||||
<library>advapi32</library>
|
<library>advapi32</library>
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
/*
|
/*
|
||||||
* MPR dll resources
|
* MPR Bulgarian resource
|
||||||
*
|
*
|
||||||
* Copyright (C) 2004 Juan Lang
|
* Copyright 2005 Milko Krachounov
|
||||||
*
|
*
|
||||||
* This library is free software; you can redistribute it and/or
|
* This library is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU Lesser General Public
|
* modify it under the terms of the GNU Lesser General Public
|
||||||
|
@ -27,20 +27,20 @@ STRINGTABLE DISCARDABLE
|
||||||
|
|
||||||
IDD_PROXYDLG DIALOG LOADONCALL MOVEABLE DISCARDABLE 36, 24, 250, 154
|
IDD_PROXYDLG DIALOG LOADONCALL MOVEABLE DISCARDABLE 36, 24, 250, 154
|
||||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||||
CAPTION "Âúâåäåòå ïàðîëà çà ìðåæàòà"
|
CAPTION "Âúâåäåòå ìðåæîâà ïàðîëà"
|
||||||
FONT 8, "MS Shell Dlg"
|
FONT 8, "MS Shell Dlg"
|
||||||
{
|
{
|
||||||
LTEXT "Âúâåäåòå ñâîèòå ïîòðåáèòåëñêî èìå è ïàðîëà:", IDC_EXPLAIN, 40, 6, 150, 15
|
LTEXT "Âúâåäåòå âàøåòî ïîòðåáèòåëñêî èìå è ïàðîëà:", IDC_EXPLAIN, 40, 6, 150, 15
|
||||||
LTEXT "Ïðåçñúðâúð", -1, 40, 26, 50, 10
|
LTEXT "Ïðîêñè", -1, 40, 26, 50, 10
|
||||||
/* LTEXT "Ñòðàíà", -1, 40, 46, 50, 10 */
|
/* LTEXT "Realm", -1, 40, 46, 50, 10 */
|
||||||
LTEXT "Ïîòðåáèòåë", -1, 40, 66, 50, 10
|
LTEXT "Ïîòðåáèòåë", -1, 40, 66, 50, 10
|
||||||
LTEXT "Ïàðîëà", -1, 40, 86, 50, 10
|
LTEXT "Ïàðîëà", -1, 40, 86, 50, 10
|
||||||
LTEXT "" IDC_PROXY, 80, 26, 150, 14, 0
|
LTEXT "" IDC_PROXY, 80, 26, 150, 14, 0
|
||||||
LTEXT "" IDC_REALM, 80, 46, 150, 14, 0
|
LTEXT "" IDC_REALM, 80, 46, 150, 14, 0
|
||||||
EDITTEXT IDC_USERNAME, 80, 66, 150, 14, ES_AUTOHSCROLL | WS_BORDER | WS_TABSTOP
|
EDITTEXT IDC_USERNAME, 80, 66, 150, 14, ES_AUTOHSCROLL | WS_BORDER | WS_TABSTOP
|
||||||
EDITTEXT IDC_PASSWORD, 80, 86, 150, 14, ES_AUTOHSCROLL | WS_BORDER | WS_TABSTOP | ES_PASSWORD
|
EDITTEXT IDC_PASSWORD, 80, 86, 150, 14, ES_AUTOHSCROLL | WS_BORDER | WS_TABSTOP | ES_PASSWORD
|
||||||
CHECKBOX "&Ñúõðàíÿâàíå íà ïàðîëàòà (íåáåçîïàñíî)", IDC_SAVEPASSWORD,
|
CHECKBOX "&Save this password (Insecure)", IDC_SAVEPASSWORD,
|
||||||
80, 106, 150, 12, BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP
|
80, 106, 150, 12, BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP
|
||||||
PUSHBUTTON "Äîáðå", IDOK, 98, 126, 56, 14, WS_GROUP | WS_TABSTOP | BS_DEFPUSHBUTTON
|
PUSHBUTTON "OK", IDOK, 98, 126, 56, 14, WS_GROUP | WS_TABSTOP | BS_DEFPUSHBUTTON
|
||||||
PUSHBUTTON "Îòêàç", IDCANCEL, 158, 126, 56, 14, WS_GROUP | WS_TABSTOP
|
PUSHBUTTON "Îòìåíè", IDCANCEL, 158, 126, 56, 14, WS_GROUP | WS_TABSTOP
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
* MPR dll resources
|
* MPR dll resources
|
||||||
*
|
*
|
||||||
* Copyright (C) 2004 Juan Lang
|
* Copyright (C) 2004 Juan Lang
|
||||||
* Copyright 2005 YunSong Hwang
|
* Copyright 2005,2007 YunSong Hwang
|
||||||
*
|
*
|
||||||
* This library is free software; you can redistribute it and/or
|
* This library is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU Lesser General Public
|
* modify it under the terms of the GNU Lesser General Public
|
||||||
|
@ -40,7 +40,7 @@ FONT 8, "MS Shell Dlg"
|
||||||
LTEXT "" IDC_REALM, 80, 46, 150, 14, 0
|
LTEXT "" IDC_REALM, 80, 46, 150, 14, 0
|
||||||
EDITTEXT IDC_USERNAME, 80, 66, 150, 14, ES_AUTOHSCROLL | WS_BORDER | WS_TABSTOP
|
EDITTEXT IDC_USERNAME, 80, 66, 150, 14, ES_AUTOHSCROLL | WS_BORDER | WS_TABSTOP
|
||||||
EDITTEXT IDC_PASSWORD, 80, 86, 150, 14, ES_AUTOHSCROLL | WS_BORDER | WS_TABSTOP | ES_PASSWORD
|
EDITTEXT IDC_PASSWORD, 80, 86, 150, 14, ES_AUTOHSCROLL | WS_BORDER | WS_TABSTOP | ES_PASSWORD
|
||||||
CHECKBOX "암호 저장(&S) (Insecure)", IDC_SAVEPASSWORD,
|
CHECKBOX "암호 저장(&S) (보안에 주의)", IDC_SAVEPASSWORD,
|
||||||
80, 106, 150, 12, BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP
|
80, 106, 150, 12, BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP
|
||||||
PUSHBUTTON "È®ÀÎ", IDOK, 98, 126, 56, 14, WS_GROUP | WS_TABSTOP | BS_DEFPUSHBUTTON
|
PUSHBUTTON "È®ÀÎ", IDOK, 98, 126, 56, 14, WS_GROUP | WS_TABSTOP | BS_DEFPUSHBUTTON
|
||||||
PUSHBUTTON "Ãë¼Ò", IDCANCEL, 158, 126, 56, 14, WS_GROUP | WS_TABSTOP
|
PUSHBUTTON "Ãë¼Ò", IDCANCEL, 158, 126, 56, 14, WS_GROUP | WS_TABSTOP
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||||
*/
|
*/
|
||||||
|
|
||||||
LANGUAGE LANG_NORWEGIAN, SUBLANG_NEUTRAL
|
LANGUAGE LANG_NORWEGIAN, SUBLANG_NORWEGIAN_BOKMAL
|
||||||
|
|
||||||
STRINGTABLE DISCARDABLE
|
STRINGTABLE DISCARDABLE
|
||||||
{
|
{
|
||||||
|
|
|
@ -28,7 +28,7 @@ STRINGTABLE DISCARDABLE
|
||||||
|
|
||||||
IDD_PROXYDLG DIALOG LOADONCALL MOVEABLE DISCARDABLE 36, 24, 250, 154
|
IDD_PROXYDLG DIALOG LOADONCALL MOVEABLE DISCARDABLE 36, 24, 250, 154
|
||||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||||
CAPTION "WprowadŸ has³o do sieci"
|
CAPTION "Wpisz has這 sieci"
|
||||||
FONT 8, "MS Shell Dlg"
|
FONT 8, "MS Shell Dlg"
|
||||||
{
|
{
|
||||||
LTEXT "Proszê wprowadziæ nazwê u¿ytkownika i has³o:", IDC_EXPLAIN, 40, 6, 150, 15
|
LTEXT "Proszê wprowadziæ nazwê u¿ytkownika i has³o:", IDC_EXPLAIN, 40, 6, 150, 15
|
||||||
|
@ -40,7 +40,7 @@ FONT 8, "MS Shell Dlg"
|
||||||
LTEXT "" IDC_REALM, 80, 46, 150, 14, 0
|
LTEXT "" IDC_REALM, 80, 46, 150, 14, 0
|
||||||
EDITTEXT IDC_USERNAME, 80, 66, 150, 14, ES_AUTOHSCROLL | WS_BORDER | WS_TABSTOP
|
EDITTEXT IDC_USERNAME, 80, 66, 150, 14, ES_AUTOHSCROLL | WS_BORDER | WS_TABSTOP
|
||||||
EDITTEXT IDC_PASSWORD, 80, 86, 150, 14, ES_AUTOHSCROLL | WS_BORDER | WS_TABSTOP | ES_PASSWORD
|
EDITTEXT IDC_PASSWORD, 80, 86, 150, 14, ES_AUTOHSCROLL | WS_BORDER | WS_TABSTOP | ES_PASSWORD
|
||||||
CHECKBOX "&Zapamiêtaj to has³o (nie bezpieczne)", IDC_SAVEPASSWORD,
|
CHECKBOX "&Zapisz to has這 (niebezpieczne)", IDC_SAVEPASSWORD,
|
||||||
80, 106, 150, 12, BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP
|
80, 106, 150, 12, BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP
|
||||||
PUSHBUTTON "OK", IDOK, 98, 126, 56, 14, WS_GROUP | WS_TABSTOP | BS_DEFPUSHBUTTON
|
PUSHBUTTON "OK", IDOK, 98, 126, 56, 14, WS_GROUP | WS_TABSTOP | BS_DEFPUSHBUTTON
|
||||||
PUSHBUTTON "Anuluj", IDCANCEL, 158, 126, 56, 14, WS_GROUP | WS_TABSTOP
|
PUSHBUTTON "Anuluj", IDCANCEL, 158, 126, 56, 14, WS_GROUP | WS_TABSTOP
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
/*
|
/*
|
||||||
* MPR dll Swedish resources
|
* MPR dll resources
|
||||||
*
|
*
|
||||||
* Copyright (C) 2005 Andreas Bjerkeholt
|
* Copyright (C) 2007 Daniel Nylander
|
||||||
*
|
*
|
||||||
* This library is free software; you can redistribute it and/or
|
* This library is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU Lesser General Public
|
* modify it under the terms of the GNU Lesser General Public
|
||||||
|
@ -15,10 +15,10 @@
|
||||||
*
|
*
|
||||||
* You should have received a copy of the GNU Lesser General Public
|
* You should have received a copy of the GNU Lesser General Public
|
||||||
* License along with this library; if not, write to the Free Software
|
* License along with this library; if not, write to the Free Software
|
||||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||||
*/
|
*/
|
||||||
|
|
||||||
LANGUAGE LANG_SWEDISH, SUBLANG_NEUTRAL
|
LANGUAGE LANG_SWEDISH, SUBLANG_DEFAULT
|
||||||
|
|
||||||
STRINGTABLE DISCARDABLE
|
STRINGTABLE DISCARDABLE
|
||||||
{
|
{
|
||||||
|
@ -39,7 +39,7 @@ FONT 8, "MS Shell Dlg"
|
||||||
LTEXT "" IDC_REALM, 80, 46, 150, 14, 0
|
LTEXT "" IDC_REALM, 80, 46, 150, 14, 0
|
||||||
EDITTEXT IDC_USERNAME, 80, 66, 150, 14, ES_AUTOHSCROLL | WS_BORDER | WS_TABSTOP
|
EDITTEXT IDC_USERNAME, 80, 66, 150, 14, ES_AUTOHSCROLL | WS_BORDER | WS_TABSTOP
|
||||||
EDITTEXT IDC_PASSWORD, 80, 86, 150, 14, ES_AUTOHSCROLL | WS_BORDER | WS_TABSTOP | ES_PASSWORD
|
EDITTEXT IDC_PASSWORD, 80, 86, 150, 14, ES_AUTOHSCROLL | WS_BORDER | WS_TABSTOP | ES_PASSWORD
|
||||||
CHECKBOX "&Spara detta lösenord (Osäkert)", IDC_SAVEPASSWORD,
|
CHECKBOX "&Spara detta lösenord (osäkert)", IDC_SAVEPASSWORD,
|
||||||
80, 106, 150, 12, BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP
|
80, 106, 150, 12, BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP
|
||||||
PUSHBUTTON "OK", IDOK, 98, 126, 56, 14, WS_GROUP | WS_TABSTOP | BS_DEFPUSHBUTTON
|
PUSHBUTTON "OK", IDOK, 98, 126, 56, 14, WS_GROUP | WS_TABSTOP | BS_DEFPUSHBUTTON
|
||||||
PUSHBUTTON "Avbryt", IDCANCEL, 158, 126, 56, 14, WS_GROUP | WS_TABSTOP
|
PUSHBUTTON "Avbryt", IDCANCEL, 158, 126, 56, 14, WS_GROUP | WS_TABSTOP
|
||||||
|
|
|
@ -2,12 +2,12 @@ Index: mpr.rc
|
||||||
===================================================================
|
===================================================================
|
||||||
--- mpr.rc (revision 23782)
|
--- mpr.rc (revision 23782)
|
||||||
+++ mpr.rc (working copy)
|
+++ mpr.rc (working copy)
|
||||||
@@ -39,4 +39,7 @@
|
@@ -39,5 +39,7 @@
|
||||||
#include "mpr_No.rc"
|
#include "mpr_No.rc"
|
||||||
#include "mpr_Pl.rc"
|
#include "mpr_Pl.rc"
|
||||||
#include "mpr_Pt.rc"
|
#include "mpr_Pt.rc"
|
||||||
+#include "mpr_Ru.rc"
|
+#include "mpr_Ru.rc"
|
||||||
+#include "mpr_Sv.rc"
|
#include "mpr_Sv.rc"
|
||||||
#include "mpr_Tr.rc"
|
#include "mpr_Tr.rc"
|
||||||
+#include "mpr_Uk.rc"
|
+#include "mpr_Uk.rc"
|
||||||
Index: mpr_Ru.rc
|
Index: mpr_Ru.rc
|
||||||
|
@ -61,57 +61,6 @@ Index: mpr_Ru.rc
|
||||||
+ PUSHBUTTON "OK", IDOK, 98, 126, 56, 14, WS_GROUP | WS_TABSTOP | BS_DEFPUSHBUTTON
|
+ PUSHBUTTON "OK", IDOK, 98, 126, 56, 14, WS_GROUP | WS_TABSTOP | BS_DEFPUSHBUTTON
|
||||||
+ PUSHBUTTON "Îòìåíà", IDCANCEL, 158, 126, 56, 14, WS_GROUP | WS_TABSTOP
|
+ PUSHBUTTON "Îòìåíà", IDCANCEL, 158, 126, 56, 14, WS_GROUP | WS_TABSTOP
|
||||||
+}
|
+}
|
||||||
Index: mpr_Sv.rc
|
|
||||||
===================================================================
|
|
||||||
--- mpr_Sv.rc (revision 23782)
|
|
||||||
+++ mpr_Sv.rc (working copy)
|
|
||||||
@@ -0,0 +1,46 @@
|
|
||||||
+/*
|
|
||||||
+ * MPR dll Swedish resources
|
|
||||||
+ *
|
|
||||||
+ * Copyright (C) 2005 Andreas Bjerkeholt
|
|
||||||
+ *
|
|
||||||
+ * This library is free software; you can redistribute it and/or
|
|
||||||
+ * modify it under the terms of the GNU Lesser General Public
|
|
||||||
+ * License as published by the Free Software Foundation; either
|
|
||||||
+ * version 2.1 of the License, or (at your option) any later version.
|
|
||||||
+ *
|
|
||||||
+ * This library is distributed in the hope that it will be useful,
|
|
||||||
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
||||||
+ * Lesser General Public License for more details.
|
|
||||||
+ *
|
|
||||||
+ * You should have received a copy of the GNU Lesser General Public
|
|
||||||
+ * License along with this library; if not, write to the Free Software
|
|
||||||
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
+ */
|
|
||||||
+
|
|
||||||
+LANGUAGE LANG_SWEDISH, SUBLANG_NEUTRAL
|
|
||||||
+
|
|
||||||
+STRINGTABLE DISCARDABLE
|
|
||||||
+{
|
|
||||||
+ IDS_ENTIRENETWORK "Hela nätverket"
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+IDD_PROXYDLG DIALOG LOADONCALL MOVEABLE DISCARDABLE 36, 24, 250, 154
|
|
||||||
+STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
|
||||||
+CAPTION "Ange nätverkslösenord"
|
|
||||||
+FONT 8, "MS Shell Dlg"
|
|
||||||
+{
|
|
||||||
+ LTEXT "Ange ditt användarnamn och lösenord:", IDC_EXPLAIN, 40, 6, 150, 15
|
|
||||||
+ LTEXT "Proxy", -1, 40, 26, 50, 10
|
|
||||||
+/* LTEXT "Realm", -1, 40, 46, 50, 10 */
|
|
||||||
+ LTEXT "Användare", -1, 40, 66, 50, 10
|
|
||||||
+ LTEXT "Lösenord", -1, 40, 86, 50, 10
|
|
||||||
+ LTEXT "" IDC_PROXY, 80, 26, 150, 14, 0
|
|
||||||
+ LTEXT "" IDC_REALM, 80, 46, 150, 14, 0
|
|
||||||
+ EDITTEXT IDC_USERNAME, 80, 66, 150, 14, ES_AUTOHSCROLL | WS_BORDER | WS_TABSTOP
|
|
||||||
+ EDITTEXT IDC_PASSWORD, 80, 86, 150, 14, ES_AUTOHSCROLL | WS_BORDER | WS_TABSTOP | ES_PASSWORD
|
|
||||||
+ CHECKBOX "&Spara detta lösenord (Osäkert)", IDC_SAVEPASSWORD,
|
|
||||||
+ 80, 106, 150, 12, BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP
|
|
||||||
+ PUSHBUTTON "OK", IDOK, 98, 126, 56, 14, WS_GROUP | WS_TABSTOP | BS_DEFPUSHBUTTON
|
|
||||||
+ PUSHBUTTON "Avbryt", IDCANCEL, 158, 126, 56, 14, WS_GROUP | WS_TABSTOP
|
|
||||||
+}
|
|
||||||
Index: mpr_Uk.rc
|
Index: mpr_Uk.rc
|
||||||
===================================================================
|
===================================================================
|
||||||
--- mpr_Uk.rc (revision 23782)
|
--- mpr_Uk.rc (revision 23782)
|
||||||
|
|
|
@ -82,7 +82,7 @@ static INT_PTR WINAPI NPS_ProxyPasswordDialog(
|
||||||
hitem = GetDlgItem( hdlg, IDC_USERNAME );
|
hitem = GetDlgItem( hdlg, IDC_USERNAME );
|
||||||
if( hitem )
|
if( hitem )
|
||||||
GetWindowTextA( hitem, lpAuthDlgStruct->lpUsername, lpAuthDlgStruct->cbUsername );
|
GetWindowTextA( hitem, lpAuthDlgStruct->lpUsername, lpAuthDlgStruct->cbUsername );
|
||||||
|
|
||||||
password[0] = 0;
|
password[0] = 0;
|
||||||
hitem = GetDlgItem( hdlg, IDC_PASSWORD );
|
hitem = GetDlgItem( hdlg, IDC_PASSWORD );
|
||||||
if( hitem )
|
if( hitem )
|
||||||
|
@ -119,7 +119,7 @@ DWORD WINAPI NPSAuthenticationDialogA( LPAUTHDLGSTRUCTA lpAuthDlgStruct )
|
||||||
lpAuthDlgStruct->lpOUTitle, lpAuthDlgStruct->lpExplainText);
|
lpAuthDlgStruct->lpOUTitle, lpAuthDlgStruct->lpExplainText);
|
||||||
|
|
||||||
return DialogBoxParamW( hwininet, MAKEINTRESOURCEW( IDD_PROXYDLG ),
|
return DialogBoxParamW( hwininet, MAKEINTRESOURCEW( IDD_PROXYDLG ),
|
||||||
lpAuthDlgStruct->hwndOwner, NPS_ProxyPasswordDialog,
|
lpAuthDlgStruct->hwndOwner, NPS_ProxyPasswordDialog,
|
||||||
(LPARAM) lpAuthDlgStruct );
|
(LPARAM) lpAuthDlgStruct );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -56,8 +56,9 @@ static LPSTR MPR_GetValueName( LPCSTR pbResource, WORD cbResource, BYTE nType )
|
||||||
DWORD i;
|
DWORD i;
|
||||||
|
|
||||||
name = HeapAlloc( GetProcessHeap(), 0, 6+cbResource*2 );
|
name = HeapAlloc( GetProcessHeap(), 0, 6+cbResource*2 );
|
||||||
if( name )
|
if( !name ) return NULL;
|
||||||
sprintf( name, "X-%02X-", nType );
|
|
||||||
|
sprintf( name, "X-%02X-", nType );
|
||||||
for(i=0; i<cbResource; i++)
|
for(i=0; i<cbResource; i++)
|
||||||
{
|
{
|
||||||
name[5+i*2]=hex((pbResource[i]&0xf0)>>4);
|
name[5+i*2]=hex((pbResource[i]&0xf0)>>4);
|
||||||
|
@ -107,7 +108,7 @@ DWORD WINAPI WNetCachePassword(
|
||||||
valname = MPR_GetValueName( pbResource, cbResource, nType );
|
valname = MPR_GetValueName( pbResource, cbResource, nType );
|
||||||
if( valname )
|
if( valname )
|
||||||
{
|
{
|
||||||
r = RegSetValueExA( hkey, valname, 0, REG_BINARY,
|
r = RegSetValueExA( hkey, valname, 0, REG_BINARY,
|
||||||
(LPBYTE)pbPassword, cbPassword );
|
(LPBYTE)pbPassword, cbPassword );
|
||||||
if( r )
|
if( r )
|
||||||
r = WN_CANCEL;
|
r = WN_CANCEL;
|
||||||
|
@ -221,9 +222,9 @@ DWORD WINAPI WNetGetCachedPassword(
|
||||||
*
|
*
|
||||||
* NOTES
|
* NOTES
|
||||||
* the parameter count is verifyed
|
* the parameter count is verifyed
|
||||||
*
|
*
|
||||||
* This function is a huge security risk, as virii and such can use
|
* This function is a huge security risk, as virii and such can use
|
||||||
* it to grab all the passwords in the cache. It's bad enough to
|
* it to grab all the passwords in the cache. It's bad enough to
|
||||||
* store the passwords (insecurely).
|
* store the passwords (insecurely).
|
||||||
*
|
*
|
||||||
* bpPrefix and cbPrefix are used to filter the returned passwords
|
* bpPrefix and cbPrefix are used to filter the returned passwords
|
||||||
|
@ -306,7 +307,7 @@ UINT WINAPI WNetEnumCachedPasswords(
|
||||||
entry->cbPassword = data_sz;
|
entry->cbPassword = data_sz;
|
||||||
entry->iEntry = i;
|
entry->iEntry = i;
|
||||||
entry->nType = nType;
|
entry->nType = nType;
|
||||||
r = RegEnumValueA( hkey, i, NULL, &val_sz, NULL, &type,
|
r = RegEnumValueA( hkey, i, NULL, &val_sz, NULL, &type,
|
||||||
&entry->abResource[val_sz], &data_sz );
|
&entry->abResource[val_sz], &data_sz );
|
||||||
if( r == ERROR_SUCCESS )
|
if( r == ERROR_SUCCESS )
|
||||||
enumPasswordProc( entry, param );
|
enumPasswordProc( entry, param );
|
||||||
|
|
|
@ -52,6 +52,7 @@ typedef struct _WNetProvider
|
||||||
PF_NPOpenEnum openEnum;
|
PF_NPOpenEnum openEnum;
|
||||||
PF_NPEnumResource enumResource;
|
PF_NPEnumResource enumResource;
|
||||||
PF_NPCloseEnum closeEnum;
|
PF_NPCloseEnum closeEnum;
|
||||||
|
PF_NPGetResourceInformation getResourceInformation;
|
||||||
} WNetProvider, *PWNetProvider;
|
} WNetProvider, *PWNetProvider;
|
||||||
|
|
||||||
typedef struct _WNetProviderTable
|
typedef struct _WNetProviderTable
|
||||||
|
@ -133,7 +134,7 @@ static void _tryLoadProvider(PCWSTR provider)
|
||||||
{
|
{
|
||||||
static const WCHAR szProviderName[] = { 'N','a','m','e',0 };
|
static const WCHAR szProviderName[] = { 'N','a','m','e',0 };
|
||||||
PWSTR name = NULL;
|
PWSTR name = NULL;
|
||||||
|
|
||||||
size = 0;
|
size = 0;
|
||||||
RegQueryValueExW(hKey, szProviderName, NULL, NULL, NULL, &size);
|
RegQueryValueExW(hKey, szProviderName, NULL, NULL, NULL, &size);
|
||||||
if (size)
|
if (size)
|
||||||
|
@ -182,6 +183,10 @@ static void _tryLoadProvider(PCWSTR provider)
|
||||||
provider->closeEnum = (PF_NPCloseEnum)
|
provider->closeEnum = (PF_NPCloseEnum)
|
||||||
GetProcAddress(hLib, "NPCloseEnum");
|
GetProcAddress(hLib, "NPCloseEnum");
|
||||||
TRACE("closeEnum is %p\n", provider->closeEnum);
|
TRACE("closeEnum is %p\n", provider->closeEnum);
|
||||||
|
provider->getResourceInformation = (PF_NPGetResourceInformation)
|
||||||
|
GetProcAddress(hLib, "NPGetResourceInformation");
|
||||||
|
TRACE("getResourceInformation is %p\n",
|
||||||
|
provider->getResourceInformation);
|
||||||
if (!provider->openEnum || !provider->enumResource
|
if (!provider->openEnum || !provider->enumResource
|
||||||
|| !provider->closeEnum)
|
|| !provider->closeEnum)
|
||||||
{
|
{
|
||||||
|
@ -731,7 +736,7 @@ DWORD WINAPI WNetOpenEnumW( DWORD dwScope, DWORD dwType, DWORD dwUsage,
|
||||||
if (index != BAD_PROVIDER_INDEX)
|
if (index != BAD_PROVIDER_INDEX)
|
||||||
{
|
{
|
||||||
if (providerTable->table[index].openEnum &&
|
if (providerTable->table[index].openEnum &&
|
||||||
providerTable->table[index].dwEnumScopes & dwScope)
|
providerTable->table[index].dwEnumScopes & WNNC_ENUM_GLOBAL)
|
||||||
{
|
{
|
||||||
HANDLE handle;
|
HANDLE handle;
|
||||||
|
|
||||||
|
@ -893,7 +898,7 @@ static DWORD _enumerateProvidersW(PWNetEnumerator enumerator, LPDWORD lpcCount,
|
||||||
if (*lpBufferSize < sizeof(NETRESOURCEA))
|
if (*lpBufferSize < sizeof(NETRESOURCEA))
|
||||||
return WN_MORE_DATA;
|
return WN_MORE_DATA;
|
||||||
|
|
||||||
if (!providerTable || enumerator->providerIndex >=
|
if (!providerTable || enumerator->providerIndex >=
|
||||||
providerTable->numProviders)
|
providerTable->numProviders)
|
||||||
ret = WN_NO_MORE_ENTRIES;
|
ret = WN_NO_MORE_ENTRIES;
|
||||||
else
|
else
|
||||||
|
@ -964,6 +969,7 @@ static DWORD _globalEnumeratorAdvance(PWNetEnumerator enumerator)
|
||||||
|
|
||||||
if (enumerator->providerDone)
|
if (enumerator->providerDone)
|
||||||
{
|
{
|
||||||
|
DWORD dwEnum = 0;
|
||||||
enumerator->providerDone = FALSE;
|
enumerator->providerDone = FALSE;
|
||||||
if (enumerator->handle)
|
if (enumerator->handle)
|
||||||
{
|
{
|
||||||
|
@ -972,10 +978,15 @@ static DWORD _globalEnumeratorAdvance(PWNetEnumerator enumerator)
|
||||||
enumerator->handle = NULL;
|
enumerator->handle = NULL;
|
||||||
enumerator->providerIndex++;
|
enumerator->providerIndex++;
|
||||||
}
|
}
|
||||||
|
if (enumerator->dwScope == RESOURCE_CONNECTED)
|
||||||
|
dwEnum = WNNC_ENUM_LOCAL;
|
||||||
|
else if (enumerator->dwScope == RESOURCE_GLOBALNET)
|
||||||
|
dwEnum = WNNC_ENUM_GLOBAL;
|
||||||
|
else if (enumerator->dwScope == RESOURCE_CONTEXT)
|
||||||
|
dwEnum = WNNC_ENUM_CONTEXT;
|
||||||
for (; enumerator->providerIndex < providerTable->numProviders &&
|
for (; enumerator->providerIndex < providerTable->numProviders &&
|
||||||
!(enumerator->dwScope & providerTable->table
|
!(providerTable->table[enumerator->providerIndex].dwEnumScopes
|
||||||
[enumerator->providerIndex].dwEnumScopes);
|
& dwEnum); enumerator->providerIndex++)
|
||||||
enumerator->providerIndex++)
|
|
||||||
;
|
;
|
||||||
}
|
}
|
||||||
return enumerator->providerIndex < providerTable->numProviders ?
|
return enumerator->providerIndex < providerTable->numProviders ?
|
||||||
|
@ -1275,30 +1286,157 @@ DWORD WINAPI WNetCloseEnum( HANDLE hEnum )
|
||||||
|
|
||||||
/*********************************************************************
|
/*********************************************************************
|
||||||
* WNetGetResourceInformationA [MPR.@]
|
* WNetGetResourceInformationA [MPR.@]
|
||||||
|
*
|
||||||
|
* See WNetGetResourceInformationW
|
||||||
*/
|
*/
|
||||||
DWORD WINAPI WNetGetResourceInformationA( LPNETRESOURCEA lpNetResource,
|
DWORD WINAPI WNetGetResourceInformationA( LPNETRESOURCEA lpNetResource,
|
||||||
LPVOID lpBuffer, LPDWORD cbBuffer,
|
LPVOID lpBuffer, LPDWORD cbBuffer,
|
||||||
LPSTR *lplpSystem )
|
LPSTR *lplpSystem )
|
||||||
{
|
{
|
||||||
FIXME( "(%p, %p, %p, %p): stub\n",
|
DWORD ret;
|
||||||
|
|
||||||
|
TRACE( "(%p, %p, %p, %p)\n",
|
||||||
lpNetResource, lpBuffer, cbBuffer, lplpSystem );
|
lpNetResource, lpBuffer, cbBuffer, lplpSystem );
|
||||||
|
|
||||||
SetLastError(WN_NO_NETWORK);
|
if (!providerTable || providerTable->numProviders == 0)
|
||||||
return WN_NO_NETWORK;
|
ret = WN_NO_NETWORK;
|
||||||
|
else if (lpNetResource)
|
||||||
|
{
|
||||||
|
LPNETRESOURCEW lpNetResourceW = NULL;
|
||||||
|
DWORD size = 1024, count = 1;
|
||||||
|
DWORD len;
|
||||||
|
|
||||||
|
lpNetResourceW = HeapAlloc(GetProcessHeap(), 0, size);
|
||||||
|
ret = _thunkNetResourceArrayAToW(lpNetResource, &count, lpNetResourceW, &size);
|
||||||
|
if (ret == WN_MORE_DATA)
|
||||||
|
{
|
||||||
|
lpNetResourceW = HeapAlloc(GetProcessHeap(), 0, size);
|
||||||
|
if (lpNetResourceW)
|
||||||
|
ret = _thunkNetResourceArrayAToW(lpNetResource,
|
||||||
|
&count, lpNetResourceW, &size);
|
||||||
|
else
|
||||||
|
ret = WN_OUT_OF_MEMORY;
|
||||||
|
}
|
||||||
|
if (ret == WN_SUCCESS)
|
||||||
|
{
|
||||||
|
LPWSTR lpSystemW = NULL;
|
||||||
|
LPVOID lpBufferW;
|
||||||
|
size = 1024;
|
||||||
|
lpBufferW = HeapAlloc(GetProcessHeap(), 0, size);
|
||||||
|
if (lpBufferW)
|
||||||
|
{
|
||||||
|
ret = WNetGetResourceInformationW(lpNetResourceW,
|
||||||
|
lpBufferW, &size, &lpSystemW);
|
||||||
|
if (ret == WN_MORE_DATA)
|
||||||
|
{
|
||||||
|
HeapFree(GetProcessHeap(), 0, lpBufferW);
|
||||||
|
lpBufferW = HeapAlloc(GetProcessHeap(), 0, size);
|
||||||
|
if (lpBufferW)
|
||||||
|
ret = WNetGetResourceInformationW(lpNetResourceW,
|
||||||
|
lpBufferW, &size, &lpSystemW);
|
||||||
|
else
|
||||||
|
ret = WN_OUT_OF_MEMORY;
|
||||||
|
}
|
||||||
|
if (ret == WN_SUCCESS)
|
||||||
|
{
|
||||||
|
ret = _thunkNetResourceArrayWToA(lpBufferW,
|
||||||
|
&count, lpBuffer, cbBuffer);
|
||||||
|
lpNetResourceW = lpBufferW;
|
||||||
|
size = sizeof(NETRESOURCEA);
|
||||||
|
size += WideCharToMultiByte(CP_ACP, 0, lpNetResourceW->lpRemoteName,
|
||||||
|
-1, NULL, 0, NULL, NULL);
|
||||||
|
size += WideCharToMultiByte(CP_ACP, 0, lpNetResourceW->lpProvider,
|
||||||
|
-1, NULL, 0, NULL, NULL);
|
||||||
|
|
||||||
|
len = WideCharToMultiByte(CP_ACP, 0, lpSystemW,
|
||||||
|
-1, NULL, 0, NULL, NULL);
|
||||||
|
if ((len) && ( size + len < *cbBuffer))
|
||||||
|
{
|
||||||
|
*lplpSystem = (char*)lpBuffer + *cbBuffer - len;
|
||||||
|
WideCharToMultiByte(CP_ACP, 0, lpSystemW, -1,
|
||||||
|
*lplpSystem, len, NULL, NULL);
|
||||||
|
ret = WN_SUCCESS;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
ret = WN_MORE_DATA;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
ret = WN_OUT_OF_MEMORY;
|
||||||
|
HeapFree(GetProcessHeap(), 0, lpBufferW);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
ret = WN_OUT_OF_MEMORY;
|
||||||
|
HeapFree(GetProcessHeap(), 0, lpSystemW);
|
||||||
|
}
|
||||||
|
HeapFree(GetProcessHeap(), 0, lpNetResourceW);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
ret = WN_NO_NETWORK;
|
||||||
|
|
||||||
|
if (ret)
|
||||||
|
SetLastError(ret);
|
||||||
|
TRACE("Returning %d\n", ret);
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*********************************************************************
|
/*********************************************************************
|
||||||
* WNetGetResourceInformationW [MPR.@]
|
* WNetGetResourceInformationW [MPR.@]
|
||||||
|
*
|
||||||
|
* WNetGetResourceInformationW function identifies the network provider
|
||||||
|
* that owns the resource and gets information about the type of the resource.
|
||||||
|
*
|
||||||
|
* PARAMS:
|
||||||
|
* lpNetResource [ I] the pointer to NETRESOURCEW structure, that
|
||||||
|
* defines a network resource.
|
||||||
|
* lpBuffer [ O] the pointer to buffer, containing result. It
|
||||||
|
* contains NETRESOURCEW structure and strings to
|
||||||
|
* which the members of the NETRESOURCEW structure
|
||||||
|
* point.
|
||||||
|
* cbBuffer [I/O] the pointer to DWORD number - size of buffer
|
||||||
|
* in bytes.
|
||||||
|
* lplpSystem [ O] the pointer to string in the output buffer,
|
||||||
|
* containing the part of the resource name without
|
||||||
|
* names of the server and share.
|
||||||
|
*
|
||||||
|
* RETURNS:
|
||||||
|
* NO_ERROR if the function succeeds. System error code if the function fails.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
DWORD WINAPI WNetGetResourceInformationW( LPNETRESOURCEW lpNetResource,
|
DWORD WINAPI WNetGetResourceInformationW( LPNETRESOURCEW lpNetResource,
|
||||||
LPVOID lpBuffer, LPDWORD cbBuffer,
|
LPVOID lpBuffer, LPDWORD cbBuffer,
|
||||||
LPWSTR *lplpSystem )
|
LPWSTR *lplpSystem )
|
||||||
{
|
{
|
||||||
FIXME( "(%p, %p, %p, %p): stub\n",
|
DWORD ret = WN_NO_NETWORK;
|
||||||
lpNetResource, lpBuffer, cbBuffer, lplpSystem );
|
DWORD index;
|
||||||
|
|
||||||
SetLastError(WN_NO_NETWORK);
|
TRACE( "(%p, %p, %p, %p)\n",
|
||||||
return WN_NO_NETWORK;
|
lpNetResource, lpBuffer, cbBuffer, lplpSystem);
|
||||||
|
|
||||||
|
if (!(lpBuffer))
|
||||||
|
ret = WN_OUT_OF_MEMORY;
|
||||||
|
else
|
||||||
|
{
|
||||||
|
/* FIXME: For function value of a variable is indifferent, it does
|
||||||
|
* search of all providers in a network.
|
||||||
|
*/
|
||||||
|
for (index = 0; index < providerTable->numProviders; index++)
|
||||||
|
{
|
||||||
|
if(providerTable->table[index].getCaps(WNNC_DIALOG) &
|
||||||
|
WNNC_DLG_GETRESOURCEINFORMATION)
|
||||||
|
{
|
||||||
|
if (providerTable->table[index].getResourceInformation)
|
||||||
|
ret = providerTable->table[index].getResourceInformation(
|
||||||
|
lpNetResource, lpBuffer, cbBuffer, lplpSystem);
|
||||||
|
else
|
||||||
|
ret = WN_NO_NETWORK;
|
||||||
|
if (ret == WN_SUCCESS)
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (ret)
|
||||||
|
SetLastError(ret);
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*********************************************************************
|
/*********************************************************************
|
||||||
|
|
Loading…
Reference in a new issue