Новые книги

Тамара Воротынцева – директор по развитию тренинговой компании «БИЗНЕС ПАРТНЕР» (Москва). Практикующий бизнес-тренер, автор книги «Строим систему обучения персонала» и публикаций в деловых изданиях России, Казахстана и Украины. Создатель интернет-рассылки: «E-mail переписка в бизнесе» на сервере subscribe.ru! Книга является практическим пособием для деловых людей, ведущих активную переписку с клиентами и партнерами. В ней представлены инструменты, которые помогут сделать электронное общение эффективным, оптимальным по времени и результату, максимально соответствующим нормам и правилам, принятым в современном деловом сообществе. Автор дает практические советы, иллюстрирует свои наблюдения случаями из жизни, приводит аргументированные выводы. Текст книги богат узнаваемыми примерами реальной деловой переписки. Автор делится своими наблюдениями, приемами, «хитростями», которые способны существенно повлиять на эффективность и результативность делового электронного письма. Если вы – деловой человек и для вас важно писать оперативно, лаконично, грамотно, в соответствии в правилами хорошего делового тона, – эта книга станет вам надежным помощником.
PR-коммуникации – ключевой способ создания имиджа компании и управления им. Если вы понимаете, чем пресс-релиз отличается от милицейского протокола и почему стоит отказаться от желтых тизерных заголовков, если вы хотите, чтобы PR-тексты всегда давали именно тот эффект, который вам нужен, эта книга для вас. Она поможет взглянуть на привычные PR-инструменты под новым углом зрения, сделать ваши тексты более качественными и максимально отвечающими поставленным целям. Руководители пресс-служб и PR-отделов получат уникальный инструмент для обучения и контроля персонала.

Книга подойдет руководителем и сотрудникам пресс-служб, PR-отделов и PR-департаментов; пресс-секретарям и специалистам по связям с общественностью; сотрудникам PR-агентств и фрилансерам, занимающимся продвижением клиентов; новичкам в профессии и тем, кто только готовится посвятить себя карьере в области PR.

FAQ Part 5

Visual C++ / FAQ Part 5

Как сделать какие-то действия дождавшись завершения процесса?
1. Открывать файл для записи.
2. Выяснить hWnd запушенной программы и использовать функцию IsWindow(Handle:hWnd), которая определяет, существует ли он.
3. Взять hProcess, возвращаемый CreateProcess, и возпользоваться функцией WaitForSingleObject с hProcess в качестве параметра.

Как отследить нажата ли в текущий момент кнопка мыши с помощью API?
Смотрите GetKeyState(int nVirtKeyCode).
Коды левой, правой и средней кнопок мыши соотверственно: VK_LBUTTON,VK_RBUTTON,VK_MBUTTON или
GetAsyncKeyState(VK_LBUTTON) (соответственно, VK_RBUTTON и VK_MBUTTON).

С помощью каких механизмов две программы могут обмениваться данными?
1. OLE
2. Файлы проецируемые в память
3. Секции данных, pазделяемые несколькими пpоцессами
4. WM_COPYDATA
5. Именованные (и неименованные) каналы или pipes
6. Почтовые ячейки или mailslots
7. DDE(Dynamic data exchange).

Как блокировать Alt+Tab во время выполнения программы?

CMainFrame::CMainFrame()
{
 m_nHotKeyID = 100;

 BOOL m_isKeyRegistered = RegisterHotKey(GetSafeHwnd(), m_nHotKeyID,
  MOD_ALT, VK_TAB);

 ASSERT(m_isKeyRegistered != FALSE);
}

//Убираем блокировку при выходе из приложения
CMainFrame::~CMainFrame()
{
 BOOL m_iskeyUnregistered = UnregisterHotKey(GetSafeHwnd(), m_nHotKeyID);
 ASSERT(m_isKeyUnregistered != FALSE);
}
Как опpеделить какой service pack установлен на NT ?
Смотрите функцию GetVersionEx.

Как узнать наличие юзера сервере NT ?
NET_API_STATUS x=NetUserChangePassword(LPWSTR compname,LPWSTR username,
LPWSTR oldpassword,LPWSTR newpassword) - где newpassword=oldpassword.
По возвращаемому значению делаем свои выводы.Дешево и сердито.И страшных прав не надо как,например,на LogonUser().

Как средствами API реализовать в RichEdit разноцветный текст?

CHARFORMAT cf;
cf.cbSize = sizeof(cf);
cf.dwMask = CFM_COLOR;
cf.crTextColor = ...; file://rgb
SendMessage(hwndRtf,EM_SETCHARFORMAT,SCF_SELECTION,(LPARAM)&cf);
Как пользоваться элементом управления похожим на открытие файлов, только все это для каталогов?
Используем API( SHGetPathFromIDList ):

LPITEMIDLIS lpItemDList;
char  szWorkDir[MAX_LEN];

BROWSEINFO bi = {hWnd,    NULL,   m_szWorkDir,
   "Выберите каталог",
   BIF_DONTGOBELOWDOMAIN,
   NULL,
   NULL,
   0
  };
  if(!(lpItemDList=SHBrowseForFolder(&bi))) return 0;
  SHGetPathFromIDList(lpItemDList, szWorkDir);
В szWorkDir получаешь выбранный каталог

Есть ли функции API, работающие с папками и файлами вместе? Как перемещать, переименовывать и копировать папки вместе с файлами, которые находятся внутри?
Смотрите функцию SHFileOperation.

Как с помощью API организовать запись с CD-ROM'а или микрофона?
Смотрите функции: waveInOpen waveInPrepareHeader waveInAddBuffer waveInStart.Только обязательно посмотрите примеры из MSDN.
Prev. Part Оглавление Next Part