BINDInstallDlg.h revision 3cb3f6867cf90188b5f4bf192ed3885e04b986fb
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews/*
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington * Portions Copyright (C) 2001 Internet Software Consortium.
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington *
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington * Permission to use, copy, modify, and distribute this software for any
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington * purpose with or without fee is hereby granted, provided that the above
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington * copyright notice and this permission notice appear in all copies.
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington *
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews * DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington * INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington * FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington */
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington/*
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington * Copyright (c) 1999-2000 by Nortel Networks Corporation
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington *
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington * Permission to use, copy, modify, and distribute this software for any
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington * purpose with or without fee is hereby granted, provided that the above
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington * copyright notice and this permission notice appear in all copies.
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington *
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews * THE SOFTWARE IS PROVIDED "AS IS" AND NORTEL NETWORKS DISCLAIMS
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews * ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews * OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NORTEL NETWORKS
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews * BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews * OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews * SOFTWARE.
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews */
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews#ifndef BINDINSTALLDLG_H
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews#define BINDINSTALLDLG_H
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellingtonclass CBINDInstallDlg : public CDialog
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington{
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellingtonpublic:
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington CBINDInstallDlg(CWnd* pParent = NULL); // standard constructor
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington //{{AFX_DATA(CBINDInstallDlg)
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington enum { IDD = IDD_BINDINSTALL_DIALOG };
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews CString m_targetDir;
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews CString m_version;
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews BOOL m_autoStart;
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews BOOL m_keepFiles;
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews CString m_current;
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews BOOL m_startOnInstall;
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews //}}AFX_DATA
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews // ClassWizard generated virtual function overrides
adf16bbdb65f8c0845d7c7a8ebc0836ec07bbfeeBrian Wellington //{{AFX_VIRTUAL(CBINDInstallDlg)
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington protected:
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington //}}AFX_VIRTUAL
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington
adf16bbdb65f8c0845d7c7a8ebc0836ec07bbfeeBrian Wellingtonprotected:
adf16bbdb65f8c0845d7c7a8ebc0836ec07bbfeeBrian Wellington void StartBINDService();
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews void StopBINDService();
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews void InstallTags();
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews void UninstallTags();
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews void CreateDirs();
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews void RemoveDirs(BOOL uninstall);
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews void CopyFiles();
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews void DeleteFiles(BOOL uninstall);
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews void RegisterService();
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews void UnregisterService(BOOL uninstall);
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews void RegisterMessages();
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews void UnregisterMessages(BOOL uninstall);
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews void FailedInstall();
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews void SetItemStatus(UINT nID, BOOL bSuccess = TRUE);
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrewsprotected:
bf49a52178db60df60f2316a3977b2249f7c0edbBrian Wellington CString DestDir(int destination);
9cc53f2a0819301c2de7ab93197eee11e8a365e7Mark Andrews int MsgBox(int id, ...);
int MsgBox(int id, UINT type, ...);
CString GetErrMessage(DWORD err = -1);
BOOL CheckBINDService();
void SetCurrent(int id, ...);
void ProgramGroup(BOOL create = TRUE);
HICON m_hIcon;
CString m_defaultDir;
CString m_etcDir;
CString m_binDir;
CString m_winSysDir;
BOOL m_reboot;
CString m_currentDir;
// Generated message map functions
//{{AFX_MSG(CBINDInstallDlg)
virtual BOOL OnInitDialog();
afx_msg void OnPaint();
afx_msg HCURSOR OnQueryDragIcon();
afx_msg void OnBrowse();
afx_msg void OnChangeTargetdir();
afx_msg void OnInstall();
afx_msg void OnExit();
afx_msg void OnUninstall();
afx_msg void OnAutoStart();
afx_msg void OnKeepFiles();
afx_msg void OnStartOnInstall();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
#endif