}
-static VOID DebugOutMB(UINT codePage,LPSTR fileName,LPSTR functionName,UINT lineNo,UINT mode,UINT infoFlag,LPSTR pszFormat, ...){
+static VOID DebugOutMB(UINT codePage,LPSTR fileName,LPSTR functionName,UINT lineNo,UINT mode,UINT infoFlag,LPCSTR pszFormat, ...){
LPSTR szFormat = mode & LINEFEAD__DEBUGER__ ? "%s%s%s%s\r\n" : "%s%s%s%s";
#define IDR_COMMAND6 40005
#define IDC_RADIO_CHROME 40006
#define IDC_RADIO_IECM 40009
+#define IDC_RADIO_SAFARI 40012
+#define IDC_RADIO_OPERA 40013
// Dialog resources
//
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
-IDD_DIALOG_BROWSERTYPE DIALOG 0, 0, 123, 110
+IDD_DIALOG_BROWSERTYPE DIALOG 0, 0, 193, 159
STYLE DS_3DLOOK | DS_CENTER | DS_MODALFRAME | DS_SHELLFONT | WS_CAPTION | WS_VISIBLE | WS_POPUP | WS_SYSMENU
CAPTION "\83N\83b\83L\81[\82Ì\90Ý\92è"
FONT 8, "Ms Shell Dlg"
{
- AUTORADIOBUTTON "IE", IDC_RADIO_IE, 30, 29, 22, 8
- AUTORADIOBUTTON "FireFox", IDC_RADIO_FIREFOX, 30, 45, 39, 8
- AUTORADIOBUTTON "GoogleChrome", IDC_RADIO_CHROME, 30, 61, 62, 8
- AUTORADIOBUTTON "IE\83R\83\93\83|\81[\83l\83\93\83g", IDC_RADIO_IECM, 30, 76, 61, 8
- PUSHBUTTON "OK", IDC_BUTTON_COOKIE_OK, 21, 91, 38, 14
- PUSHBUTTON "\83L\83\83\83\93\83Z\83\8b", IDCANCEL, 63, 91, 33, 14
+ AUTORADIOBUTTON "IE", IDC_RADIO_IE, 61, 29, 22, 8
+ AUTORADIOBUTTON "FireFox", IDC_RADIO_FIREFOX, 61, 45, 39, 8
+ AUTORADIOBUTTON "GoogleChrome", IDC_RADIO_CHROME, 61, 61, 62, 8
+ AUTORADIOBUTTON "IE\83R\83\93\83|\81[\83l\83\93\83g", IDC_RADIO_IECM, 60, 77, 61, 8
+ PUSHBUTTON "OK", IDC_BUTTON_COOKIE_OK, 40, 136, 38, 14
+ PUSHBUTTON "\83L\83\83\83\93\83Z\83\8b", IDCANCEL, 105, 137, 33, 14
LTEXT "\95\81\92i\8eg\97p\82µ\82Ä\82¢\82é\83u\83\89\83E\83U\82ð\8ew\92è\82µ\82Ä\82\82¾\82³\82¢", IDC_STATIC, 21, 6, 82, 22, SS_LEFT
+ AUTORADIOBUTTON "Safari", IDC_RADIO_SAFARI, 60, 94, 33, 8
+ AUTORADIOBUTTON "Opera", IDC_RADIO_OPERA, 60, 111, 35, 8
}
nliteProperty.CookieSetting();
}
+ try {
+ nicoVideoAuth.SetBrowserType(nliteProperty.gp.browserType);
+ } catch(NLIBException &e){
- nicoVideoAuth.SetBrowserType(nliteProperty.gp.browserType);
+ MessageBox(e.what(),TEXT("\83N\83b\83L\81[\8eæ\93¾\8e¸\94s"),MB_OK | MB_ICONERROR);
+ }
}
throw NLIBException(TEXT("\83j\83R\83j\83R\93®\89æ\94F\8fØ\8fî\95ñ\8eæ\93¾\82É\8e¸\94s\82µ\82Ü\82µ\82½"),rslt,__LINE__,TEXT(__FILE__),TEXT(__FUNCTION__));
}
- InternetSetOption(0, INTERNET_OPTION_END_BROWSER_SESSION, NULL, 0);
+ return;
}
break;
+ case BT_SAFARI:
+
+ radio = GetDlgItem(IDC_RADIO_SAFARI);
+ break;
+
+
+ case BT_OPERA:
+
+ radio = GetDlgItem(IDC_RADIO_OPERA);
+
+ break;
+
default:
goto skip;
}
CButton firefoxRadio = GetDlgItem(IDC_RADIO_FIREFOX);
CButton chromeRadio = GetDlgItem(IDC_RADIO_CHROME);
CButton iecmRadio = GetDlgItem(IDC_RADIO_IECM);
+ CButton safariRadio = GetDlgItem(IDC_RADIO_SAFARI);
+ CButton operaRadio = GetDlgItem(IDC_RADIO_OPERA);
if(ieRadio.GetCheck() == BST_CHECKED){
this->browserType = BT_INTERNET_EXPLORER;
+
+ }else if(firefoxRadio.GetCheck() == BST_CHECKED){
- }
+ this->browserType = BT_FIRE_FOX;
- if(firefoxRadio.GetCheck() == BST_CHECKED){
+ }else if(chromeRadio.GetCheck() == BST_CHECKED){
- this->browserType = BT_FIRE_FOX;
+ this->browserType = BT_GOOGLE_CHROME;
- }
+ }else if(iecmRadio.GetCheck() == BST_CHECKED){
- if(chromeRadio.GetCheck() == BST_CHECKED){
+ this->browserType = BT_IE_COMPONENT;
- this->browserType = BT_GOOGLE_CHROME;
+ }else if(safariRadio.GetCheck() == BST_CHECKED){
- }
+ this->browserType = BT_SAFARI;
- if(iecmRadio.GetCheck() == BST_CHECKED){
+ } else if(operaRadio.GetCheck() == BST_CHECKED){
- this->browserType = BT_IE_COMPONENT;
+ this->browserType = BT_OPERA;
+
+ }else {
+
+ this->browserType = BT_NOSETTING;
}
+
EndDialog(nID);
}
static CRITICAL_SECTION googleChromeCs; //\83O\81[\83O\83\8b\83N\83\8d\81[\83\80\82Ì\83N\83b\83L\81[\8eæ\93¾\97p\83N\83\8a\83e\83B\83J\83\8b\83Z\83N\83V\83\87\83\93
+static WCHAR safariCookiePath[_MAX_PATH]; //\83T\83t\83@\83\8a\82Ì\83N\83b\83L\81[\83p\83X
+typedef COOKIE_RESULT (*SelfParseCookieCallBack)(LPCSTR targetString,LPCSTR targetEndPointer,LPWSTR cookie,SIZE_T bufSize,LPCWSTR key,LPCWSTR domein);
+
///
///\83N\83\8d\81[\83\80\82Æ\83t\83@\83C\83A\83t\83H\83b\83N\83X\82Ì\8b¤\92Ê\8f\88\97\9d
///
///
+///\8e©\97Í\82Å\89ð\90Í\82·\8fê\8d\87\82Ì\8b¤\92Ê\8f\88\97\9d
+///
+static INLINE COOKIE_RESULT SelfParseCookie(LPCWSTR cookieFilePath,LPWSTR cookie,SIZE_T bufSize,LPCWSTR key,LPCWSTR domein,SelfParseCookieCallBack callBack);
+
+///
///\83C\83\93\83^\81[\83l\83b\83g\83G\83N\83X\83v\83\8d\81[\83\89\81[\82Ì\83N\83b\83L\81[\82ð\8eæ\93¾
///
static INLINE COOKIE_RESULT GetCookieInternetExplorer(LPWSTR cookie,SIZE_T bufSize, LPCWSTR key,LPCWSTR domein,BOOL isIE);
///
///\83I\83y\83\89\82Ì\83N\83b\83L\81[\82ð\8eæ\93¾
///
-static INLINE COOKIE_RESULT GetCookieOpera(LPWSTR cookie,SIZE_T bufSize, LPCWSTR key,LPCWSTR domein);
+static INLINE COOKIE_RESULT GetCookieOpera(LPCSTR targetString,LPCSTR targetEndPointer,LPWSTR cookie,SIZE_T bufSize, LPCWSTR key,LPCWSTR domein);
///
///\83T\83t\83@\83\8a\82Ì\83N\83b\83L\81[\82ð\8eæ\93¾
///
-static INLINE COOKIE_RESULT GetCookieSafari(LPWSTR cookie,SIZE_T bufSize, LPCWSTR key,LPCWSTR domein);
+static INLINE COOKIE_RESULT GetCookieSafari(LPCSTR targetString,LPCSTR targetEndPointer,LPWSTR cookie,SIZE_T bufSize, LPCWSTR key,LPCWSTR domein);
#define FIREFOX_GET_COOKIE_SQL "SELECT a.name, a.value FROM moz_cookies a WHERE a.name = ?1 AND a.baseDomain = ?2 " //\83t\83@\83C\83A\83t\83H\83b\83N\83X\83N\83b\83L\81[\8eæ\93¾\97pSQL
LPWSTR index;
-
+
wcscpy(fireFoxProfilesPath,appDataPath);
wcscat(fireFoxProfilesPath,L"Mozilla\\Firefox\\profiles.ini");
}
+
+ //\83T\83t\83@\83\8a\82Ì\90Ý\92è
+
+ wcscpy(safariCookiePath,appDataPath);
+ wcscat(safariCookiePath,L"Apple Computer\\Safari\\Cookies\\Cookies.binarycookies");
+
return;
}
//\83I\83y\83\89\82Ì\8fê\8d\87
case BT_OPERA:
-
- return GetCookieOpera(cookie,bufSize,key,domein);
+ return SelfParseCookie(NULL,cookie,bufSize,key,domein,GetCookieOpera);
+
//\83T\83t\83@\83\8a\82Ì\8fê\8d\87
case BT_SAFARI:
-
- return GetCookieSafari(cookie,bufSize,key,domein);
-
+ return SelfParseCookie(safariCookiePath,cookie,bufSize,key,domein,GetCookieSafari);
+
//IE\83R\83\93\83|\81[\83l\83\93\83g\82Ì\8fê\8d\87
case BT_IE_COMPONENT:
///
///\83I\83y\83\89\82Ì\83N\83b\83L\81[\82ð\8eæ\93¾
///
-static INLINE COOKIE_RESULT GetCookieOpera(LPWSTR cookies,SIZE_T bufSize, LPCWSTR key,LPCWSTR domein){
+static INLINE COOKIE_RESULT GetCookieOpera(LPCSTR targetString,LPCSTR targetEndPointer,LPWSTR cookies,SIZE_T bufSize, LPCWSTR key,LPCWSTR domein){
+
+
return COOKIE_ERR_DETAIL_NOTFOUND;
}
///
///\83T\83t\83@\83\8a\82Ì\83N\83b\83L\81[\82ð\8eæ\93¾
///
-static INLINE COOKIE_RESULT GetCookieSafari(LPWSTR cookies,SIZE_T bufSize, LPCWSTR key,LPCWSTR domein){
+static INLINE COOKIE_RESULT GetCookieSafari(LPCSTR targetString,LPCSTR targetEndPointer,LPWSTR cookies,SIZE_T bufSize, LPCWSTR key,LPCWSTR domein){
+ COOKIE_RESULT result = COOKIE_ERR_UNKNOWN;
+ CHAR mb_key[_MAX_PATH] = "A";
+ CHAR mb_domein[_MAX_PATH] = ".";
+ LPCSTR cookiePointer;
+ LPCSTR domeinPointer;
+ SIZE_T mb_keyLen;
+
+ if(ARRAY_LENGTH(mb_key) < GetLenToMB(CP_THREAD_ACP,key) - 1){
+
+ goto keybuffbigerr;
+ } else if(ARRAY_LENGTH(mb_domein) - 1 < GetLenToMB(CP_THREAD_ACP,domein) ){
- return COOKIE_ERR_DETAIL_NOTFOUND;
+ goto domeinbuffbigerr;
+
+ }
+
+ WideToMB(CP_THREAD_ACP,key,mb_key + 1,ARRAY_LENGTH(mb_key) - 1);
+ WideToMB(CP_THREAD_ACP,domein,mb_domein + 1,ARRAY_LENGTH(mb_domein) - 1);
+ mb_keyLen = strlen(mb_key);
+
+ for(;targetString < targetEndPointer;targetString += strlen(targetString) + 1){
+
+ if(strstr(targetString,mb_key) != NULL){
+
+ cookiePointer = targetString + strlen(targetString) + 1;
+ domeinPointer = cookiePointer + strlen(cookiePointer) + 1;
+
+ if(strcmp(mb_domein,domeinPointer) == 0){
+
+ if(((INT_PTR)bufSize) < GetLenToWide(CP_THREAD_ACP,cookiePointer) + wcslen(key) + 1){
+
+ goto cookiebuffbigerr;
+ }
+ wcscpy(cookies,key);
+ cookies += wcslen(cookies);
+ cookies[0] = L'=';
+ cookies++;
+
+ MBToWide(CP_THREAD_ACP,cookiePointer,cookies,bufSize);
+ result = COOKIE_ERR_OK;
+ }
+ }
+
+ }
+
+end:
+
+
+ return result;
+
+
+keybuffbigerr:
+ result = COOKIE_ERR_DETAIL_URL_TOOBIG;
+ goto end;
+
+domeinbuffbigerr:
+ result = COOKIE_ERR_DETAIL_DOMEIN_TOOBIG;
+ goto end;
+
+cookiebuffbigerr:
+ result = COOKIEERR_DETAIL_RESULT_TOOBIG;
+ goto end;
}
///
return;
+}
+
+
+static COOKIE_RESULT SelfParseCookie(LPCWSTR cookieFilePath,LPWSTR cookie,SIZE_T bufSize,LPCWSTR key,LPCWSTR domein,SelfParseCookieCallBack callBack){
+
+ COOKIE_RESULT result = COOKIE_ERR_UNKNOWN;
+
+ HANDLE hCookieFile = CreateFile(cookieFilePath,GENERIC_READ,FILE_SHARE_READ,NULL,OPEN_EXISTING,0,NULL);
+ if(hCookieFile == INVALID_HANDLE_VALUE ){
+
+ goto fileopenerr;
+ }
+ {
+ DWORD readSize;
+ DWORD highSize;
+ DWORD lowSize = GetFileSize(hCookieFile,&highSize);
+ SIZE_T bufferSize = MAKELONG(lowSize,highSize);
+ LPSTR buffer = (LPSTR)malloc(bufferSize);
+
+ ReadFile(hCookieFile,buffer,bufferSize,&readSize,NULL);
+
+
+
+
+ result = callBack(buffer,buffer + (bufferSize / sizeof(CHAR)),cookie,bufSize,key,domein);
+ free(buffer);
+ }
+
+end:
+
+ CloseHandle(hCookieFile);
+
+ return result;
+
+fileopenerr:
+ result = COOKIE_ERR_OPEN_FAILED;
+ goto end;
}
\ No newline at end of file
///\96¢\92è\8b`\82Ì\83u\83\89\83E\83U\83^\83C\83v\82ª\90Ý\92è\82³\82ê\82½
#define COOKIE_ERR_UNDEFINED_BROWSERTYPE ((COOKIE_RESULT) 11)
+///\83N\83b\83L\81[\83t\83@\83C\83\8b\82ð\8aJ\82\82±\82Æ\82ª\8fo\97\88\82È\82©\82Á\82½
+#define COOKIE_ERR_OPEN_FAILED ((COOKIE_RESULT) 12)
-
+///\83h\83\81\83C\83\93\95¶\8e\9a\97ñ\82Ì\92·\82³\82ª\92·\82·\82¬\82é
+#define COOKIE_ERR_DETAIL_DOMEIN_TOOBIG ((COOKIE_RESULT) 13)
void COpenJtalkCore::Synthesis( const TChar_P txt, FILE * wavfp, FILE * logfp){
CStringA txtA(txt);
+ idumpln_mb(CP_THREAD_ACP,"synthesis:%s",(LPCSTR)txtA);
::OpenJTalk_synthesis(&this->openJtalk_internal,(Char_P)(const char*)txtA,wavfp,logfp);
}
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <IncludePath>$(solutiondir)open_jtalk_lib;$(IncludePath)</IncludePath>
+ <IncludePath>$(solutiondir)open_jtalk_lib;$(solutiondir)include;$(IncludePath)</IncludePath>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <IncludePath>$(solutiondir)open_jtalk_lib;$(IncludePath)</IncludePath>
+ <IncludePath>$(solutiondir)open_jtalk_lib;$(solutiondir)include;$(IncludePath)</IncludePath>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
#pragma once
#include <open_jtalk_lib.h>
-
+#include <qwerty\windebuger.h>
#include "speaker_define.h"
#include "speaker.h"
#pragma once
#include "targetver.h"
-
+#define _CRT_SECURE_NO_WARNINGS 1 //vc++\82Ì\82¨\82¹\82Á\82©\82¢\82È\8cx\8d\90\82ð\8fÁ\82·
+#define _CRT_NON_CONFORMING_SWPRINTFS 1 //vc++\82Ì\82¨\82¹\82Á\82©\82¢\82È\8cx\8d\90\82ð\8fÁ\82·
+#define WINDEBUGER_NOPRINTING //\83f\83o\83b\83O\8fo\97Í\82ð\83R\83\93\83\\81[\83\8b\82É\95\\8e¦\82µ\82½\82\82È\82¢\8fê\8d\87\92è\8b`\82·\82é
#define WIN32_LEAN_AND_MEAN // Windows \83w\83b\83_\81[\82©\82ç\8eg\97p\82³\82ê\82Ä\82¢\82È\82¢\95\94\95ª\82ð\8f\9c\8aO\82µ\82Ü\82·\81B