рдХрд╛рд░реНрдп рдХрд╛ рдЙрджрдп рд╣реБрдЖ: рдмрд┐рдЬрд╝рдЯрд╛рд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреЛ рд╡рд┐рддрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдПрдВ рд╕реНрд╡рдпрдВ рдХрд╛рдлреА рдмрдбрд╝реА рд╣реИрдВ - 300 рдореЗрдЧрд╛рдмрд╛рдЗрдЯ рд╕реЗ рдЕрдзрд┐рдХред рдЕрддрд┐рд░рд┐рдХреНрдд рдмрдбрд╝реЗ рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП MSMQ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рдЧрдпрд╛ред рдФрд░ рдЕрдм рдФрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдпрд╣ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рдЖрд╡рд╢реНрдпрдХ рдерд╛ред
рдмреЗрд╢рдХ, рдкрд╣рд▓реА рдЪреАрдЬрд╝ рдЬреЛ рд╣реЛ рд╕рдХрддреА рд╣реИ рд╡рд╣ рд╣реИ MSDN рдкрд░ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдвреВрдВрдврдирд╛ рдХрд┐ рдпрд╣ рд╕рдм рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдП (рдореИрдВ рдЗрд╕реЗ рдмрд╛рдж рдореЗрдВ рд░реВрд╕реА рдореЗрдВ рдПрдХ рд╕рд╛рде рдмрджрд▓рд╛рд╡реЛрдВ рдХреЗ рд╕рд╛рде рд╡рд░реНрдгрди рдХрд░реВрдВрдЧрд╛), рд▓реЗрдХрд┐рди рдореИрдВ рддреБрд░рдВрдд рдПрдХ рдЖрд░рдХреНрд╖рдг рдХрд░ рджреВрдВрдЧрд╛ рдХрд┐ рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рд╣реИ - рдЖрдк рдЙрд╕ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рдЖрдХрд╛рд░ рдХреЛ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗ рдЬреЛ рд╕рдВрджреЗрд╢ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рд╣реИ, рдЬрд┐рд╕реЗ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рд╡рд┐рднрд┐рдиреНрди рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИред рддреЛ рдЪрд▓рд┐рдП рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред
рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдЪрд╛рд╣рд┐рдП:
- рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ 2010 SP1
- Biztalk рд╕рд░реНрд╡рд░ 2010 SDK
- Biztalk рд╕рд░реНрд╡рд░ 2010 (рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП)
- рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреА рдЗрдЪреНрдЫрд╛
рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдЦреЛрд▓реЗрдВ <Biztalk рд╕рд░реНрд╡рд░ 2010 SDK> \ AdaptersUsage \ MSMQLarge \ LargeMessages.sln рдХреЗ рд▓рд┐рдП рдкрдеред рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рд╕рдорд╛рдзрд╛рди рдореЗрдВ рджреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ: рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рд╕реА ++ рдореЗрдВ, рджреВрд╕рд░рд╛ рд╕реА # рдореЗрдВред рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдкрд╣рд▓реЗ рдПрдХ рдХреЛ рдорд╣рд╕реВрд╕ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЬрд┐рд╕ рдЖрдХрд╛рд░ рдХреЛ рд╣рдорд╛рд░реЗ рд╕рдВрджреЗрд╢ рдХреЛ рдХрддрд╛рд░ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЙрд╕реЗ рдЪреБрдирдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХреЛ рдХрдХреНрд╖рд╛ рдореЗрдВ рд╕рд╣реА рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рд╕реНрд░реЛрдд рдХреЛрдб рд╕реЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдЖрдХрд╛рд░ рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:
MQSendLargeMessage(unmanagedQueueData->queueHandle, &(messageData->message), MQ_SINGLE_MESSAGE, MQRTLARGE_USE_DEFAULT_PART_SIZE);
рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ,
MQRTLARGE_USE_DEFAULT_PART_SIZE рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╢реВрдиреНрдп рдкрд░ рд╕реЗрдЯ рд╣реЛрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рд╕рд░реНрд╡рд░ рдХреЗ рд╡рд┐рд╡реЗрдХ рдкрд░ рдЖрдХрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ред рд╣рдорд╛рд░реЗ рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП, рд╣рдо рдирд┐рдЬреА рдЪрд░
dwQueuePartSize рдХреЛ рдЬреЛрдбрд╝реЗрдВрдЧреЗ рдФрд░ рддрджрдиреБрд╕рд╛рд░ рдирд┐рдЬреА рдлрд╝рдВрдХреНрд╢рди Init (...) рдХреЛ рдмрджрд▓реЗрдВрдЧреЗред
void Init(String* formatName, bool useAuthentication, DWORD dwQueuePartSize) { this->formatName = formatName; this->useAuthentication = useAuthentication; this->dwQueuePartSize=dwQueuePartSize; AllocUnmanagedQueueData(); }
рдЕрдм рдЗрд╕рдореЗрдВ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдкреИрд░рд╛рдореАрдЯрд░ рд╣реИ рдЬреЛ рдкреНрд░рд╛рд░рдВрдн рдХреЗ рджреМрд░рд╛рди рдЖрдХрд╛рд░ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИред рдЕрдм рд╣рдореЗрдВ рдЙрди рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░реНрд╕ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдЬреЛ рдореИрдВ рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВред
LargeMessageQueue(String* formatName, bool useAuthentication) { Init(formatName, useAuthentication, 0); } LargeMessageQueue(String* formatName) { Init(formatName, false, 0); }
рдЕрдм рд╣рдо рдЕрдкрдиреЗ рдирд┐рд░реНрдорд╛рддрд╛ рдХреЛ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдЙрдЪрд┐рдд рдореВрд▓реНрдп рд▓реЗрддрд╛ рд╣реИ:
LargeMessageQueue(String* formatName, DWORD dwQueuePartSize) { Init(formatName, false, dwQueuePartSize); } LargeMessageQueue(String* formatName, bool useAuthentication, DWORD dwQueuePartSize) { Init(formatName, useAuthentication, dwQueuePartSize); }
рд╣рдордиреЗ рдПрдХ рдордирдорд╛рдирд╛ рдЖрдХрд╛рд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рджреЛ рдорд╛рдирдХ рдирд┐рд░реНрдорд╛рдгрдХрд░реНрддрд╛рдУрдВ рдХреА рдирдХрд▓ рдХреАред рдПрдХ рдЫреЛрдЯреА рдЯрд┐рдкреНрдкрдгреА: рдкрд╣рд▓реЗ рд╕реЗ рдШреЛрд╖рд┐рдд рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░реЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреИрд░рд╛рдореАрдЯрд░ рдЬреЛрдбрд╝рдирд╛ рдФрд░ рдЗрдирд┐рдЯ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рд╣рдо рдЕрдиреНрдп рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреЗ рд╕рд╛рде рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреА рдкрд┐рдЫрдбрд╝реА рд╕рдВрдЧрддрддрд╛ рдЦреЛ рджреЗрддреЗ рд╣реИрдВ рдЬреЛ рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд▓рд╛рдЧреВ рдХрд░ рдЪреБрдХреЗ рд╣реИрдВ, рдпрд╛ рд╣рдо рдЗрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рд╕рдорд╛рдзрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред
рдЗрд╕ рд╕реНрддрд░ рдкрд░, рд╣рдореЗрдВ рдЙрд╕ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЗ рд╕рд╛рде рдПрдХ рдХрд╛рд░реНрдпрд╢реАрд▓ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдорд┐рд▓рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХреА рд╣рдореЗрдВ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдпрд╣ рдПрдХ рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд╕рд╛рде рдпрд╣ рд╕рдм рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕рдорд╛рдзрд╛рди рдореЗрдВ рджреВрд╕рд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдЦреЛрд▓реЗрдВ, C # рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ, App.cs рдлрд╝рд╛рдЗрд▓ рдЦреЛрд▓реЗрдВ рдФрд░ рдЕрдЧрд▓реЗ рдЯреБрдХрдбрд╝реЗ рдХреЛ рдареАрдХ рдХрд░реЗрдВ
LargeMessageQueue queue = new LargeMessageQueue(queueFormatName); LargeMessageQueue queue = new LargeMessageQueue(queueFormatName, 3145728);
рдЕрдм рд╣рдо рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреА рдкреВрд░реА рдЕрд╕реЗрдВрдмрд▓реА рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдмрд┐рд▓реНрдб рдХреНрд▓реАрди рдХрд░рдирд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╣реИред
рдпрд╣ рд╡рд╣ рдЬрдЧрд╣ рд╣реИ рдЬрд╣рд╛рдВ рд╡рд┐рдХрд╛рд╕ рд╕рдорд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИред рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП, рд╣рдо рдПрдХ рд╕рд░рд▓ BizTalk рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдПрдВрдЧреЗ рдЬреЛ рдХрддрд╛рд░ рд╕реЗ рдПрдХ рд╕рдВрджреЗрд╢ рд▓реЗрдЧрд╛ рдФрд░ рдЗрд╕реЗ C: \ Demo рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдбрд╛рд▓ рджреЗрдЧрд╛ред
- рдирд╛рдо рдХреЗ рд╕рд╛рде рд╕реНрдерд╛рдиреАрдп рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдПрдХ рдирд┐рдЬреА рдХрддрд╛рд░ рдмрдирд╛рдПрдВред рдмрдирд╛рддреЗ рд╕рдордп, рдЖрдкрдХреЛ рдПрдХ рдкреИрд░рд╛рдореАрдЯрд░ рдХрд╛ рдЪрдпрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдЬреЛ рд▓реЗрдирджреЗрди рдХрддрд╛рд░ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерди рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИред рдЬрд┐рд╕ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реЗ рдЖрдкрдХрд╛ BizTalk рд╕рд░реНрд╡рд░ рдЪрд▓ рд░рд╣рд╛ рд╣реИ, рдЙрд╕реЗ рдЗрд╕ рдХрддрд╛рд░ рд╕реЗ рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХреА рдЬрд╛рдБрдЪ рдХрд░рдирд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВред
- рдлрд╝реЛрд▓реНрдбрд░ C: \ Demo рдмрдирд╛рдПрдБред рдлрд┐рд░, рдЙрд╕ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд▓рд┐рдЦрдиреЗ рдХреЗ рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдЬрд╣рд╛рдВ рд╕реЗ рдЖрдкрдХрд╛ BizTalk рд╕рд░реНрд╡рд░ рдЪрд▓ рд░рд╣рд╛ рд╣реИ
- 3. рдмрд┐рдЬрд╝рдЯрд╛рд▓рдХ рдкреНрд░рд╢рд╛рд╕рди рдХрдВрд╕реЛрд▓ рдЦреЛрд▓реЗрдВ рдФрд░ рдПрдХ рдирдпрд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдПрдВ, рдЗрд╕реЗ MSMQBiztalkTest рдХрд╣реЗрдВред рдЗрд╕ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ, рд╕реНрдЯреЗрдЯрд┐рдХ рд╡рди-рд╡реЗ рд╕реЗрдВрдб рдкреЛрд░реНрдЯ рдХрд╛ рд╕реЗрдВрдб рдкреЛрд░реНрдЯ рдмрдирд╛рдПрдВ рдФрд░ рдЗрд╕реЗ рдорд╛рдпрд╕реЗрдиреНрдбрдкреЙрд░реНрдЯ рдирд╛рдо рджреЗрдВред рд╣рдо рдкрд░рд┐рд╡рд╣рди рдкреНрд░рдХрд╛рд░ - рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рддрджрдиреБрд╕рд╛рд░ рдЗрд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддреЗ рд╣реИрдВ рддрд╛рдХрд┐ рдпрд╣ C: \ рдбреЗрдореЛ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╣рдорд╛рд░реЗ рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рд╕реНрдЯреИрдХреНрдб рдХрд░реЗрдВ рдЬреЛ рд╣рдордиреЗ рдкрд╣рд▓реЗ рдмрдирд╛рдпрд╛ рдерд╛ред рд╣рдордиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреЛрд░реНрдЯ BTS.ReceivePortName == MyReceivePort рдХреЗ рд╕рд╛рде рдЗрд╕ рдкреЛрд░реНрдЯ рдкрд░ рдлрд╝рд┐рд▓реНрдЯрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рд╣реИ
- рдПрдХ-рддрд░рдлрд╝рд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдкреЛрд░реНрдЯ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдПрдХ рдирдпрд╛ рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛ рдкреЛрд░реНрдЯ рдмрдирд╛рдПрдВ рдФрд░ рдЗрд╕реЗ MyReceivePort рдирд╛рдо рджреЗрдВред рдЗрд╕ рдкреЛрд░реНрдЯ рдХреЗ рд▓рд┐рдП, MSMQReceiveLocation рдирд╛рдордХ рд╡рди-рд╡реЗ рд░рд┐рд╕реАрд╡ рд╕реНрдерд╛рди рдкреНрд░рдХрд╛рд░ рдХрд╛ рдПрдХ рдирдпрд╛ рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛ рд╕реНрдерд╛рди рдмрдирд╛рдПрдВред рд╣рдо MSMQ рдХреЗ рдмрд░рд╛рдмрд░ рдкрд░рд┐рд╡рд╣рди рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рд╣рдорд╛рд░реА рдХрддрд╛рд░ рд╕реЗ рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХрддрд╛рд░ рдХреЛ рд╕реНрдерд╛рдиреАрдпрд╣реЛрд╕реНрдЯ \ рдкреНрд░рд╛рдЗрд╡реЗрдЯ $ \ рдкрд░реАрдХреНрд╖рдг рдореЗрдВ рд╕реЗрдЯ рдХрд░реЗрдВ рдФрд░ рдЯреНрд░рд╛рдиреНрдХреНрд╢рдирд▓ рдЯреВ рдЯреНрд░реВ рд╕реЗрдЯ рдХрд░реЗрдВред
- рдЗрд╕ рдкрд░реАрдХреНрд╖рдг рдкрд░ BizTalk рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЖрдкрдХреЛ рдЗрд╕реЗ рд╢реБрд░реВ рдХрд░рдиреЗ рдФрд░ Biztalk рд╕реЗрд╡рд╛ рдХреЛ рдкреБрдирд░рд╛рд░рдВрдн рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдХрддрд╛рд░ рдореЗрдВ рдПрдХ рд╕рдВрджреЗрд╢ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдЙрд╕ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдЬрд┐рд╕реЗ рд╣рдордиреЗ VisualStudio 2010 рдореЗрдВ рдкрд╣рд▓реЗ рдмрдирд╛рдпрд╛ рдерд╛ред рдпрд╣ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рддрджрдиреБрд╕рд╛рд░ рджреЛ рдорд╛рдкрджрдВрдбреЛрдВ, рдХрддрд╛рд░ рдкреИрд░рд╛рдореАрдЯрд░ рдФрд░ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо рд▓реЗрддрд╛ рд╣реИред
SendLargeMessage.exe DIRECT = OS: localhost \ Private $ \ Test "C: \ TestData \ LargeFile.xml"
рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЖрдХрд╛рд░ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдЖрдк рдЗрд╕реЗ рдХреБрдЫ рд╣реА рд╕реЗрдХрдВрдб рдореЗрдВ C: \ Demo рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдзреАрд░реЗ-рдзреАрд░реЗ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛрддреЗ рд╣реБрдП рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред
рд╡рд╣ рд╕рдм рд╣реИред рдпрджрд┐ рдХрд┐рд╕реА рдХреЗ рдкрд╛рд╕ рдХреЛрдИ рдкреНрд░рд╢реНрди рдпрд╛ рд╕реБрдЭрд╛рд╡ рд╣реИ, рддреЛ рдореБрдЭреЗ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рд╕рдм рдХреБрдЫ рдЬрд╡рд╛рдм рджреЗрдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреАред
рд╕реВрддреНрд░реЛрдВ рдХрд╛ рдХрд╣рдирд╛ рд╣реИ:
MSMQ рдХреЛ рдмрдбрд╝рд╛ рд╕рдВрджреЗрд╢