| Revision | d556e315ce8bedd22d9663f13b0c06c0253716e4 (tree) |
|---|---|
| Time | 2012-02-22 23:27:26 |
| Author | qwerty2501 <riot313@gmai...> |
| Commiter | qwerty2501 |
Safari対応
| @@ -671,7 +671,7 @@ static VOID DebugOutW(LPCWSTR fileName,LPCWSTR functionName,UINT lineNo, UINT mo | ||
| 671 | 671 | } |
| 672 | 672 | |
| 673 | 673 | |
| 674 | -static VOID DebugOutMB(UINT codePage,LPSTR fileName,LPSTR functionName,UINT lineNo,UINT mode,UINT infoFlag,LPSTR pszFormat, ...){ | |
| 674 | +static VOID DebugOutMB(UINT codePage,LPSTR fileName,LPSTR functionName,UINT lineNo,UINT mode,UINT infoFlag,LPCSTR pszFormat, ...){ | |
| 675 | 675 | |
| 676 | 676 | |
| 677 | 677 | LPSTR szFormat = mode & LINEFEAD__DEBUGER__ ? "%s%s%s%s\r\n" : "%s%s%s%s"; |
| @@ -35,3 +35,5 @@ | ||
| 35 | 35 | #define IDR_COMMAND6 40005 |
| 36 | 36 | #define IDC_RADIO_CHROME 40006 |
| 37 | 37 | #define IDC_RADIO_IECM 40009 |
| 38 | +#define IDC_RADIO_SAFARI 40012 | |
| 39 | +#define IDC_RADIO_OPERA 40013 |
| @@ -63,18 +63,20 @@ IDC_NLITE MENU | ||
| 63 | 63 | // Dialog resources |
| 64 | 64 | // |
| 65 | 65 | LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL |
| 66 | -IDD_DIALOG_BROWSERTYPE DIALOG 0, 0, 123, 110 | |
| 66 | +IDD_DIALOG_BROWSERTYPE DIALOG 0, 0, 193, 159 | |
| 67 | 67 | STYLE DS_3DLOOK | DS_CENTER | DS_MODALFRAME | DS_SHELLFONT | WS_CAPTION | WS_VISIBLE | WS_POPUP | WS_SYSMENU |
| 68 | 68 | CAPTION "クッキーの設定" |
| 69 | 69 | FONT 8, "Ms Shell Dlg" |
| 70 | 70 | { |
| 71 | - AUTORADIOBUTTON "IE", IDC_RADIO_IE, 30, 29, 22, 8 | |
| 72 | - AUTORADIOBUTTON "FireFox", IDC_RADIO_FIREFOX, 30, 45, 39, 8 | |
| 73 | - AUTORADIOBUTTON "GoogleChrome", IDC_RADIO_CHROME, 30, 61, 62, 8 | |
| 74 | - AUTORADIOBUTTON "IEコンポーネント", IDC_RADIO_IECM, 30, 76, 61, 8 | |
| 75 | - PUSHBUTTON "OK", IDC_BUTTON_COOKIE_OK, 21, 91, 38, 14 | |
| 76 | - PUSHBUTTON "キャンセル", IDCANCEL, 63, 91, 33, 14 | |
| 71 | + AUTORADIOBUTTON "IE", IDC_RADIO_IE, 61, 29, 22, 8 | |
| 72 | + AUTORADIOBUTTON "FireFox", IDC_RADIO_FIREFOX, 61, 45, 39, 8 | |
| 73 | + AUTORADIOBUTTON "GoogleChrome", IDC_RADIO_CHROME, 61, 61, 62, 8 | |
| 74 | + AUTORADIOBUTTON "IEコンポーネント", IDC_RADIO_IECM, 60, 77, 61, 8 | |
| 75 | + PUSHBUTTON "OK", IDC_BUTTON_COOKIE_OK, 40, 136, 38, 14 | |
| 76 | + PUSHBUTTON "キャンセル", IDCANCEL, 105, 137, 33, 14 | |
| 77 | 77 | LTEXT "普段使用しているブラウザを指定してください", IDC_STATIC, 21, 6, 82, 22, SS_LEFT |
| 78 | + AUTORADIOBUTTON "Safari", IDC_RADIO_SAFARI, 60, 94, 33, 8 | |
| 79 | + AUTORADIOBUTTON "Opera", IDC_RADIO_OPERA, 60, 111, 35, 8 | |
| 78 | 80 | } |
| 79 | 81 | |
| 80 | 82 |
| @@ -307,9 +307,13 @@ VOID CNliteMainFrame::OnCookie(UINT uNotifyCode,int nID,HWND hWndCtl){ | ||
| 307 | 307 | nliteProperty.CookieSetting(); |
| 308 | 308 | } |
| 309 | 309 | |
| 310 | + try { | |
| 311 | + nicoVideoAuth.SetBrowserType(nliteProperty.gp.browserType); | |
| 312 | + } catch(NLIBException &e){ | |
| 310 | 313 | |
| 311 | - nicoVideoAuth.SetBrowserType(nliteProperty.gp.browserType); | |
| 314 | + MessageBox(e.what(),TEXT("クッキー取得失敗"),MB_OK | MB_ICONERROR); | |
| 312 | 315 | |
| 316 | + } | |
| 313 | 317 | |
| 314 | 318 | |
| 315 | 319 | } |
| @@ -32,7 +32,7 @@ VOID CNicoVideoAuth::SetBrowserType(BROWSERTYPE bt){ | ||
| 32 | 32 | throw NLIBException(TEXT("ニコニコ動画認証情報取得に失敗しました"),rslt,__LINE__,TEXT(__FILE__),TEXT(__FUNCTION__)); |
| 33 | 33 | } |
| 34 | 34 | |
| 35 | - InternetSetOption(0, INTERNET_OPTION_END_BROWSER_SESSION, NULL, 0); | |
| 35 | + return; | |
| 36 | 36 | } |
| 37 | 37 | |
| 38 | 38 |
| @@ -36,6 +36,18 @@ BOOL CCookieSettingWindow::OnInitDialog(CWindow wndFocus, LPARAM lInitParam){ | ||
| 36 | 36 | |
| 37 | 37 | break; |
| 38 | 38 | |
| 39 | + case BT_SAFARI: | |
| 40 | + | |
| 41 | + radio = GetDlgItem(IDC_RADIO_SAFARI); | |
| 42 | + break; | |
| 43 | + | |
| 44 | + | |
| 45 | + case BT_OPERA: | |
| 46 | + | |
| 47 | + radio = GetDlgItem(IDC_RADIO_OPERA); | |
| 48 | + | |
| 49 | + break; | |
| 50 | + | |
| 39 | 51 | default: |
| 40 | 52 | goto skip; |
| 41 | 53 | } |
| @@ -51,32 +63,41 @@ VOID CCookieSettingWindow::OnOK(UINT uNotifyCode, int nID, CWindow wndCtl){ | ||
| 51 | 63 | CButton firefoxRadio = GetDlgItem(IDC_RADIO_FIREFOX); |
| 52 | 64 | CButton chromeRadio = GetDlgItem(IDC_RADIO_CHROME); |
| 53 | 65 | CButton iecmRadio = GetDlgItem(IDC_RADIO_IECM); |
| 66 | + CButton safariRadio = GetDlgItem(IDC_RADIO_SAFARI); | |
| 67 | + CButton operaRadio = GetDlgItem(IDC_RADIO_OPERA); | |
| 54 | 68 | |
| 55 | 69 | if(ieRadio.GetCheck() == BST_CHECKED){ |
| 56 | 70 | |
| 57 | 71 | this->browserType = BT_INTERNET_EXPLORER; |
| 72 | + | |
| 73 | + }else if(firefoxRadio.GetCheck() == BST_CHECKED){ | |
| 58 | 74 | |
| 59 | - } | |
| 75 | + this->browserType = BT_FIRE_FOX; | |
| 60 | 76 | |
| 61 | - if(firefoxRadio.GetCheck() == BST_CHECKED){ | |
| 77 | + }else if(chromeRadio.GetCheck() == BST_CHECKED){ | |
| 62 | 78 | |
| 63 | - this->browserType = BT_FIRE_FOX; | |
| 79 | + this->browserType = BT_GOOGLE_CHROME; | |
| 64 | 80 | |
| 65 | - } | |
| 81 | + }else if(iecmRadio.GetCheck() == BST_CHECKED){ | |
| 66 | 82 | |
| 67 | - if(chromeRadio.GetCheck() == BST_CHECKED){ | |
| 83 | + this->browserType = BT_IE_COMPONENT; | |
| 68 | 84 | |
| 69 | - this->browserType = BT_GOOGLE_CHROME; | |
| 85 | + }else if(safariRadio.GetCheck() == BST_CHECKED){ | |
| 70 | 86 | |
| 71 | - } | |
| 87 | + this->browserType = BT_SAFARI; | |
| 72 | 88 | |
| 73 | - if(iecmRadio.GetCheck() == BST_CHECKED){ | |
| 89 | + } else if(operaRadio.GetCheck() == BST_CHECKED){ | |
| 74 | 90 | |
| 75 | - this->browserType = BT_IE_COMPONENT; | |
| 91 | + this->browserType = BT_OPERA; | |
| 92 | + | |
| 93 | + }else { | |
| 94 | + | |
| 95 | + this->browserType = BT_NOSETTING; | |
| 76 | 96 | |
| 77 | 97 | } |
| 78 | 98 | |
| 79 | 99 | |
| 100 | + | |
| 80 | 101 | EndDialog(nID); |
| 81 | 102 | } |
| 82 | 103 |
| @@ -24,8 +24,11 @@ static sqlite3_stmt *googleChromeCookieStmt; // | ||
| 24 | 24 | static CRITICAL_SECTION googleChromeCs; //グーグルクロームのクッキー取得用クリティカルセクション |
| 25 | 25 | |
| 26 | 26 | |
| 27 | +static WCHAR safariCookiePath[_MAX_PATH]; //サファリのクッキーパス | |
| 27 | 28 | |
| 28 | 29 | |
| 30 | +typedef COOKIE_RESULT (*SelfParseCookieCallBack)(LPCSTR targetString,LPCSTR targetEndPointer,LPWSTR cookie,SIZE_T bufSize,LPCWSTR key,LPCWSTR domein); | |
| 31 | + | |
| 29 | 32 | /// |
| 30 | 33 | ///クロームとファイアフォックスの共通処理 |
| 31 | 34 | /// |
| @@ -34,6 +37,11 @@ static INLINE VOID cookieStepExec(sqlite3_stmt *stmt,LPWSTR cooki,SIZE_T bufSize | ||
| 34 | 37 | |
| 35 | 38 | |
| 36 | 39 | /// |
| 40 | +///自力で解析す場合の共通処理 | |
| 41 | +/// | |
| 42 | +static INLINE COOKIE_RESULT SelfParseCookie(LPCWSTR cookieFilePath,LPWSTR cookie,SIZE_T bufSize,LPCWSTR key,LPCWSTR domein,SelfParseCookieCallBack callBack); | |
| 43 | + | |
| 44 | +/// | |
| 37 | 45 | ///インターネットエクスプローラーのクッキーを取得 |
| 38 | 46 | /// |
| 39 | 47 | static INLINE COOKIE_RESULT GetCookieInternetExplorer(LPWSTR cookie,SIZE_T bufSize, LPCWSTR key,LPCWSTR domein,BOOL isIE); |
| @@ -51,12 +59,12 @@ static INLINE COOKIE_RESULT GetCookieGoogleChrome(LPWSTR cookie,SIZE_T bufSize, | ||
| 51 | 59 | /// |
| 52 | 60 | ///オペラのクッキーを取得 |
| 53 | 61 | /// |
| 54 | -static INLINE COOKIE_RESULT GetCookieOpera(LPWSTR cookie,SIZE_T bufSize, LPCWSTR key,LPCWSTR domein); | |
| 62 | +static INLINE COOKIE_RESULT GetCookieOpera(LPCSTR targetString,LPCSTR targetEndPointer,LPWSTR cookie,SIZE_T bufSize, LPCWSTR key,LPCWSTR domein); | |
| 55 | 63 | |
| 56 | 64 | /// |
| 57 | 65 | ///サファリのクッキーを取得 |
| 58 | 66 | /// |
| 59 | -static INLINE COOKIE_RESULT GetCookieSafari(LPWSTR cookie,SIZE_T bufSize, LPCWSTR key,LPCWSTR domein); | |
| 67 | +static INLINE COOKIE_RESULT GetCookieSafari(LPCSTR targetString,LPCSTR targetEndPointer,LPWSTR cookie,SIZE_T bufSize, LPCWSTR key,LPCWSTR domein); | |
| 60 | 68 | |
| 61 | 69 | #define FIREFOX_GET_COOKIE_SQL "SELECT a.name, a.value FROM moz_cookies a WHERE a.name = ?1 AND a.baseDomain = ?2 " //ファイアフォックスクッキー取得用SQL |
| 62 | 70 |
| @@ -76,7 +84,7 @@ VOID InitializeShareCookie(LPCWSTR appDataPath,LPCWSTR localAppDataPath){ | ||
| 76 | 84 | |
| 77 | 85 | |
| 78 | 86 | LPWSTR index; |
| 79 | - | |
| 87 | + | |
| 80 | 88 | |
| 81 | 89 | wcscpy(fireFoxProfilesPath,appDataPath); |
| 82 | 90 | wcscat(fireFoxProfilesPath,L"Mozilla\\Firefox\\profiles.ini"); |
| @@ -155,6 +163,12 @@ VOID InitializeShareCookie(LPCWSTR appDataPath,LPCWSTR localAppDataPath){ | ||
| 155 | 163 | |
| 156 | 164 | } |
| 157 | 165 | |
| 166 | + | |
| 167 | + //サファリの設定 | |
| 168 | + | |
| 169 | + wcscpy(safariCookiePath,appDataPath); | |
| 170 | + wcscat(safariCookiePath,L"Apple Computer\\Safari\\Cookies\\Cookies.binarycookies"); | |
| 171 | + | |
| 158 | 172 | return; |
| 159 | 173 | } |
| 160 | 174 |
| @@ -201,14 +215,13 @@ COOKIE_RESULT GetCookie(BROWSERTYPE browserType,LPWSTR cookie,SIZE_T bufSize, LP | ||
| 201 | 215 | //オペラの場合 |
| 202 | 216 | case BT_OPERA: |
| 203 | 217 | |
| 204 | - | |
| 205 | - return GetCookieOpera(cookie,bufSize,key,domein); | |
| 218 | + return SelfParseCookie(NULL,cookie,bufSize,key,domein,GetCookieOpera); | |
| 219 | + | |
| 206 | 220 | |
| 207 | 221 | //サファリの場合 |
| 208 | 222 | case BT_SAFARI: |
| 209 | - | |
| 210 | - return GetCookieSafari(cookie,bufSize,key,domein); | |
| 211 | - | |
| 223 | + return SelfParseCookie(safariCookiePath,cookie,bufSize,key,domein,GetCookieSafari); | |
| 224 | + | |
| 212 | 225 | |
| 213 | 226 | //IEコンポーネントの場合 |
| 214 | 227 | case BT_IE_COMPONENT: |
| @@ -633,7 +646,9 @@ end: | ||
| 633 | 646 | /// |
| 634 | 647 | ///オペラのクッキーを取得 |
| 635 | 648 | /// |
| 636 | -static INLINE COOKIE_RESULT GetCookieOpera(LPWSTR cookies,SIZE_T bufSize, LPCWSTR key,LPCWSTR domein){ | |
| 649 | +static INLINE COOKIE_RESULT GetCookieOpera(LPCSTR targetString,LPCSTR targetEndPointer,LPWSTR cookies,SIZE_T bufSize, LPCWSTR key,LPCWSTR domein){ | |
| 650 | + | |
| 651 | + | |
| 637 | 652 | |
| 638 | 653 | return COOKIE_ERR_DETAIL_NOTFOUND; |
| 639 | 654 | } |
| @@ -641,10 +656,70 @@ static INLINE COOKIE_RESULT GetCookieOpera(LPWSTR cookies,SIZE_T bufSize, LPCWST | ||
| 641 | 656 | /// |
| 642 | 657 | ///サファリのクッキーを取得 |
| 643 | 658 | /// |
| 644 | -static INLINE COOKIE_RESULT GetCookieSafari(LPWSTR cookies,SIZE_T bufSize, LPCWSTR key,LPCWSTR domein){ | |
| 659 | +static INLINE COOKIE_RESULT GetCookieSafari(LPCSTR targetString,LPCSTR targetEndPointer,LPWSTR cookies,SIZE_T bufSize, LPCWSTR key,LPCWSTR domein){ | |
| 660 | + COOKIE_RESULT result = COOKIE_ERR_UNKNOWN; | |
| 661 | + CHAR mb_key[_MAX_PATH] = "A"; | |
| 662 | + CHAR mb_domein[_MAX_PATH] = "."; | |
| 663 | + LPCSTR cookiePointer; | |
| 664 | + LPCSTR domeinPointer; | |
| 665 | + SIZE_T mb_keyLen; | |
| 666 | + | |
| 667 | + if(ARRAY_LENGTH(mb_key) < GetLenToMB(CP_THREAD_ACP,key) - 1){ | |
| 668 | + | |
| 669 | + goto keybuffbigerr; | |
| 645 | 670 | |
| 671 | + } else if(ARRAY_LENGTH(mb_domein) - 1 < GetLenToMB(CP_THREAD_ACP,domein) ){ | |
| 646 | 672 | |
| 647 | - return COOKIE_ERR_DETAIL_NOTFOUND; | |
| 673 | + goto domeinbuffbigerr; | |
| 674 | + | |
| 675 | + } | |
| 676 | + | |
| 677 | + WideToMB(CP_THREAD_ACP,key,mb_key + 1,ARRAY_LENGTH(mb_key) - 1); | |
| 678 | + WideToMB(CP_THREAD_ACP,domein,mb_domein + 1,ARRAY_LENGTH(mb_domein) - 1); | |
| 679 | + mb_keyLen = strlen(mb_key); | |
| 680 | + | |
| 681 | + for(;targetString < targetEndPointer;targetString += strlen(targetString) + 1){ | |
| 682 | + | |
| 683 | + if(strstr(targetString,mb_key) != NULL){ | |
| 684 | + | |
| 685 | + cookiePointer = targetString + strlen(targetString) + 1; | |
| 686 | + domeinPointer = cookiePointer + strlen(cookiePointer) + 1; | |
| 687 | + | |
| 688 | + if(strcmp(mb_domein,domeinPointer) == 0){ | |
| 689 | + | |
| 690 | + if(((INT_PTR)bufSize) < GetLenToWide(CP_THREAD_ACP,cookiePointer) + wcslen(key) + 1){ | |
| 691 | + | |
| 692 | + goto cookiebuffbigerr; | |
| 693 | + } | |
| 694 | + wcscpy(cookies,key); | |
| 695 | + cookies += wcslen(cookies); | |
| 696 | + cookies[0] = L'='; | |
| 697 | + cookies++; | |
| 698 | + | |
| 699 | + MBToWide(CP_THREAD_ACP,cookiePointer,cookies,bufSize); | |
| 700 | + result = COOKIE_ERR_OK; | |
| 701 | + } | |
| 702 | + } | |
| 703 | + | |
| 704 | + } | |
| 705 | + | |
| 706 | +end: | |
| 707 | + | |
| 708 | + | |
| 709 | + return result; | |
| 710 | + | |
| 711 | + | |
| 712 | +keybuffbigerr: | |
| 713 | + result = COOKIE_ERR_DETAIL_URL_TOOBIG; | |
| 714 | + goto end; | |
| 715 | + | |
| 716 | +domeinbuffbigerr: | |
| 717 | + result = COOKIE_ERR_DETAIL_DOMEIN_TOOBIG; | |
| 718 | + goto end; | |
| 719 | + | |
| 720 | +cookiebuffbigerr: | |
| 721 | + result = COOKIEERR_DETAIL_RESULT_TOOBIG; | |
| 722 | + goto end; | |
| 648 | 723 | } |
| 649 | 724 | |
| 650 | 725 | /// |
| @@ -741,4 +816,41 @@ static INLINE VOID cookieStepExec(sqlite3_stmt *stmt,LPWSTR cookie,SIZE_T bufSiz | ||
| 741 | 816 | return; |
| 742 | 817 | |
| 743 | 818 | |
| 819 | +} | |
| 820 | + | |
| 821 | + | |
| 822 | +static COOKIE_RESULT SelfParseCookie(LPCWSTR cookieFilePath,LPWSTR cookie,SIZE_T bufSize,LPCWSTR key,LPCWSTR domein,SelfParseCookieCallBack callBack){ | |
| 823 | + | |
| 824 | + COOKIE_RESULT result = COOKIE_ERR_UNKNOWN; | |
| 825 | + | |
| 826 | + HANDLE hCookieFile = CreateFile(cookieFilePath,GENERIC_READ,FILE_SHARE_READ,NULL,OPEN_EXISTING,0,NULL); | |
| 827 | + if(hCookieFile == INVALID_HANDLE_VALUE ){ | |
| 828 | + | |
| 829 | + goto fileopenerr; | |
| 830 | + } | |
| 831 | + { | |
| 832 | + DWORD readSize; | |
| 833 | + DWORD highSize; | |
| 834 | + DWORD lowSize = GetFileSize(hCookieFile,&highSize); | |
| 835 | + SIZE_T bufferSize = MAKELONG(lowSize,highSize); | |
| 836 | + LPSTR buffer = (LPSTR)malloc(bufferSize); | |
| 837 | + | |
| 838 | + ReadFile(hCookieFile,buffer,bufferSize,&readSize,NULL); | |
| 839 | + | |
| 840 | + | |
| 841 | + | |
| 842 | + | |
| 843 | + result = callBack(buffer,buffer + (bufferSize / sizeof(CHAR)),cookie,bufSize,key,domein); | |
| 844 | + free(buffer); | |
| 845 | + } | |
| 846 | + | |
| 847 | +end: | |
| 848 | + | |
| 849 | + CloseHandle(hCookieFile); | |
| 850 | + | |
| 851 | + return result; | |
| 852 | + | |
| 853 | +fileopenerr: | |
| 854 | + result = COOKIE_ERR_OPEN_FAILED; | |
| 855 | + goto end; | |
| 744 | 856 | } |
| \ No newline at end of file |
| @@ -84,8 +84,11 @@ extern COOKIE_RESULT GetCookie(BROWSERTYPE browserType,LPWSTR cookie,SIZE_T bufS | ||
| 84 | 84 | ///未定義のブラウザタイプが設定された |
| 85 | 85 | #define COOKIE_ERR_UNDEFINED_BROWSERTYPE ((COOKIE_RESULT) 11) |
| 86 | 86 | |
| 87 | +///クッキーファイルを開くことが出来なかった | |
| 88 | +#define COOKIE_ERR_OPEN_FAILED ((COOKIE_RESULT) 12) | |
| 87 | 89 | |
| 88 | - | |
| 90 | +///ドメイン文字列の長さが長すぎる | |
| 91 | +#define COOKIE_ERR_DETAIL_DOMEIN_TOOBIG ((COOKIE_RESULT) 13) | |
| 89 | 92 | |
| 90 | 93 | |
| 91 | 94 |
| @@ -108,6 +108,7 @@ void COpenJtalkCore::Load( const TChar_P in_voiceDataDir,const TChar_P in_dictin | ||
| 108 | 108 | |
| 109 | 109 | void COpenJtalkCore::Synthesis( const TChar_P txt, FILE * wavfp, FILE * logfp){ |
| 110 | 110 | CStringA txtA(txt); |
| 111 | + idumpln_mb(CP_THREAD_ACP,"synthesis:%s",(LPCSTR)txtA); | |
| 111 | 112 | ::OpenJTalk_synthesis(&this->openJtalk_internal,(Char_P)(const char*)txtA,wavfp,logfp); |
| 112 | 113 | } |
| 113 | 114 |
| @@ -38,10 +38,10 @@ | ||
| 38 | 38 | </ImportGroup> |
| 39 | 39 | <PropertyGroup Label="UserMacros" /> |
| 40 | 40 | <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
| 41 | - <IncludePath>$(solutiondir)open_jtalk_lib;$(IncludePath)</IncludePath> | |
| 41 | + <IncludePath>$(solutiondir)open_jtalk_lib;$(solutiondir)include;$(IncludePath)</IncludePath> | |
| 42 | 42 | </PropertyGroup> |
| 43 | 43 | <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> |
| 44 | - <IncludePath>$(solutiondir)open_jtalk_lib;$(IncludePath)</IncludePath> | |
| 44 | + <IncludePath>$(solutiondir)open_jtalk_lib;$(solutiondir)include;$(IncludePath)</IncludePath> | |
| 45 | 45 | </PropertyGroup> |
| 46 | 46 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
| 47 | 47 | <ClCompile> |
| @@ -1,7 +1,7 @@ | ||
| 1 | 1 | #pragma once |
| 2 | 2 | |
| 3 | 3 | #include <open_jtalk_lib.h> |
| 4 | - | |
| 4 | +#include <qwerty\windebuger.h> | |
| 5 | 5 | |
| 6 | 6 | #include "speaker_define.h" |
| 7 | 7 | #include "speaker.h" |
| @@ -6,7 +6,9 @@ | ||
| 6 | 6 | #pragma once |
| 7 | 7 | |
| 8 | 8 | #include "targetver.h" |
| 9 | - | |
| 9 | +#define _CRT_SECURE_NO_WARNINGS 1 //vc++のおせっかいな警告を消す | |
| 10 | +#define _CRT_NON_CONFORMING_SWPRINTFS 1 //vc++のおせっかいな警告を消す | |
| 11 | +#define WINDEBUGER_NOPRINTING //デバッグ出力をコンソールに表示したくない場合定義する | |
| 10 | 12 | #define WIN32_LEAN_AND_MEAN // Windows ヘッダーから使用されていない部分を除外します。 |
| 11 | 13 | |
| 12 | 14 |