Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

167 lines
6.3 KiB

  1. //***************************************************************************
  2. //* Copyright (c) Microsoft Corporation 1995. All rights reserved. *
  3. //***************************************************************************
  4. //* *
  5. //* PAGEFCNS.H - *
  6. //* *
  7. //***************************************************************************
  8. //***************************************************************************
  9. //* DEFINES *
  10. //***************************************************************************
  11. #define IDD_BACK 0x3023 // From commctrl defines...
  12. #define IDD_NEXT 0x3024 // From commctrl defines...
  13. #define MAX_SECLEN 80
  14. #define MAX_TITLE 128 // Max size of Title
  15. #define MAX_PROMPT 512 // Max size of prompt
  16. #define MAX_CUSTOM 512 // Max size of Custom command
  17. #define MAX_FINISHMSG 512 // Max size of Finished message
  18. #define MAX_VERINFO 2048 // max size of version info
  19. //***************************************************************************
  20. //* Defines *
  21. //***************************************************************************
  22. #define achExtEXE ".EXE"
  23. #define achExtBAT ".BAT"
  24. #define achExtCOM ".COM"
  25. #define achExtINF ".INF"
  26. #define achQUANTUM "QUANTUM"
  27. #define achMSZIP "MSZIP"
  28. #define achLZX "LZX"
  29. #define achNONE "NONE"
  30. //***************************************************************************
  31. //* TYPE DEFINITIONS *
  32. //***************************************************************************
  33. // This structure holds the list of files that are in the List View
  34. // Control.
  35. typedef struct _MyItem {
  36. LPSTR aszCols[2]; // Filename and Path
  37. BOOL fWroteOut;
  38. struct _MyItem *Next;
  39. } MYITEM, *PMYITEM;
  40. // This structure (generally) holds all the information that will be
  41. // saved in the CABPack Directive File.
  42. typedef struct _CDF {
  43. BOOL fSave;
  44. BOOL fPrompt;
  45. BOOL fLicense;
  46. BOOL fFinishMsg;
  47. BOOL fUseLFN;
  48. CHAR achFilename[MAX_PATH];
  49. CHAR achTitle[MAX_TITLE];
  50. CHAR achPrompt[MAX_PROMPT];
  51. CHAR achLicense[MAX_PATH];
  52. CHAR achTarget[MAX_PATH];
  53. CHAR achFinishMsg[MAX_FINISHMSG];
  54. CHAR achTargetPath[MAX_PATH];
  55. CHAR achTargetBase[MAX_PATH];
  56. CHAR achDDF[MAX_PATH];
  57. CHAR achCABPath[MAX_PATH];
  58. CHAR achINF[MAX_PATH];
  59. CHAR achRPT[MAX_PATH];
  60. CHAR achPostInstCmd[MAX_CUSTOM];
  61. CHAR achInstallCmd[MAX_PATH];
  62. CHAR achOrigiPostInstCmd[MAX_CUSTOM];
  63. CHAR achOrigiInstallCmd[MAX_PATH];
  64. CHAR achStrings[MAX_SECLEN];
  65. CHAR achLocale[MAX_SECLEN];
  66. CHAR achSourceFile[MAX_SECLEN];
  67. CHAR achVerInfo[MAX_SECLEN];
  68. CHAR szCabLabel[MAX_PATH];
  69. CHAR szAdmQCmd[MAX_PATH];
  70. CHAR szOrigiAdmQCmd[MAX_PATH];
  71. CHAR szUsrQCmd[MAX_PATH];
  72. CHAR szOrigiUsrQCmd[MAX_PATH];
  73. LPSTR lpszCookie;
  74. LPCSTR szCompressionType;
  75. UINT uCompressionLevel;
  76. LPSTR szCAB;
  77. UINT uPackPurpose;
  78. UINT uShowWindow;
  79. UINT uExtractOpt;
  80. DWORD dwPlatform;
  81. DWORD dwReboot;
  82. DWORD cbFileListNum;
  83. DWORD cbPackInstSpace;
  84. PTARGETVERINFO pVerInfo;
  85. PMYITEM pTop;
  86. } CDF, *PCDF;
  87. //***************************************************************************
  88. //* FUNCTION PROTOTYPES *
  89. //***************************************************************************
  90. BOOL WelcomeInit( HWND, BOOL );
  91. BOOL WelcomeCmd( HWND, UINT, BOOL *, UINT *, BOOL * );
  92. BOOL WelcomeOK( HWND, BOOL, UINT *, BOOL * );
  93. BOOL ModifyInit( HWND, BOOL );
  94. BOOL ModifyOK( HWND, BOOL, UINT *, BOOL * );
  95. BOOL TitleInit( HWND, BOOL );
  96. BOOL TitleOK( HWND, BOOL, UINT *, BOOL * );
  97. BOOL PromptInit( HWND, BOOL );
  98. BOOL PromptCmd( HWND, UINT, BOOL *, UINT *, BOOL * );
  99. BOOL PromptOK( HWND, BOOL, UINT *, BOOL * );
  100. BOOL LicenseTxtInit( HWND, BOOL );
  101. BOOL LicenseTxtCmd( HWND, UINT, BOOL *, UINT *, BOOL * );
  102. BOOL LicenseTxtOK( HWND, BOOL, UINT *, BOOL * );
  103. BOOL FilesInit( HWND, BOOL );
  104. BOOL FilesCmd( HWND, UINT, BOOL *, UINT *, BOOL * );
  105. BOOL FilesNotify( HWND, WPARAM, LPARAM );
  106. BOOL FilesOK( HWND, BOOL, UINT *, BOOL * );
  107. BOOL CommandInit( HWND, BOOL );
  108. BOOL CommandCmd( HWND, UINT, BOOL *, UINT *, BOOL * );
  109. BOOL CommandOK( HWND, BOOL, UINT *, BOOL * );
  110. BOOL ShowWindowInit( HWND, BOOL );
  111. BOOL ShowWindowOK( HWND, BOOL, UINT *, BOOL * );
  112. BOOL FinishMsgInit( HWND, BOOL );
  113. BOOL FinishMsgCmd( HWND, UINT, BOOL *, UINT *, BOOL * );
  114. BOOL FinishMsgOK( HWND, BOOL, UINT *, BOOL * );
  115. BOOL TargetInit( HWND, BOOL );
  116. BOOL TargetCmd( HWND, UINT, BOOL *, UINT *, BOOL * );
  117. BOOL TargetOK( HWND, BOOL, UINT *, BOOL * );
  118. BOOL TargetCABInit( HWND, BOOL );
  119. BOOL TargetCABCmd( HWND, UINT, BOOL *, UINT *, BOOL * );
  120. BOOL TargetCABOK( HWND, BOOL, UINT *, BOOL * );
  121. BOOL SaveInit( HWND, BOOL );
  122. BOOL SaveCmd( HWND, UINT, BOOL *, UINT *, BOOL * );
  123. BOOL SaveOK( HWND, BOOL, UINT *, BOOL * );
  124. BOOL CreateInit( HWND, BOOL );
  125. BOOL CreateOK( HWND, BOOL, UINT *, BOOL * );
  126. BOOL PackPurposeInit( HWND, BOOL );
  127. BOOL PackPurposeOK( HWND, BOOL, UINT *, BOOL * );
  128. BOOL PackPurposeCmd( HWND hDlg, UINT uCtrlID, BOOL *pfGotoPage, UINT *puNextPage,BOOL *pfKeepHistory );
  129. BOOL CabLabelInit( HWND, BOOL );
  130. BOOL CabLabelOK( HWND, BOOL, UINT *, BOOL * );
  131. BOOL CabLabelCmd( HWND hDlg, UINT uCtrlID, BOOL *pfGotoPage, UINT *puNextPage,BOOL *pfKeepHistory );
  132. BOOL RebootInit( HWND, BOOL );
  133. BOOL RebootOK( HWND, BOOL, UINT *, BOOL * );
  134. BOOL RebootCmd( HWND hDlg, UINT uCtrlID, BOOL *pfGotoPage, UINT *puNextPage,BOOL *pfKeepHistory );
  135. void RemoveBlanks( LPSTR lpData );
  136. BOOL SetCurrSelect( HWND hDlg, UINT ctlId, LPSTR lpSelect );
  137. BOOL CheckAdvBit( LPSTR szOrigiCommand );
  138. void MyProcessLFNCmd( LPSTR szOrigiCmd, LPSTR szOutCmd );
  139. void SysErrorMsg( HWND );