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.

43 lines
1.1 KiB

  1. #ifndef _CABCLASS_H_
  2. #define _CABCLASS_H_
  3. // enumerated type for mapping features to directories, this corresponds
  4. // directly to our mappings array in the class so make sure you add your
  5. // feature and its mapping in the same order
  6. typedef enum tagFEATURE {
  7. FEATURE_BRAND = 0,
  8. FEATURE_FAVORITES,
  9. FEATURE_CONNECT,
  10. FEATURE_CHANNELS,
  11. FEATURE_DESKTOPCOMPONENTS,
  12. FEATURE_TOOLBAR,
  13. FEATURE_MYCPTR,
  14. FEATURE_CTLPANEL,
  15. FEATURE_LDAP,
  16. FEATURE_OE,
  17. FEATURE_WALLPAPER,
  18. FEATURE_BTOOLBAR
  19. } FEATURE;
  20. typedef struct tagFEATUREMAPPING
  21. {
  22. INT index; // index into cab name array
  23. TCHAR szDirName[32];
  24. } FEATUREMAPPING, *PFEATUREMAPPING;
  25. class CCabMappings
  26. {
  27. private:
  28. static const TCHAR *c_szCabNameArray[];
  29. static const FEATUREMAPPING c_fmFeatureList[];
  30. public:
  31. void GetFeatureDir(FEATURE feature, LPTSTR pszDir, BOOL fFullyQualified = TRUE);
  32. HRESULT MakeCab(int index, LPCTSTR pcszDestDir, LPCTSTR pcszCabName = NULL);
  33. HRESULT MakeCabs(LPCTSTR pcszDestDir);
  34. };
  35. extern CCabMappings g_cmCabMappings; // defined in wizard.cpp
  36. #endif