Недавно вставил в одну свою прогу забавную фишечку MSAgent, думаю, что вы все знаете эту занудную скрепочку из MS Office, хоть она и занудная, но у неё есть одно несомненное достоинство - её можно отключить :) Посмотрим на дело с другой стороны, если человек впервые запускает вашу прогу, то ему будет гораздо проще и уютнее, если маленький смешной человечек расскажет, что и как здесь можно делать, ну а потом его легко отключить...

Вставить же этого чудика проще простого, для этого вам необходимо установить на свой комп компонент с агентом, если вы хотите, чтобы агент разговаривал по русски, то установите ещё и это дополнение.

Если вы пишете программу на Visual Basic, то здесь вы найдете описание вставки в ваш проект этого агента, а если на Visual C++, то добавьте в свой проект этот компонет (точнее классы для управления им) в меню Project->Add To Project->Components and Controls.
Затем напишите примерно следующий код:
bool CMainFrame::LoadMSAgent()
{
try
{
COleVariant vEmpty;
m_MSAgent = new CAgentCtlEx;
m_MSCharAgent = new CAgentCtlCharacterEx;

m_MSAgent->Create("",WS_CHILD,CRect(10,10,100,100),(CWnd*)this,111);
CAgentCtlCharacters MSChar = m_MSAgent->GetCharacters();
CString s = "C:\\WINNT\\MSAgent\\merlin.acs";

VARIANT var;
var.vt = VT_BSTR;
var.bstrVal = s.AllocSysString();

MSChar.Load("CharacterID",var);
//устанавливает русский язык, чтобы агент умел говорить по русски...
m_MSCharAgent->SetLanguageID(0x0419);

*m_MSCharAgent = MSChar.Character("CharacterID");

var.vt = VT_I2;
var.iVal = 0;
m_MSCharAgent->MoveTo(200,200,var);
m_MSCharAgent->Show(var);

m_MSCharAgent->Play("Announce");

var.vt = VT_I2;
var.iVal = 500;
m_MSCharAgent->MoveTo(30,10,var);

m_MSCharAgent->Play("GestureRight");
s = "Привет,\\Pau=400\\для регистрации в системе нажмите эту кнопку!";

var.vt = VT_BSTR;
var.bstrVal = s.AllocSysString();
m_MSCharAgent->Speak(var,vEmpty);
return true;
}
catch(...)
{
m_MerlinType = M_NONE;
return false;
}
}
В этом примере волшебник Мерлин появится на экране, протрубит в трубу (Announce) перелетит в верхний левый угол экрана и скажет: "Привет,для регистрации в системе нажмите эту кнопку!"

Пример с агентом
Карабас
Редактор для создания собственных агентов

Hosted by uCoz