Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygennpapi.h
Go to the documentation of this file.
00001 /* 00002 * Copyright (C) 2004 Juan Lang 00003 * 00004 * This library is free software; you can redistribute it and/or 00005 * modify it under the terms of the GNU Lesser General Public 00006 * License as published by the Free Software Foundation; either 00007 * version 2.1 of the License, or (at your option) any later version. 00008 * 00009 * This library is distributed in the hope that it will be useful, 00010 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00012 * Lesser General Public License for more details. 00013 * 00014 * You should have received a copy of the GNU Lesser General Public 00015 * License along with this library; if not, write to the Free Software 00016 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 00017 */ 00018 #ifndef __WINE_NPAPI_H__ 00019 #define __WINE_NPAPI_H__ 00020 00021 /* capabilities */ 00022 #define WNNC_SPEC_VERSION 0x00000001 00023 #define WNNC_SPEC_VERSION51 0x00050001 00024 #define WNNC_NET_TYPE 0x00000002 00025 #define WNNC_NET_NONE 0x00000000 00026 00027 #define WNNC_DRIVER_VERSION 0x00000003 00028 00029 #define WNNC_USER 0x00000004 00030 #define WNNC_USR_GETUSER 0x00000001 00031 00032 #define WNNC_CONNECTION 0x00000006 00033 #define WNNC_CON_ADDCONNECTION 0x00000001 00034 #define WNNC_CON_CANCELCONNECTION 0x00000002 00035 #define WNNC_CON_GETCONNECTIONS 0x00000004 00036 #define WNNC_CON_ADDCONNECTION3 0x00000008 00037 00038 #define WNNC_DIALOG 0x00000008 00039 #define WNNC_DLG_DEVICEMODE 0x00000001 00040 #define WNNC_DLG_PROPERTYDIALOG 0x00000020 00041 #define WNNC_DLG_SEARCHDIALOG 0x00000040 00042 #define WNNC_DLG_FORMATNETWORKNAME 0x00000080 00043 #define WNNC_DLG_PERMISSIONEDITOR 0x00000100 00044 #define WNNC_DLG_GETRESOURCEPARENT 0x00000200 00045 #define WNNC_DLG_GETRESOURCEINFORMATION 0x00000800 00046 00047 #define WNNC_ADMIN 0x00000009 00048 #define WNNC_ADM_GETDIRECTORYTYPE 0x00000001 00049 #define WNNC_ADM_DIRECTORYNOTIFY 0x00000002 00050 00051 #define WNNC_ENUMERATION 0x0000000b 00052 #define WNNC_ENUM_GLOBAL 0x00000001 00053 #define WNNC_ENUM_LOCAL 0x00000002 00054 #define WNNC_ENUM_CONTEXT 0x00000004 00055 00056 #define WNNC_START 0x0000000c 00057 #define WNNC_WAIT_FOR_START 0x00000001 00058 00059 typedef DWORD (APIENTRY *PF_NPGetCaps)(DWORD ndex); 00060 00061 /* get user */ 00062 typedef DWORD (APIENTRY *PF_NPGetUser)(LPWSTR lpName, LPWSTR lpUserName, 00063 LPDWORD lpnBufferLen); 00064 00065 /* enumeration-related */ 00066 typedef DWORD (APIENTRY *PF_NPOpenEnum)(DWORD dwScope, DWORD dwType, DWORD dwUsage, 00067 LPNETRESOURCEW lpNetResource, LPHANDLE lphEnum); 00068 typedef DWORD (APIENTRY *PF_NPEnumResource)(HANDLE hEnum, LPDWORD lpcCount, 00069 LPVOID lpBuffer, LPDWORD lpBufferSize); 00070 typedef DWORD (APIENTRY *PF_NPCloseEnum)(HANDLE hEnum); 00071 typedef DWORD (APIENTRY *PF_NPGetResourceInformation)(LPNETRESOURCEW lpNetResource, 00072 LPVOID lpBuffer, LPDWORD lpcbBuffer, LPWSTR* lplpSystem); 00073 00074 /* connection-related */ 00075 typedef DWORD (APIENTRY *PF_NPAddConnection)(LPNETRESOURCEW lpNetResource, 00076 LPWSTR lpPassword, LPWSTR lpUserName); 00077 typedef DWORD (APIENTRY *PF_NPAddConnection3)(HWND hwndOwner, 00078 LPNETRESOURCEW lpNetResource, LPWSTR lpPassword, LPWSTR lpUserName, 00079 DWORD dwFlags); 00080 typedef DWORD (APIENTRY *PF_NPCancelConnection)(LPWSTR lpName, BOOL fForce); 00081 typedef DWORD (APIENTRY *PF_NPGetConnection)(LPWSTR lpLocalName, 00082 LPWSTR lpRemoteName, LPDWORD lpnBufferLen); 00083 00084 /* network name manipulation */ 00085 typedef DWORD (APIENTRY *PF_NPGetUniversalName)(LPWSTR lpLocalPath, 00086 DWORD dwInfoLevel, LPVOID lpBuffer, LPDWORD lpnBufferSize); 00087 typedef DWORD (APIENTRY *PF_NPFormatNetworkName)(LPWSTR lpRemoteName, 00088 LPWSTR lpFormattedName, LPDWORD lpnLength, DWORD dwFlags, 00089 DWORD dwAveCharPerLine); 00090 00091 /* dialogs */ 00092 typedef DWORD (APIENTRY *PF_NPDeviceMode)(HWND hParent); 00093 00094 /* search dialog */ 00095 #define WNSRCH_REFRESH_FIRST_LEVEL 0x00000001 00096 00097 typedef DWORD (APIENTRY *PF_NPSearchDialog)(HWND hwndParent, 00098 LPNETRESOURCEW lpNetResource, LPVOID lpBuffer, DWORD cbBuffer, 00099 LPDWORD lpnFlags); 00100 00101 /* property dialog */ 00102 00103 #define WNTYPE_DRIVE 1 00104 #define WNTYPE_FILE 2 00105 #define WNTYPE_PRINTER 3 00106 #define WNTYPE_COMM 4 00107 00108 #define WNPS_FILE 0 00109 #define WNPS_DIR 1 00110 #define WNPS_MULT 2 00111 00112 typedef DWORD (APIENTRY *PF_NPGetPropertyText)(DWORD iButton, DWORD nPropSel, 00113 LPWSTR lpName, LPWSTR lpButtonName, DWORD nButtonNameLen, DWORD nType); 00114 00115 typedef DWORD (APIENTRY *PF_NPPropertyDialog)(HWND hwndParent, DWORD iButtonDlg, 00116 DWORD nPropSel, LPWSTR lpFileName, DWORD nType); 00117 00118 /* admin */ 00119 #define WNDT_NORMAL 0 00120 #define WNDT_NETWORK 1 00121 00122 #define WNDN_MKDIR 1 00123 #define WNDN_RMDIR 2 00124 #define WNDN_MVDIR 3 00125 00126 typedef DWORD (APIENTRY *PF_NPGetDirectoryType)(LPWSTR lpName, LPINT lpType, 00127 BOOL bFlushCache); 00128 typedef DWORD (APIENTRY *PF_NPDirectoryNotify)(HWND hwnd, LPWSTR lpDir, 00129 DWORD dwOper); 00130 00131 /* permission editor dialogs */ 00132 #define WNPERMC_PERM 0x00000001 00133 #define WNPERMC_AUDIT 0x00000002 00134 #define WNPERMC_OWNER 0x00000004 00135 00136 typedef DWORD (APIENTRY *PF_NPFMXGetPermCaps)(LPWSTR lpDriveName); 00137 00138 #define WNPERM_DLG_PERM 0 00139 #define WNPERM_DLG_AUDIT 1 00140 #define WNPERM_DLG_OWNER 2 00141 00142 typedef DWORD (APIENTRY *PF_NPFMXEditPerm)(LPWSTR lpDriveName, HWND hwndFMX, 00143 DWORD nDialogType); 00144 00145 typedef DWORD (APIENTRY *PF_NPFMXGetPermHelp)(LPWSTR lpDriveName, 00146 DWORD nDialogType, BOOL fDirectory, LPVOID lpFileNameBuffer, 00147 LPDWORD lpBufferSize, LPDWORD lpnHelpContext); 00148 00149 VOID WINAPI WNetSetLastErrorA(DWORD err, LPSTR lpError, LPSTR lpProviders); 00150 VOID WINAPI WNetSetLastErrorW(DWORD err, LPWSTR lpError, LPWSTR lpProviders); 00151 #define WNetSetLastError WINELIB_NAME_AW(WNetSetLastError) 00152 00153 /* provider classes */ 00154 #define WN_NETWORK_CLASS 0x00000001 00155 #define WN_CREDENTIAL_CLASS 0x00000002 00156 #define WN_PRIMARY_AUTHENT_CLASS 0x00000004 00157 #define WN_SERVICE_CLASS 0x00000008 00158 00159 #define WN_VALID_LOGON_ACCOUNT 0x00000001 00160 #define WN_NT_PASSWORD_CHANGED 0x00000002 00161 00162 /* notifications */ 00163 typedef DWORD (APIENTRY *PF_NPLogonNotify)(PLUID lpLogonId, 00164 LPCWSTR lpAuthentInfoType, LPVOID lpAuthentInfo, 00165 LPCWSTR lpPreviousAuthentInfoType, LPVOID lpPreviousAuthentInfo, 00166 LPWSTR lpStationName, LPVOID StationHandle, LPWSTR *lpLogonScript); 00167 typedef DWORD (APIENTRY *PF_NPPasswordChangeNotify)(LPCWSTR lpAuthentInfoType, 00168 LPVOID lpAuthentInfo, LPCWSTR lpPreviousAuthentInfoType, 00169 LPVOID lpPreviousAuthentInfo, LPWSTR lpStationName, LPVOID StationHandle, 00170 DWORD dwChangeInfo); 00171 00172 #define NOTIFY_PRE 0x00000001 00173 #define NOTIFY_POST 0x00000002 00174 00175 typedef struct _NOTIFYINFO 00176 { 00177 DWORD dwNotifyStatus; 00178 DWORD dwOperationStatus; 00179 LPVOID lpContext; 00180 } NOTIFYINFO, *LPNOTIFYINFO; 00181 00182 /* FIXME: NetResource is declared as a NETRESOURCE in psdk, not a NETRESOURCEW, 00183 * but how can the type change in a service provider? Defaulting to wide-char 00184 * for consistency with the rest of the api. 00185 */ 00186 typedef struct _NOTIFYADD 00187 { 00188 HWND hwndOwner; 00189 NETRESOURCEW NetResource; 00190 DWORD dwAddFlags; 00191 } NOTIFYADD, *LPNOTIFYADD; 00192 00193 /* FIXME: lpName and lpProvider are declared as LPTSTRs in psdk, but again 00194 * for consistency with rest of api defaulting to LPWSTRs. 00195 */ 00196 typedef struct _NOTIFYCANCEL 00197 { 00198 LPWSTR lpName; 00199 LPWSTR lpProvider; 00200 DWORD dwFlags; 00201 BOOL fForce; 00202 } NOTIFYCANCEL, *LPNOTIFYCANCEL; 00203 00204 typedef DWORD (APIENTRY *PF_AddConnectNotify)(LPNOTIFYINFO lpNotifyInfo, 00205 LPNOTIFYADD lpAddInfo); 00206 typedef DWORD (APIENTRY *PF_CancelConnectNotify)(LPNOTIFYINFO lpNotifyInfo, 00207 LPNOTIFYADD lpAddInfo); 00208 00209 #endif /* ndef __WINE_NPAPI_H__ */ Generated on Mon May 28 2012 04:31:50 for ReactOS by
1.7.6.1
|