/*++ Copyright (c) 1993 Microsoft Corporation Module Name: otnboot.H Abstract: Constant definitions for the Net Client Disk Utility. Author: Bob Watson (a-robw) Revision History: 17 Feb 94 Written --*/ #ifndef _otnboot_H_ #define _otnboot_H_ #include #include #ifndef DS_3DLOOK #define DS_3DLOOK 0x0004L #endif #ifdef JAPAN #define NCDU_DOSV_CHECK 1000 #endif //Note: above NCDU_DOSV_CHECK should be added to file otnbtdlg.h, but that file cannot // be checked in to the SLM, so moved here. // // // Application specific windows messages // #define NCDU_SHOW_SW_CONFIG_DLG (WM_USER+11) #define NCDU_SHOW_TARGET_WS_DLG (WM_USER+12) #define NCDU_SHOW_SERVER_CFG_DLG (WM_USER+13) #define NCDU_SHOW_CONFIRM_DLG (WM_USER+14) #define NCDU_SHOW_CREATE_DISKS_DLG (WM_USER+15) #define NCDU_SHOW_SHARE_NET_SW_DLG (WM_USER+16) #define NCDU_SHOW_COPYING_DLG (WM_USER+17) #define NCDU_SHOW_EXIT_MESSAGE_DLG (WM_USER+18) #define NCDU_SHOW_COPY_ADMIN_UTILS (WM_USER+19) #define NCDU_CLEAR_DLG (WM_USER+20) #define NCDU_REGISTER_DLG (WM_USER+21) #define NCDU_UPDATE_WINDOW_POS (WM_USER+22) // // resource constant definitions // //#define NCDU_APP_ICON 0x7000 #define NCDU_ID_ABOUT 0xFF10 #define STRING_BASE 0x8000 #ifdef TERMSRV #define WFC_STRING_BASE 0x9000 #endif // TERMSRV #define NCDU_CANCEL_CAPTION (STRING_BASE + 1) #define NCDU_CANCEL_PROMPT (STRING_BASE + 2) #define NCDU_MAKING_FLOPPIES (STRING_BASE + 3) #define NCDU_LANMAN_MESSAGE (STRING_BASE + 4) #define NCDU_COPYING_TO_SHARE (STRING_BASE + 5) #define NCDU_INSERT_BOOTDISK_A (STRING_BASE + 6) #define NCDU_INSERT_BOOTDISK_B (STRING_BASE + 7) #define NCDU_SHARE_PATH_NOW (STRING_BASE + 8) #define NCDU_EXIT_SHARE_PATH (STRING_BASE + 9) #define NCDU_UNABLE_READ_DIR (STRING_BASE +10) #define NCDU_PATH_NOT_DIR (STRING_BASE +11) #define NCDU_PATH_CANNOT_BE_BLANK (STRING_BASE + 12) #define NCDU_SHARING_DIR (STRING_BASE +13) #define NCDU_NOT_REAL (STRING_BASE +14) #define NCDU_NOT_DIST_TREE (STRING_BASE +15) #define NCDU_NO_SHARE_NAME (STRING_BASE +16) #define NCDU_UNKNOWN_FLOPPY (STRING_BASE +17) #define NCDU_UNABLE_CONNECT_REG (STRING_BASE +18) #define NCDU_INVALID_MACHINENAME (STRING_BASE +19) #define NCDU_COPY_TO_FLOPPY (STRING_BASE +20) #define NCDU_DEST_NOT_FLOPPY (STRING_BASE +21) #define NCDU_INSUFFICIENT_DISK_SPACE (STRING_BASE +22) #define NCDU_DRIVE_NOT_BOOTDISK (STRING_BASE +23) #define NCDU_UNABLE_SHARE_UNC (STRING_BASE +24) #define NCDU_UNABLE_COPY_CLIENTS (STRING_BASE+25) #define NCDU_RU_SURE (STRING_BASE + 26) #define NCDU_BAD_SUBNET_MASK (STRING_BASE + 27) #define NCDU_BAD_IP_ADDR (STRING_BASE + 28) #define NCDU_FLOPPY_NOT_COMPLETE (STRING_BASE+ 29) #define NCDU_CHECK_PROTOCOL_INI (STRING_BASE + 30) #define NCDU_NO_CLIENTS_SELECTED (STRING_BASE + 31) #define NCDU_UNABLE_SHARE_DIR (STRING_BASE + 32) #define NCDU_BAD_DEFAULT_GATEWAY (STRING_BASE + 33) #define NCDU_COPY_NET_ADMIN (STRING_BASE + 34) #define NCDU_ERROR_NOMEMORY (STRING_BASE + 35) #define NCDU_USERNAME_ACCESS (STRING_BASE + 36) #define NCDU_UNSUP_PROTOCOL (STRING_BASE + 37) #define NCDU_NO_MEDIA (STRING_BASE + 38) #define NCDU_CONFIRM_FLOPPY (STRING_BASE + 39) #define NCDU_COPY_COMPLETE (STRING_BASE + 40) #define NCDU_FLOPPY_COMPLETE (STRING_BASE + 41) #define NCDU_NETUTILS_SHARED (STRING_BASE + 42) #define NCDU_NETBEUI_NOT_ROUT (STRING_BASE + 43) #define NCDU_CANNOT_SHARE_REMDIR (STRING_BASE + 46) #define NCDU_SHARE_IS_NOT_USED (STRING_BASE + 47) #define NCDU_SHARE_IS_CLIENT_TREE (STRING_BASE + 48) #define NCDU_SHARE_IS_SERVER_TOOLS (STRING_BASE + 49) #define NCDU_SHARE_IS_OTHER_DIR (STRING_BASE + 50) #define NCDU_SERVER_NOT_PRESENT (STRING_BASE + 51) #define NCDU_NO_SERVER (STRING_BASE + 52) #define NCDU_NOT_DOS_SHARE (STRING_BASE + 53) #define NCDU_NOT_TOOL_TREE (STRING_BASE + 54) #define NCDU_BROWSE_TOOL_DIST_PATH (STRING_BASE + 55) #define NCDU_BROWSE_CLIENT_DIST_PATH (STRING_BASE + 56) #define NCDU_BROWSE_COPY_DEST_PATH (STRING_BASE + 57) #define NCDU_FINDING_TOOLS_PATH (STRING_BASE + 58) #define NCDU_MAKE_COMP_NAME (STRING_BASE + 59) #define NCDU_DISK_NOT_DONE (STRING_BASE + 60) #define NCDU_DRIVE_NOT_AVAILABLE (STRING_BASE + 61) #define NCDU_UNABLE_GET_PATH_INFO (STRING_BASE + 62) #define NCDU_INSUF_MEM_AT_BOOT (STRING_BASE + 63) #define NCDU_NW_LINK_TRANSPORT (STRING_BASE + 66) #define NCDU_TCP_IP_TRANSPORT (STRING_BASE + 67) #define NCDU_NETBEUI_TRANSPORT (STRING_BASE + 68) #define NCDU_SYSTEM_MAY_NOT_FIT (STRING_BASE + 69) #define NCDU_SMALL_DISK_WARN (STRING_BASE + 70) #define NCDU_CLEAN_DISK_REQUIRED (STRING_BASE + 71) #define FORMAT_BASE 0x9000 #define SZ_APP_TITLE (FORMAT_BASE + 1) #define FMT_CREATE_SHARE_ERROR (FORMAT_BASE + 2) #define CSZ_ABOUT_ENTRY (FORMAT_BASE + 3) #define FMT_LOAD_NET_CLIENT (FORMAT_BASE + 4) #define FMT_CONFIRM_TARGET (FORMAT_BASE + 5) #define FMT_INSTALL_TARGET_CLIENT (FORMAT_BASE + 6) #define FMT_LOGON_USERNAME (FORMAT_BASE + 7) #define FMT_PROMPT_USERNAME (FORMAT_BASE + 8) #define FMT_CONFIRM_FLOPPY_IP (FORMAT_BASE + 9) #define FMT_USING_DHCP (FORMAT_BASE + 10) #define FMT_WORKING (FORMAT_BASE + 11) #define FMT_PERCENT_COMPLETE (FORMAT_BASE + 12) #define FMT_ZERO_PERCENT_COMPLETE (FORMAT_BASE + 13) #define FMT_PREPARE_TO_COPY (FORMAT_BASE + 14) #define FMT_CLIENT_DISK_AND_DRIVE (FORMAT_BASE + 16) #define FMT_CLIENT_DISPLAY_NAME (FORMAT_BASE + 17) #define FMT_COPY_COMPLETE_STATS (FORMAT_BASE + 18) #define FMT_INSERT_FLOPPY (FORMAT_BASE + 19) #define FMT_1_DISK_REQUIRED (FORMAT_BASE + 20) #define FMT_N_DISKS_REQUIRED (FORMAT_BASE + 21) #define FMT_INTERNAL_BUFFER (FORMAT_BASE + 22) #define FMT_CONNECTING_COMMENT (FORMAT_BASE + 23) #define FMT_RUNNING_SETUP_COMMENT (FORMAT_BASE + 24) #define FMT_OTN_COMMENT (FORMAT_BASE + 25) #define FMT_OTN_BOOT_FILES (FORMAT_BASE + 26) #define FMT_K_BYTES (FORMAT_BASE + 27) #define FMT_M_BYTES (FORMAT_BASE + 28) #define FMT_CLIENT_INFO_DISPLAY (FORMAT_BASE + 29) #define FMT_NONE (FORMAT_BASE + 30) #define FMT_SHARE_REMARK (FORMAT_BASE + 31) #define FMT_SHARE_TOOLS_REMARK (FORMAT_BASE + 32) #define FMT_SHARE_IS_CLIENT_TREE (FORMAT_BASE + 33) #define FMT_SHARE_IS_ALREADY_USED (FORMAT_BASE + 34) #define CSZ_SETUP_ADM (FORMAT_BASE + 35) #define FMT_SHARE_IS_TOOLS_DIR (FORMAT_BASE + 36) #define CSZ_SYSTEM_REGISTRY (FORMAT_BASE + 37) #define CSZ_SHARED_DIRS (FORMAT_BASE + 38) #define CSZ_HARD_DISK_DIRS (FORMAT_BASE + 39) #define CSZ_CD_ROM (FORMAT_BASE + 40) #define CSZ_LOCAL_MACHINE (FORMAT_BASE + 41) #define CSZ_DOMAIN_ADMINS (FORMAT_BASE + 43) #define CSZ_WINDOWS_FOR_WORKGROUPS (FORMAT_BASE + 44) #define CSZ_LAN_MANAGER (FORMAT_BASE + 45) #define CSZ_MS_NETWORK_CLIENT (FORMAT_BASE + 46) #define CSZ_BROWSE_DIST_PATH_TITLE (FORMAT_BASE + 47) #define CSZ_BROWSE_DEST_PATH_TITLE (FORMAT_BASE + 48) #define CSZ_BROWSE_COPY_DEST_PATH_TITLE (FORMAT_BASE + 49) #define CSZ_NW_LINK_PROTOCOL (FORMAT_BASE + 50) #define CSZ_TCP_IP_PROTOCOL (FORMAT_BASE + 51) #define CSZ_NETBEUI_PROTOCOL (FORMAT_BASE + 52) #define CSZ_COPYING_NET_UTILS (FORMAT_BASE + 53) #define CSZ_UNABLE_COPY (FORMAT_BASE + 54) #define CSZ_COPY_ERROR (FORMAT_BASE + 55) #define CSZ_ABOUT_TITLE (FORMAT_BASE + 56) #define CSZ_35_HD (FORMAT_BASE + 57) #define CSZ_525_HD (FORMAT_BASE + 58) #define CSZ_DEFAULT_CLIENT_SHARE (FORMAT_BASE + 59) #define CSZ_WINDOWS_95 (FORMAT_BASE + 60) #define CSZ_WINDOWS_NT (FORMAT_BASE + 61) #ifdef JAPAN #define FMT_LOAD_NET_CLIENT1 (FORMAT_BASE + 62) #define FMT_LOAD_NET_CLIENT2 (FORMAT_BASE + 63) #define FMT_LOAD_NET_CLIENT2_TITLE (FORMAT_BASE + 64) #define FMT_LOAD_AUTOEXEC_ECHO (FORMAT_BASE + 65) #define FMT_OTN_BOOT_FILES_DOSV (FORMAT_BASE + 66) #endif #ifdef TERMSRV #define FMT_COPY_COMPLETE_STATS1 (FORMAT_BASE + 67) #define FMT_COPY_COMPLETE_STATS2 (FORMAT_BASE + 68) #endif // TERMSRV #define DISK_FORMAT_BASE 0xA000 #define IDS_APP_NAME (DISK_FORMAT_BASE + 1) #define IDS_FMIFSLOADERR (DISK_FORMAT_BASE + 2) #define IDS_DISKCOPYCONFIRM (DISK_FORMAT_BASE + 3) #define IDS_DISKCOPYCONFIRMTITLE (DISK_FORMAT_BASE + 4) #define IDS_FFERR (DISK_FORMAT_BASE + 5) #define IDS_FORMATTINGDEST (DISK_FORMAT_BASE + 6) #define IDS_COPYINGDISKTITLE (DISK_FORMAT_BASE + 7) #define IDS_QUICKFORMATTINGTITLE (DISK_FORMAT_BASE + 8) #define IDS_PERCENTCOMPLETE (DISK_FORMAT_BASE + 9) #define IDS_COPYDISK (DISK_FORMAT_BASE + 10) #define IDS_INSERTDEST (DISK_FORMAT_BASE + 11) #define IDS_INSERTSRC (DISK_FORMAT_BASE + 12) #define IDS_INSERTSRCDEST (DISK_FORMAT_BASE + 13) #define IDS_FFERR_INCFS (DISK_FORMAT_BASE + 14) #define IDS_FFERR_ACCESSDENIED (DISK_FORMAT_BASE + 15) #define IDS_FFERR_DISKWP (DISK_FORMAT_BASE + 16) #define IDS_FFERR_CANTLOCK (DISK_FORMAT_BASE + 17) #define IDS_FFERR_CANTQUICKF (DISK_FORMAT_BASE + 18) #define IDS_FFERR_SRCIOERR (DISK_FORMAT_BASE + 19) #define IDS_FFERR_DSTIOERR (DISK_FORMAT_BASE + 20) #define IDS_FFERR_SRCDSTIOERR (DISK_FORMAT_BASE + 21) #define IDS_FFERR_GENIOERR (DISK_FORMAT_BASE + 22) #define IDS_FFERR_MEDIASENSE (DISK_FORMAT_BASE + 23) #define IDS_FFERR_BADLABEL (DISK_FORMAT_BASE + 25) #define IDS_COPYSRCDESTINCOMPAT (DISK_FORMAT_BASE + 26) #define IDS_FORMATERR (DISK_FORMAT_BASE + 27) #define IDS_FORMATQUICKFAILURE (DISK_FORMAT_BASE + 28) //#define IDS_FORMATERRMSG (DISK_FORMAT_BASE + 29) //#define IDS_FORMATCURERR (DISK_FORMAT_BASE + 30) #define IDS_FORMATCOMPLETE (DISK_FORMAT_BASE + 31) #define IDS_FORMATANOTHER (DISK_FORMAT_BASE + 32) #define IDS_CORRECT_FMT_ERROR (DISK_FORMAT_BASE + 33) #define IDS_COPYERROR (DISK_FORMAT_BASE + 100) #define FUNC_COPY 1 #define FUNC_MOVE 2 #define FUNC_DELETE 3 #define FUNC_RENAME 4 #define FUNC_SETDRIVE 5 #define FUNC_EXPAND 6 #define FUNC_LABEL 7 // // Application constant definitions // #define NCDU_CANCEL_STYLE (MB_ICONQUESTION | MB_YESNOCANCEL | MB_TASKMODAL) #define MAX_PATH_BYTES (MAX_PATH * sizeof(TCHAR)) #define SMALL_BUFFER_SIZE 4096 #define MEDIUM_BUFFER_SIZE (SMALL_BUFFER_SIZE * 4) #define MAX_EXITMSG 32 #define MAX_SHARENAME 16 #define NETCARD_KEY_SIZE 64 #define MAXMESSAGELEN 80 #define MAXTITLELEN 32 #define MAXLABELLEN 11 // // Common Message Box Button configurations // #define MB_OK_TASK_EXCL (MB_OK | MB_ICONEXCLAMATION | MB_TASKMODAL) #define MB_OK_TASK_INFO (MB_OK | MB_ICONINFORMATION | MB_TASKMODAL) #define MB_OKCANCEL_TASK_EXCL (MB_OKCANCEL | MB_ICONEXCLAMATION | MB_TASKMODAL) #define MB_OKCANCEL_TASK_INFO (MB_OKCANCEL | MB_ICONINFORMATION | MB_TASKMODAL) #define MB_OKCANCEL_TASK_EXCL_DEF2 (MB_OKCANCEL | MB_ICONEXCLAMATION | MB_TASKMODAL | MB_DEFBUTTON2) // button state definitions #define CHECKED 1 #define UNCHECKED 0 // Load Client List Type values #define CLT_ALL_BUT_HIDDEN 0 #define CLT_OTNBOOT_FLOPPY 1 #define CLT_FLOPPY_INSTALL 2 #define NCDU_HELP_HOT_KEY 0x0BEE // whotkey id for f1 help // Copy Dir dwFlags values: #define CD_FLAGS_COPY_SUB_DIR 0x00000001 // copies all sub dir's as well #define CD_FLAGS_DONT_CREATE 0x00000002 // default is to create dirs as needed #define CD_FLAGS_IGNORE_ATTR 0x00000004 // ignore attributes #define CD_FLAGS_COPY_ATTR 0x00000008 // copy attributes as well (default // is for dest fils to be normal) #define CD_FLAGS_IGNORE_ERROR 0x00000010 // continue with copy even if errors occur #define CD_FLAGS_LONG_NAMES 0x00000040 // allows names longer than 8.3 // // Main Window Extra Bytes // #define MAINWND_EXTRA_BYTES 0 // // Macro definitions // #define FREE_IF_ALLOC(x) if (x != NULL) GlobalFree(x) #define BOOL_TO_STATUS(x) (x ? ERROR_SUCCESS : GetLastError()) #ifndef CLEAR_FIRST_FOUR_BYTES #define CLEAR_FIRST_FOUR_BYTES(x) *(DWORD *)(x) = 0L #endif // // Data structure Definitions // typedef enum _INSTALL_TYPE { FloppyDiskInstall = 0, OverTheNetInstall, CopyNetAdminUtils, ShowRemoteBootInfo} INSTALL_TYPE; typedef enum _SOURCE_TYPE { SourceUndef = 0, ServerShare, DirectoryPath} SOURCE_TYPE; typedef enum _SHARE_TYPE { ShareExisting = 0, CopyAndShare} SHARE_TYPE; typedef struct _NETCARD_INFO { TCHAR szInf[MAX_PATH+1]; // inf file name TCHAR szName[MAX_PATH+1]; // description TCHAR szDriverFile[MAX_PATH+1]; // device driver FileName TCHAR szInfKey[NETCARD_KEY_SIZE]; // Netcard Key Name TCHAR szDeviceKey[NETCARD_KEY_SIZE]; // netcard device key TCHAR szNifKey[NETCARD_KEY_SIZE]; // Netcard Info Key BOOL bTokenRing; // TRUE = Token Ring Netcard } NETCARD_INFO, *PNETCARD_INFO; typedef struct _PROTOCOL_INFO { TCHAR szName[MAX_PATH+1]; TCHAR szKey[MAX_PATH+1]; TCHAR szDir[MAX_PATH+1]; } PROTOCOL_INFO, *PPROTOCOL_INFO; typedef struct _TCPIP_INFO { USHORT IpAddr[4]; USHORT SubNetMask[4]; USHORT DefaultGateway[4]; } TCPIP_INFO, *PTCPIP_INFO; typedef enum _MACHINE_TYPE { UnknownSoftwareType = 0, AdvancedServer, NtWorkstation} MACHINE_TYPE; typedef struct _NCDU_DATA { MACHINE_TYPE mtLocalMachine; HKEY hkeyMachine; INSTALL_TYPE itInstall; BOOL bUseExistingPath; SHARE_TYPE shShareType; TCHAR szDistShowPath[MAX_PATH+1]; TCHAR szDistPath[MAX_PATH+1]; TCHAR szDestPath[MAX_PATH+1]; SOURCE_TYPE stDistPathType; MEDIA_TYPE mtBootDriveType; BOOL bRemoteBootReqd; NETCARD_INFO niNetCard; TCHAR szBootFilesPath[MAX_PATH+1]; PROTOCOL_INFO piFloppyProtocol; PROTOCOL_INFO piTargetProtocol; TCHAR szTargetSetupCmd[MAX_PATH+1]; TCHAR szComputerName[MAX_COMPUTERNAME_LENGTH+1]; TCHAR szUsername[MAX_USERNAME+1]; TCHAR szDomain[MAX_DOMAINNAME+1]; BOOL bUseDhcp; TCPIP_INFO tiTcpIpInfo; TCHAR szFloppyClientName[MAX_PATH+1]; UINT uExitMessages[MAX_EXITMSG]; } NCDU_DATA, *PNCDU_DATA; typedef struct _COPY_FILE_DLG_STRUCT { LPTSTR szDisplayName; LPTSTR szSourceDir; LPTSTR szDestDir; DWORD dwCopyFlags; DWORD dwTotalSize; DWORD dwFilesCopied; DWORD dwDirsCreated; } CF_DLG_DATA, *PCF_DLG_DATA; typedef struct _DIR_BROWSER_STRUCT { DWORD dwTitle; // dialog box title Resource ID: 0="Directory Browser" LPTSTR szPath; // initial path in and resulting path out DWORD Flags; // see below } DB_DATA, *PDB_DATA; #define PDB_FLAGS_NOCHECKDIR 0x00000001 // allow non-existent paths typedef struct _SHARE_PATH_DLG_STRUCT { LPWSTR szServer; LPWSTR szPath; LPWSTR szShareName; LPWSTR szRemark; } SPS_DATA, *PSPS_DATA; typedef struct _FIND_DIST_TREE_STRUCT { LPTSTR szPathBuffer; // buffer to load found path in DWORD dwPathBufferLen; // size of path buffer (above) PLONG plPathType; // pointer to buffer recieving path type DWORD dwSearchType; // search type (see flags below) } FDT_DATA, *PFDT_DATA; #pragma pack(1) typedef struct _DOS_BOOT_SECTOR { BYTE bsJump[3]; CHAR bsOemName[8]; WORD bsBytesPerSec; BYTE bsSecPerClust; WORD bsResSectors; BYTE bsFats; WORD bsRootDirEnts; WORD bsSectors; BYTE bsMedia; WORD bsFatSecs; WORD bsSecsPerTrack; WORD bsHeads; DWORD bsHiddenSecs; DWORD bsHugeSectors; BYTE bsDriveNumber; BYTE bsReserved1; BYTE bsBootSignature; DWORD bsVolumeId; CHAR bsVolumeLabel[11]; CHAR bsFileSysType[8]; BYTE bsBootSectorBytes[1]; } DOS_BOOT_SECTOR, *PDOS_BOOT_SECTOR; #pragma pack() // #define FDT_CLIENT_TREE (0x00000001) #define FDT_TOOLS_TREE (0x00000002) // // Directory Browser Flags // #define DBS_VALIDATE_PATH 0x00000001 // only allow valid paths #define DBS_CLIENT_PATH 0x00000003 // only allow valid dist. paths // global variables // these are allocated and initialized in otnboot.c // extern PNCDU_DATA pAppInfo; #ifdef JAPAN extern USHORT usLangID; // fixed kkntbug #12382 // NCAdmin:"[] Make Japanese startup disks" is not functioning. extern BOOL bJpnDisk; #endif // // external function definitions // // // *** UTILS.C *** // BOOL GetShareFromUnc ( IN LPCTSTR szPath, OUT LPTSTR szShare ); BOOL GetNetPathInfo ( IN LPCTSTR szPath, OUT LPTSTR szServer, OUT LPTSTR szRemotePath ); BOOL ComputerPresent ( IN LPCTSTR szMachine ); BOOL GetServerFromUnc ( IN LPCTSTR szPath, OUT LPTSTR szServer ); BOOL MatchFirst ( IN LPCTSTR szStringA, IN LPCTSTR szStringB ); BOOL LookupLocalShare ( IN LPCTSTR szDrivePath, IN BOOL bExactMatch, OUT LPTSTR szLocalPath, IN PDWORD pdwBuffLen ); BOOL LookupRemotePath ( IN LPCTSTR szDrivePath, OUT LPTSTR szRemotePath, IN PDWORD pdwBuffLen ); BOOL OnRemoteDrive ( IN LPCTSTR szPath ); DWORD ComputeFreeSpace ( IN LPCTSTR szPath ); DWORD GetSizeFromInfString ( IN LPCTSTR szString ); BOOL IsShareNameUsed ( IN LPCTSTR szServerName, IN LPCTSTR szShareName, IN OUT PDWORD pdwType, IN OUT LPTSTR pszPath ); BOOL SavePathToRegistry ( LPCTSTR szPath, LPCTSTR szServerKey, LPCTSTR szShareKey ); BOOL Dlg_WM_SYSCOMMAND ( IN HWND hwndDlg, IN WPARAM wParam, IN LPARAM lParam ); LRESULT Dlg_WM_MOVE ( IN HWND hwndDlg, IN WPARAM wParam, IN LPARAM lParam ); BOOL Dlg_WM_PAINT ( IN HWND hwndDlg, IN WPARAM wParam, IN LPARAM lParam ); DWORD QuietGetFileAttributes ( IN LPCTSTR szFileName ); DWORD QuietGetPrivateProfileString ( IN LPCTSTR lpszSection, IN LPCTSTR lpszKey, IN LPCTSTR lpszDefault, OUT LPTSTR lpszReturnBuffer, IN DWORD cchReturnBuffer, IN LPCTSTR lpszFile ); BOOL GetSizeOfDirs ( IN LPCTSTR szPath, IN BOOL bFlags, IN OUT PDWORD pdwSize ); #define GSOD_INCLUDE_SUBDIRS 0x00000001 BOOL MediaPresent ( IN LPCTSTR szPath, IN BOOL bCheckFormat ); LPCTSTR GetKeyFromEntry ( IN LPCTSTR szEntry ); LPCTSTR GetItemFromEntry ( IN LPCTSTR szEntry, IN DWORD dwItem ); LPCTSTR GetFileNameFromEntry ( IN LPCTSTR szEntry ); BOOL FileExists ( IN LPCTSTR szFileName ); // // *** FindClnt.C *** // LONG GetDistributionPath ( IN HWND hwndDlg, // handle to dialog box window IN DWORD dwSearchType, // type of dir to find: Client/tools IN OUT LPTSTR szPath, // buffer to return path in (Req'd) IN DWORD dwPathLen, // size of path buffer in chars IN PLONG plPathType // pointer to buffer recieving path type (opt) ); // path type #define NCDU_NO_CLIENT_PATH_FOUND 0x00000000 #define NCDU_PATH_FROM_REGISTRY 0x00000001 #define NCDU_LOCAL_SHARE_PATH 0x00000002 #define NCDU_HARD_DRIVE_PATH 0x00000004 #define NCDU_CDROM_PATH 0x00000008 #ifdef JAPAN // fixed kkntbug #11940 // Network client administrator can not make install disks on PC with C drive as FD #define NCDU_LOGICAL_DRIVE_MASK 0x00000001 #endif INT_PTR CALLBACK FindClientsDlgProc ( IN HWND hwndDlg, IN UINT message, IN WPARAM wParam, IN LPARAM lParam ); // // ShareNet.C // INT_PTR CALLBACK ShareNetSwDlgProc ( IN HWND hwndDlg, IN UINT message, IN WPARAM wParam, IN LPARAM lParam ); // // // LONG CreateDirectoryFromPath ( IN LPCTSTR szPath, IN LPSECURITY_ATTRIBUTES lpSA ); BOOL IsPathADir ( IN LPCTSTR szPath ); int PositionWindow ( IN HWND hwnd ); LPCTSTR GetNetErrorMsg ( IN LONG lNetErr ); BOOL ShowAppHelp ( IN HWND hwndDlg, IN WORD wContext ); BOOL SetSysMenuMinimizeEntryState ( IN HWND hwnd, IN BOOL bState ); BOOL RemoveMaximizeFromSysMenu ( IN HWND hWnd // window handle ); BOOL IsBootDisk ( IN LPCTSTR szPath ); BOOL TrimSpaces ( IN OUT LPTSTR szString ); DWORD TranslateEscapeChars ( IN LPTSTR szNewString, IN LPTSTR szString ); BOOL IsUncPath ( IN LPCTSTR szPath ); MEDIA_TYPE GetDriveTypeFromPath ( IN LPCTSTR szPath ); MACHINE_TYPE GetSystemType ( VOID ); LPCTSTR GetEntryInMultiSz ( IN LPCTSTR mszList, IN DWORD dwEntry ); BOOL RegisterMainWindowClass( IN HINSTANCE hInstance ); DWORD AddStringToMultiSz ( LPTSTR OUT mszDest, LPCTSTR IN szSource ); DWORD StringInMultiSz ( IN LPCTSTR szString, IN LPCTSTR mszList ); LPCTSTR GetStringResource ( IN UINT nId ); UINT ValidSharePath ( IN LPCTSTR szPath ); UINT ValidSrvToolsPath ( IN LPCTSTR szPath ); BOOL DotOrDotDotDir ( IN LPCTSTR szFileName ); BOOL LoadClientList ( IN HWND hwndDlg, IN int nListId, IN LPCTSTR szPath, IN UINT nListType, OUT LPTSTR mszDirList ); BOOL EnableExitMessage ( IN BOOL bNewState ); BOOL AddMessageToExitList ( IN PNCDU_DATA pData, IN UINT nMessage ); BOOL CenterWindow ( HWND hwndChild, HWND hwndParent ); int DisplayMessageBox ( IN HWND hWndOwner, IN UINT nMsgId, IN UINT nTitleId, IN UINT nStyle ); VOID InitAppData ( IN PNCDU_DATA pData ); LRESULT CALLBACK MainWndProc ( IN HWND hWnd, // window handle IN UINT message, // type of message IN WPARAM uParam, // additional information IN LPARAM lParam // additional information ); INT_PTR CALLBACK SwConfigDlgProc ( IN HWND hwndDlg, IN UINT message, IN WPARAM wParam, IN LPARAM lParam ); INT_PTR CALLBACK TargetWsDlgProc ( IN HWND hwndDlg, IN UINT message, IN WPARAM wParam, IN LPARAM lParam ); INT_PTR CALLBACK ServerConnDlgProc ( IN HWND hwndDlg, IN UINT message, IN WPARAM wParam, IN LPARAM lParam ); INT_PTR CALLBACK LanManCfgDlgProc ( IN HWND hwndDlg, IN UINT message, IN WPARAM wParam, IN LPARAM lParam ); INT_PTR CALLBACK CopyFlopDlgProc ( IN HWND hwndDlg, IN UINT message, IN WPARAM wParam, IN LPARAM lParam ); INT_PTR CALLBACK CopyFileDlgProc ( IN HWND hwndDlg, IN UINT message, IN WPARAM wParam, IN LPARAM lParam ); INT_PTR CALLBACK ConfirmSettingsDlgProc ( IN HWND hwndDlg, IN UINT message, IN WPARAM wParam, IN LPARAM lParam ); INT_PTR CALLBACK ExitMessDlgProc ( IN HWND hwndDlg, IN UINT message, IN WPARAM wParam, IN LPARAM lParam ); INT_PTR CALLBACK MakeFlopDlgProc ( IN HWND hwndDlg, IN UINT message, IN WPARAM wParam, IN LPARAM lParam ); INT_PTR CALLBACK DirBrowseDlgProc ( IN HWND hwndDlg, IN UINT message, IN WPARAM wParam, IN LPARAM lParam ); INT_PTR CALLBACK CopyNetUtilsDlgProc ( IN HWND hwndDlg, IN UINT message, IN WPARAM wParam, IN LPARAM lParam ); INT_PTR CALLBACK SharePathDlgProc ( IN HWND hwndDlg, IN UINT message, IN WPARAM wParam, IN LPARAM lParam ); INT_PTR CALLBACK SelToolsDlgProc ( IN HWND hwndDlg, IN UINT message, IN WPARAM wParam, IN LPARAM lParam ); INT_PTR CALLBACK AboutDlgProc ( IN HWND hwndDlg, IN UINT message, IN WPARAM wParam, IN LPARAM lParam ); BOOL FormatDiskInDrive ( IN HWND hWnd, // "owning" window IN TCHAR cDrive, // drive letter to format (only A or B) IN LPCTSTR szLabel, // label text IN BOOL bConfirmFormat // prompt with "r-u-sure?" dialog ); BOOL LabelDiskInDrive ( IN HWND hWnd, // owner window IN TCHAR cDrive, // drive letter to format (only A or B) IN LPCTSTR szLabel // label text ); DWORD GetBootDiskDosVersion ( IN LPCTSTR szPath ); DWORD GetMultiSzLen ( IN LPCTSTR mszInString ); DWORD GetClusterSizeOfDisk ( IN LPCTSTR szPath ); DWORD QuietGetFileSize ( IN LPCTSTR szPath ); #include "otnbtstr.h" // string constant definitions #endif //_otnboot_H_