Source code of Windows XP (NT5)
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.

91 lines
2.4 KiB

  1. /*--------------------------------------------------------------------------*
  2. *
  3. * Microsoft Windows
  4. * Copyright (C) Microsoft Corporation, 1992 - 00
  5. *
  6. * File: archpicker.h
  7. *
  8. * Contents: Interface file for CArchitecturePicker
  9. *
  10. * History: 1-Aug-2000 jeffro Created
  11. *
  12. *--------------------------------------------------------------------------*/
  13. #if !defined(AFX_ARCHPICKER_H__4502E3CD_5EB7_4708_A765_8DAF3D03773F__INCLUDED_)
  14. #define AFX_ARCHPICKER_H__4502E3CD_5EB7_4708_A765_8DAF3D03773F__INCLUDED_
  15. #if _MSC_VER > 1000
  16. #pragma once
  17. #endif // _MSC_VER > 1000
  18. // ArchPicker.h : header file
  19. //
  20. enum eArchitecture
  21. {
  22. eArch_64bit, // force 64-bit version to run
  23. eArch_32bit, // force 32-bit version to run
  24. eArch_Any, // any architecture is acceptable
  25. eArch_None, // no architecture is acceptable (i.e. abort)
  26. };
  27. #ifdef _WIN64 // this class is only required on 64-bit platforms
  28. class CAvailableSnapinInfo;
  29. /////////////////////////////////////////////////////////////////////////////
  30. // CArchitecturePicker dialog
  31. class CArchitecturePicker : public CDialog
  32. {
  33. // Construction
  34. public:
  35. CArchitecturePicker(
  36. CString strFilename, // I:name of console file
  37. CAvailableSnapinInfo& asi64, // I:available 64-bit snap-ins
  38. CAvailableSnapinInfo& asi32, // I:available 32-bit snap-ins
  39. CWnd* pParent = NULL); // I:dialog's parent window
  40. eArchitecture GetArchitecture() const { return (m_eArch); }
  41. // Dialog Data
  42. //{{AFX_DATA(CArchitecturePicker)
  43. enum { IDD = IDD_ArchitecturePicker };
  44. CListCtrl m_wndSnapinList64;
  45. CListCtrl m_wndSnapinList32;
  46. //}}AFX_DATA
  47. // Overrides
  48. // ClassWizard generated virtual function overrides
  49. //{{AFX_VIRTUAL(CArchitecturePicker)
  50. protected:
  51. virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
  52. //}}AFX_VIRTUAL
  53. // Implementation
  54. protected:
  55. // Generated message map functions
  56. //{{AFX_MSG(CArchitecturePicker)
  57. virtual BOOL OnInitDialog();
  58. //}}AFX_MSG
  59. DECLARE_MESSAGE_MAP()
  60. void FormatMessage (UINT idControl, CAvailableSnapinInfo& asi);
  61. void PopulateList (CListCtrl& wndList, CAvailableSnapinInfo& asi);
  62. private:
  63. CAvailableSnapinInfo& m_asi64;
  64. CAvailableSnapinInfo& m_asi32;
  65. CString m_strFilename;
  66. eArchitecture m_eArch;
  67. };
  68. //{{AFX_INSERT_LOCATION}}
  69. // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
  70. #endif // _WIN64
  71. #endif // !defined(AFX_ARCHPICKER_H__4502E3CD_5EB7_4708_A765_8DAF3D03773F__INCLUDED_)