2025-11-28 00:35:46 +09:00

92 lines
2.2 KiB
C++

// MessageDlg.cpp : implementation file
//
// Copyright 1995-1998, Citrix Systems Inc.
// Copyright (c) 1997 - 2000 Microsoft Corporation
#include "stdafx.h"
#include "API.h"
#include "APIDoc.h"
#include "MessageDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CMessageDlg dialog
CMessageDlg::CMessageDlg(CWnd* pParent /*=NULL*/)
: CDialog(CMessageDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CMessageDlg)
m_message = _T("");
//}}AFX_DATA_INIT
}
void CMessageDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CMessageDlg)
DDX_Control(pDX, IDC_SERVERNAME, m_serverName);
DDX_Control(pDX, IDC_SEND_MESSAGE, m_sendMessage);
DDX_Text(pDX, IDC_SEND_MESSAGE, m_message);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CMessageDlg, CDialog)
//{{AFX_MSG_MAP(CMessageDlg)
ON_BN_CLICKED(ID_SEND_MESSAGE, OnSendMessage)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CMessageDlg message handlers
void CMessageDlg::OnSendMessage()
{
LPSTR serverName = g_pDoc->GetServerName();
HANDLE serverHandle = WTSOpenServer(serverName);
DWORD Response;
int messageLength;
m_sendMessage.GetWindowText(m_message);
messageLength = m_message.GetLength();
//int GetLine( int nIndex, LPTSTR lpszBuffer ) const;
//int GetLineCount( ) const;
if (WTSSendMessage(serverHandle, 0, "Test Message", sizeof("Test Message"),
(char *) LPCTSTR(m_message), messageLength+1,
MB_OKCANCEL, 5, &Response, 1))
AfxMessageBox("Message was sent");
else
AfxMessageBox("Unable to send message");
//CString temp
//temp.Format("%d,
WTSCloseServer(serverHandle);
}
BOOL CMessageDlg::OnInitDialog()
{
CDialog::OnInitDialog();
LPSTR serverName = g_pDoc->GetServerName();
CString serverDisplay;
serverDisplay = "Enter in message to send to ";
if (*serverName == NULL)
serverDisplay += "local server";
else
serverDisplay += serverName;
m_serverName.SetWindowText(serverDisplay);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}