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.
 
 
 
 
 
 

85 lines
2.3 KiB

// QueueState.cpp : implementation file
//
#include "stdafx.h"
#include "ConfigTest.h"
#include "QueueState.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
typedef unsigned long ULONG_PTR, *PULONG_PTR;
typedef ULONG_PTR DWORD_PTR, *PDWORD_PTR;
#include "..\..\..\inc\fxsapip.h"
/////////////////////////////////////////////////////////////////////////////
// CQueueState dialog
CQueueState::CQueueState(HANDLE hFax, CWnd* pParent /*=NULL*/)
: CDialog(CQueueState::IDD, pParent), m_hFax (hFax)
{
//{{AFX_DATA_INIT(CQueueState)
m_bInboxBlocked = FALSE;
m_bOutboxBlocked = FALSE;
m_bOutboxPaused = FALSE;
//}}AFX_DATA_INIT
}
void CQueueState::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CQueueState)
DDX_Check(pDX, IDC_INCOMING_BLOCKED, m_bInboxBlocked);
DDX_Check(pDX, IDC_OUTBOX_BLOCKED, m_bOutboxBlocked);
DDX_Check(pDX, IDC_OUTBOX_PAUSED, m_bOutboxPaused);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CQueueState, CDialog)
//{{AFX_MSG_MAP(CQueueState)
ON_BN_CLICKED(IDC_WRITE, OnWrite)
ON_BN_CLICKED(IDC_READ, OnRead)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CQueueState message handlers
void CQueueState::OnWrite()
{
UpdateData ();
DWORD dwState = (m_bInboxBlocked ? FAX_INCOMING_BLOCKED : 0) |
(m_bOutboxBlocked ? FAX_OUTBOX_BLOCKED : 0) |
(m_bOutboxPaused ? FAX_OUTBOX_PAUSED : 0);
if (!FaxSetQueue (m_hFax, dwState))
{
CString cs;
cs.Format ("Failed while calling FaxSetQueue (%ld)", GetLastError());
AfxMessageBox (cs, MB_OK | MB_ICONHAND);
return;
}
}
void CQueueState::OnRead()
{
DWORD dwState;
if (!FaxGetQueueStates (m_hFax, &dwState))
{
CString cs;
cs.Format ("Failed while calling FaxGetQueueStates (%ld)", GetLastError());
AfxMessageBox (cs, MB_OK | MB_ICONHAND);
return;
}
m_bInboxBlocked = (dwState & FAX_INCOMING_BLOCKED) ? TRUE : FALSE;
m_bOutboxBlocked = (dwState & FAX_OUTBOX_BLOCKED) ? TRUE : FALSE;
m_bOutboxPaused = (dwState & FAX_OUTBOX_PAUSED) ? TRUE : FALSE;
UpdateData (FALSE);
}