windows-nt/Source/XPSP1/NT/enduser/netmeeting/ui/msconfft/mbftpch.h
2020-09-26 16:20:57 +08:00

154 lines
3.6 KiB
C
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/* ----------------------------------------------------------------------
Copyright (c) 1996, Microsoft Corporation
All rights reserved
mbftpch.h
---------------------------------------------------------------------- */
#define _WINDOWS
// System Include files
#include <windows.h>
#include <windowsx.h>
#include <objbase.h>
#include <commdlg.h>
#include <shellapi.h>
#include <time.h>
// Oprah files
#include <oprahcom.h>
#include <confdbg.h>
#include <cstring.hpp>
// Local Include files
#include <ConfDbg.h>
#include <debspew.h>
#include <confreg.h>
// MBFT include files
extern "C"
{
#include "t120.h"
}
#include <imcsapp.h>
#include <igccapp.h>
#include <imbft.h>
#include "mbftdbg.h"
#include "ms_util.h"
#include "cntlist.h"
const USHORT _MBFT_CONTROL_CHANNEL = 9;
const USHORT _MBFT_DATA_CHANNEL = 10;
const ULONG _iMBFT_PROSHARE_ALL_FILES = 0xFFFFFFFF;
const UINT _iMBFT_DEFAULT_SESSION = _MBFT_CONTROL_CHANNEL; // 9
const UINT _iMBFT_CREATE_NEW_SESSION = 0;
const UINT _iMBFT_MAX_PATH = MAX_PATH; //Max chars in file pathname
typedef enum
{
MBFT_STATIC_MODE,
MBFT_MULTICAST_MODE,
// MBFT_PRIVATE_MODE, // not used at all
}
MBFT_MODE;
typedef enum
{
MBFT_PRIVATE_SEND_TYPE,
MBFT_PRIVATE_RECV_TYPE,
MBFT_BROADCAST_RECV_TYPE,
}
MBFT_SESSION_TYPE;
// A list of the notification callbacks to the app
typedef enum
{
iMBFT_FILE_OFFER,
iMBFT_FILE_SEND_BEGIN,
iMBFT_FILE_SEND_END,
iMBFT_FILE_SEND_PROGRESS,
iMBFT_FILE_RECEIVE_PROGRESS,
iMBFT_FILE_RECEIVE_BEGIN,
iMBFT_FILE_RECEIVE_END,
}
MBFT_NOTIFICATION;
// Prototype of callback function that MBFT client apps must implement
typedef void (CALLBACK * MBFTCALLBACK)(
MBFT_NOTIFICATION eNotificationCode,
WPARAM wParam, // error code if appropriate
LPARAM lParam, // Ptr to struct with event info
LPARAM lpCallerDefined); // Client defined - see MBFTInitialize
// #define MAX_APP_KEY_SIZE 100
#define MAX_APP_KEY_SIZE 16 // applet name
// global strings that should not be localized
#define MY_APP_STR "_MSCONFFT"
#define PROSHARE_STRING "NetMeeting 1 MBFT"
#define PROSHARE_FILE_END_STRING "NetMeeting 1 FileEnd"
#define PROSHARE_CHANNEL_LEAVE_STRING "NetMeeting 1 ChannelLeave"
#define DATA_CHANNEL_RESOURCE_ID "D0"
// capabilities
extern const GCCAppCap* g_aAppletCaps[4];
extern const GCCNonCollCap* g_aAppletNonCollCaps[2];
// applet session key
extern GCCSessionKey g_AppletSessionKey;
// work thread ID
extern HINSTANCE g_hDllInst;
extern DWORD g_dwWorkThreadID;
extern CRITICAL_SECTION g_csWorkThread;
extern TCHAR g_szMBFTWndClassName[32];
LRESULT CALLBACK MBFTNotifyWndProc(HWND, UINT, WPARAM, LPARAM);
#include "osshelp.hpp"
#include "messages.hpp"
#include "applet.hpp"
#include "mbft.hpp"
#include "mbftapi.hpp"
#include "ftui.h"
#include "ftldr.h"
#include "t127pdus.h"
#define GetFileNameFromPath ExtractFileName
// from mbftsend.cpp
VOID MbftInitDelay(void);
#define ClearStruct(lpv) ZeroMemory((LPVOID) (lpv), sizeof(*(lpv)))
// nPeerID is actually nUserID of file transfer
typedef DWORD MEMBER_ID;
#define MAKE_MEMBER_ID(nPeerID,nNodeID) MAKELONG((nPeerID), (nNodeID))
#define GET_PEER_ID_FROM_MEMBER_ID(nMemberID) LOWORD((nMemberID))
#define GET_NODE_ID_FROM_MEMBER_ID(nMemberID) HIWORD((nMemberID))
extern ULONG g_nSendDisbandDelay;
extern ULONG g_nChannelResponseDelay;
extern BOOL g_fSendAllowed;
extern BOOL g_fRecvAllowed;
extern UINT_PTR g_cbMaxSendFileSize;
extern BOOL g_fNoUI;