stdafx.cpp 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. // stdafx.cpp : 只包括标准包含文件的源文件
  2. // TTSpeech.pch 将是预编译头
  3. // stdafx.obj 将包含预编译类型信息
  4. #include "stdafx.h"
  5. HINSTANCE g_hTTSpeeck = NULL;
  6. OpenSapi g_pOpenSapi = NULL;
  7. CloseSapi g_pCloseSapi = NULL;
  8. GetVoiceCount g_pGetVoiceCount = NULL;
  9. GetVoiceName g_pGetVoiceName = NULL;
  10. Text2Speech g_pText2Speeck = NULL;
  11. SetSpeech g_pSetSpeeck = NULL;
  12. Speak g_pSpeak = NULL;
  13. Play g_pPlay = NULL;
  14. BOOL LoadText2Speeck()
  15. {
  16. if ( g_hTTSpeeck == NULL )
  17. {
  18. g_hTTSpeeck = ::LoadLibrary(_T("Text2Speeck.dll"));
  19. if ( g_hTTSpeeck == NULL )
  20. return FALSE;
  21. g_pOpenSapi = (OpenSapi)::GetProcAddress(g_hTTSpeeck, "OpenSapi");
  22. g_pCloseSapi = (CloseSapi)::GetProcAddress(g_hTTSpeeck, "CloseSapi");
  23. g_pText2Speeck = (Text2Speech)::GetProcAddress(g_hTTSpeeck, "Text2Speech");
  24. g_pGetVoiceCount = (GetVoiceCount)::GetProcAddress(g_hTTSpeeck, "GetVoiceCount");
  25. g_pGetVoiceName = (GetVoiceName)::GetProcAddress(g_hTTSpeeck, "GetVoiceName");
  26. g_pSetSpeeck = (SetSpeech)::GetProcAddress(g_hTTSpeeck, "SetSpeech");
  27. g_pSpeak = (Speak)::GetProcAddress(g_hTTSpeeck, "Speak");
  28. g_pPlay = (Play)::GetProcAddress(g_hTTSpeeck, "Play");
  29. }
  30. return TRUE;
  31. }
  32. void FreeTex2Speeck()
  33. {
  34. if (g_hTTSpeeck != NULL)
  35. {
  36. FreeLibrary(g_hTTSpeeck);
  37. }
  38. g_pOpenSapi = NULL;
  39. g_pCloseSapi = NULL;
  40. g_pText2Speeck = NULL;
  41. g_pGetVoiceCount = NULL;
  42. g_pGetVoiceName = NULL;
  43. g_pSetSpeeck = NULL;
  44. g_pSpeak = NULL;
  45. }