mirror of
https://github.com/winscp/winscp.git
synced 2026-10-24 02:28:55 +03:00
101 lines
2.6 KiB
C
101 lines
2.6 KiB
C
//---------------------------------------------------------------------------
|
|
#ifndef ConsoleH
|
|
#define ConsoleH
|
|
//---------------------------------------------------------------------------
|
|
#define CONSOLE_MAPPING L"WinSCPConsoleMapping"
|
|
#define CONSOLE_EVENT_REQUEST L"WinSCPConsoleEventRequest"
|
|
#define CONSOLE_EVENT_RESPONSE L"WinSCPConsoleEventResponse"
|
|
#define CONSOLE_EVENT_CANCEL L"WinSCPConsoleEventCancel"
|
|
#define CONSOLE_JOB L"WinSCPConsoleJob"
|
|
//---------------------------------------------------------------------------
|
|
struct TConsoleCommStruct
|
|
{
|
|
enum TVersion
|
|
{
|
|
CurrentVersion = 0x000A,
|
|
CurrentVersionConfirmed = 0x010A
|
|
};
|
|
|
|
struct TInitEvent
|
|
{
|
|
unsigned int InputType;
|
|
unsigned int OutputType;
|
|
bool WantsProgress; // since version 6
|
|
bool UseStdErr; // since version 10
|
|
enum STDINOUT { OFF, BINARY, CHUNKED };
|
|
STDINOUT OutputFormat; // since version 10
|
|
STDINOUT InputFormat; // since version 10
|
|
};
|
|
|
|
struct TPrintEvent
|
|
{
|
|
wchar_t Message[10240]; // wide since version 4
|
|
bool FromBeginning;
|
|
bool Error; // since vesion 7
|
|
};
|
|
|
|
struct TInputEvent
|
|
{
|
|
bool Echo;
|
|
bool Result;
|
|
wchar_t Str[10240]; // wide since version 4
|
|
unsigned int Timer; // since version 2
|
|
};
|
|
|
|
struct TChoiceEvent
|
|
{
|
|
wchar_t Options[64]; // wide since version 4
|
|
int Cancel;
|
|
int Break;
|
|
int Result;
|
|
int Timeouted; // since version 2
|
|
unsigned int Timer; // since version 2
|
|
bool Timeouting; // since version 4
|
|
int Continue; // since version 9
|
|
wchar_t Message[5120]; // since version 9
|
|
};
|
|
|
|
struct TTitleEvent
|
|
{
|
|
wchar_t Title[10240]; // wide since version 4
|
|
};
|
|
|
|
// Since version 6
|
|
struct TProgressEvent
|
|
{
|
|
enum { COPY } Operation;
|
|
enum { LOCAL, REMOTE } Side;
|
|
wchar_t FileName[1024];
|
|
wchar_t Directory[1024];
|
|
unsigned int OverallProgress;
|
|
unsigned int FileProgress;
|
|
unsigned int CPS;
|
|
bool Cancel; // since version 8
|
|
};
|
|
|
|
// Since version 10
|
|
struct TTransferEvent
|
|
{
|
|
unsigned char Data[20480];
|
|
unsigned int Len;
|
|
bool Error; // TRANSFERIN only
|
|
};
|
|
|
|
size_t Size;
|
|
int Version;
|
|
enum { NONE, PRINT, INPUT, CHOICE, TITLE, INIT, PROGRESS, TRANSFEROUT, TRANSFERIN } Event;
|
|
|
|
union
|
|
{
|
|
TPrintEvent PrintEvent;
|
|
TInputEvent InputEvent;
|
|
TChoiceEvent ChoiceEvent;
|
|
TTitleEvent TitleEvent;
|
|
TInitEvent InitEvent;
|
|
TProgressEvent ProgressEvent;
|
|
TTransferEvent TransferEvent;
|
|
};
|
|
};
|
|
//---------------------------------------------------------------------------
|
|
#endif // ConsoleH
|