亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? utils.cpp

?? funambol windows mobile plugin source code, the source code is taken from the funambol site
?? CPP
?? 第 1 頁 / 共 5 頁
字號:
                        if(str)
                            delete [] str;
                        return false;
                    }
                    dayOfMonth = _wtol(token);
                    if(dayOfMonth == 0) {
                        if(str)
                            delete [] str;
                        return false;
                    }
                }
            }
            else if(recType == olRecursMonthNth) {
                if(wcschr(token, TEXT('#'))) {
                    pRecPat->put_RecurrenceType(recType);
                    token++;
                    occurences = _wtol(token);
                    if(occurences == 0)
                        pRecPat->put_NoEndDate(VARIANT_TRUE);
                    else
                        pRecPat->put_Occurrences(occurences);
                    pRecPat->put_Interval(interval);
                    pRecPat->put_Instance(weekOfMonth);
                    pRecPat->put_DayOfWeekMask(calculateDayOfWeek(days));
                }
                else if(token[8] == TEXT('T')) {
                    pRecPat->put_RecurrenceType(recType);
                    systemTimeToDouble(token, &endDate, NULL);
                    pRecPat->put_PatternEndDate(endDate);
                    pRecPat->put_Interval(interval);
                    pRecPat->put_Instance(weekOfMonth);
                    pRecPat->put_DayOfWeekMask(calculateDayOfWeek(days));
                }
                else if(isDayOfWeek(token)) {
                     wcscat(days, token);
                    wcscat(days, TEXT(" "));
                }
                else {
                    if(token[1] != TEXT('+') && token[1] != TEXT('-')) {
                        if(str)
                            delete [] str;
                        return false;
                    }
                    wchar_t sWeek[] = TEXT("\0\0");
                    sWeek[0] = token[0];
                    weekOfMonth = _wtol(sWeek);
                    if(token[1] == TEXT('-'))
                        weekOfMonth = 5 - weekOfMonth;
                    if(weekOfMonth > 5 || weekOfMonth < 1) {
                        if(str)
                            delete [] str;
                        return false;
                    }
                }
            }
            else if(recType == olRecursYearly) {
                //expected sequence will be YM1 month <end tag>
                if(wcschr(token, TEXT('#'))) {
                    pRecPat->put_RecurrenceType(recType);
                    token++;
                    occurences = _wtol(token);
                    if(occurences == 0)
                        pRecPat->put_NoEndDate(VARIANT_TRUE);
                    else
                        pRecPat->put_Occurrences(occurences);
                    pRecPat->put_Interval(interval);
                    pRecPat->put_MonthOfYear(monthOfYear);
                    pRecPat->put_DayOfMonth(dayOfMonth);
                }
                else if(token[8] == TEXT('T')) {
                    pRecPat->put_RecurrenceType(recType);
                    systemTimeToDouble(token, &endDate, NULL);
                    pRecPat->put_PatternEndDate(endDate);
                    pRecPat->put_Interval(interval);
                    pRecPat->put_MonthOfYear(monthOfYear);
                    pRecPat->put_DayOfMonth(dayOfMonth);
                }
                else {
                    if(wcscmp(mOfYear, TEXT(""))) {
                        if(str)
                            delete [] str;
                        return false;
                    }
                     wcscat(mOfYear, token);
                    monthOfYear = _wtol(mOfYear);
                    SYSTEMTIME st;
                    VariantTimeToSystemTime(startDate, &st);
                    dayOfMonth = st.wDay;
                }
            }
        }
    }

    return ret;
}
wchar_t* extractRrule(IRecurrencePattern* pRecPat) {

    wchar_t* recurrence = new wchar_t[100];
    wcscpy(recurrence, TEXT(""));
    DATE patStartDate;
    DATE patEndDate;
    wchar_t* datev = new wchar_t[30];

    long recType;
    pRecPat->get_RecurrenceType(&recType);
    pRecPat->get_PatternEndDate(& patEndDate);
    pRecPat->get_PatternStartDate(& patStartDate);

    VARIANT_BOOL noEnd;
    pRecPat->get_NoEndDate(&noEnd);

    long interval;
    pRecPat->get_Interval(&interval);

    long occurences;
    pRecPat->get_Occurrences(&occurences);

    long dayofweek;
    pRecPat->get_DayOfWeekMask(&dayofweek);

    long dayofmonth;
    pRecPat->get_DayOfMonth(& dayofmonth);

    //week of month
    long instance;
    pRecPat->get_Instance(&instance);

    long duration;
    pRecPat->get_Duration(&duration);

    long monthofyear;
    pRecPat->get_MonthOfYear(&monthofyear);

    switch(recType) {
            case olRecursDaily:
                if(noEnd == VARIANT_TRUE)
                    occurences = 0;  //occurences are -1 in this case but we use 0 to indicate event that does not end
                if(interval >0)
                        wsprintf(recurrence, TEXT("D%ld #%ld"), interval, occurences);
                else if (dayofweek > 0) {
                    wchar_t* days = extractDayOfWeek(dayofweek);
                    if (days) {
                        doubleToSystemTimeHourZero(datev, patEndDate, FALSE);
                        wsprintf(recurrence, TEXT("W1 %s %s #%ld"), days, datev, occurences);
                        delete [] days;
                    }
                }
                break;
            case olRecursWeekly:
                if (dayofweek > 0) {
                    wchar_t* days = extractDayOfWeek(dayofweek);
                    if (days) {
                        if(noEnd == VARIANT_TRUE)
                            wsprintf(recurrence, TEXT("W%ld %s #0"), interval, days);
                        else {
                            doubleToSystemTimeHourZero(datev, patEndDate, FALSE);
                            wsprintf(recurrence, TEXT("W%ld %s%s #%ld"), interval, days, datev, occurences);
                            delete [] days;
                        }
                    }
                }
                break;
            case olRecursMonthly:
                if(dayofmonth > 0)
                    if(noEnd == VARIANT_TRUE)
                            wsprintf(recurrence, TEXT("MD%ld %ld #0"), interval, dayofmonth);
                        else {
                            doubleToSystemTimeHourZero(datev, patEndDate, FALSE);
                            wsprintf(recurrence, TEXT("MD%ld %ld %s #%ld"), interval, dayofmonth, datev, occurences);
                        }
                break;
            case olRecursMonthNth:
                if(instance > 0 && dayofweek >0) {
                    wchar_t* days = extractDayOfWeek(dayofweek);
                    if(days)
                        if(noEnd == VARIANT_TRUE)
                                wsprintf(recurrence, TEXT("MP%ld %ld+ %s #0"), interval, instance, days);
                            else {
                                doubleToSystemTimeHourZero(datev, patEndDate, FALSE);
                                wsprintf(recurrence, TEXT("MP%ld %ld+ %s%s #%ld"), interval, instance, days, datev, occurences);
                            }
                    if(days)
                        delete [] days;
                }
                break;
            case olRecursYearly:
                if(dayofmonth > 0 && monthofyear > 0)
                    if(noEnd == VARIANT_TRUE)
                        wsprintf(recurrence, TEXT("YM1 %ld #0"), monthofyear);
                    else
                        wsprintf(recurrence, TEXT("YM1 %ld #%ld"), monthofyear, occurences);
                break;
            case olRecursYearNth:
                if(dayofweek > 0 && instance >0) {
                    wchar_t* days = extractDayOfWeek(dayofweek);
                    if(days)
                        if(noEnd == VARIANT_TRUE)
                            wsprintf(recurrence, TEXT("MP12 %ld+ %s #0"), instance, days);
                            else {
                                doubleToSystemTimeHourZero(datev, patEndDate, FALSE);
                                wsprintf(recurrence, TEXT("MP12 %ld+ %s%s #%ld"), instance, days, datev, occurences);
                            }
                    if(days)
                        delete [] days;
                }
                break;
        }

        delete [] datev; datev = NULL;

    return recurrence;
}

wchar_t* extractDayOfWeek(long l) {
    /*
        enum OlDaysOfWeek {
          olSunday    = 1,
          olMonday    = 2,
          olTuesday   = 4,
          olWednesday = 8,
          olThursday  = 16,
          olFriday    = 32,
          olSaturday  = 64,
        };

        */
    if (l<0 || l>128)
        return NULL;

    //SU MO TU WE TH FR SA

    wchar_t* ret = new wchar_t[21];
    wcscpy(ret, TEXT(""));

    if(l & olSunday)
        wcscat(ret, TEXT("SU "));
    if(l & olMonday)
        wcscat(ret, TEXT("MO "));
    if(l & olTuesday)
        wcscat(ret, TEXT("TU "));
    if(l & olWednesday)
        wcscat(ret, TEXT("WE "));
    if(l & olThursday)
        wcscat(ret, TEXT("TH "));
    if(l & olFriday)
        wcscat(ret, TEXT("FR "));
    if(l & olSaturday)
        wcscat(ret, TEXT("SA "));

    return ret;

}
long calculateDayOfWeek(wchar_t* in) {

    long ret = 0;

    wchar_t* index;
    index = NULL;
    index = wcsstr(in, TEXT("SU"));
    if(index)
        ret += olSunday;

    index = NULL;
    index = wcsstr(in, TEXT("MO"));
    if(index)
        ret += olMonday;

    index = NULL;
    index = wcsstr(in, TEXT("TU"));
    if(index)
        ret += olTuesday;

    index = NULL;
    index = wcsstr(in, TEXT("WE"));
    if(index)
        ret += olWednesday;

    index = NULL;
    index = wcsstr(in, TEXT("TH"));
    if(index)
        ret += olThursday;

    index = NULL;
    index = wcsstr(in, TEXT("FR"));
    if(index)
        ret += olFriday;

    index = NULL;
    index = wcsstr(in, TEXT("SA"));
    if(index)
        ret += olSaturday;

    return ret;
}

bool isDayOfWeek(wchar_t* string) {

    bool ret = false;
    wchar_t* weekDay[] = {TEXT("SU"), TEXT("MO"), TEXT("TU"), TEXT("WE"), TEXT("TH"), TEXT("FR"), TEXT("SA")};

    for(int i = 0; i < 7 ; i++)
        if(!wcscmp(string, weekDay[i]))
            return true;

    return ret;
}

long getWeekDay(DATE  dt) {
    long ret = 0;

    SYSTEMTIME st;
    VariantTimeToSystemTime(dt, &st);

    ret = (long)pow(2, st.wDayOfWeek);

    return ret;
}


BOOL CALLBACK EnumWindowsProc(HWND hwnd, LPARAM lParam)
{
    DWORD pid = NULL;
    DWORD threadId = GetWindowThreadProcessId(hwnd, &pid);
    if (pid == (DWORD)lParam)
    {
        SendMessage(hwnd,WM_CLOSE, 0, 0);
    }

    return TRUE;
}


DWORD getProcessPid(const wchar_t *processName)
{
    PROCESSENTRY32 lppe;
    BOOL next = TRUE;
    HANDLE hProcess = 0;
    DWORD pid = 0;

    HANDLE hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);

    if (hSnapshot == INVALID_HANDLE_VALUE) {
        // try to see in the registry the pid if there is any
        wchar_t value[128];
        getClientConfigurationInternal(NULL, PROPERTY_SPDM_PID, value, FALSE);
        if (wcscmp(value, TEXT("")) != 0 && wcscmp(value, TEXT("0")) != 0) {
            pid = atol(_wcc(value));
            DWORD code = 0;
            GetExitCodeProcess((HANDLE)pid, &code);
            if (code != STILL_ACTIVE) {
                pid = 0;
            }
        }
        return pid;
    }


    lppe.dwSize = sizeof( PROCESSENTRY32 );

    if (!Process32First(hSnapshot, &lppe))
        return 1;

    if (wcsstr(lppe.szExeFile, processName) != NULL) {
        pid = lppe.th32ProcessID;
    }

    do {
        next = Process32Next(hSnapshot, &lppe);

        if (!next)
            break;

        if (wcsstr(lppe.szExeFile, processName) != NULL ) {
            pid = lppe.th32ProcessID;
            break;
        }

    } while(next);

    if (hSnapshot)
        CloseToolhelp32Snapshot(hSnapshot);
    CloseHandle(hProcess);
    return pid;
}


DWORD stopProcess(DWORD pid)
{
    DWORD out = EnumWindows(&EnumWindowsProc, pid);

    return out;
}

DWORD stopProcessByName(const wchar_t *name)
{
    DWORD out = 0;
    DWORD pid = getProcessPid(name);
    out = stopProcess(pid);
    return out;
}

DWORD getMemoryAvailable() {
    MEMORYSTATUS mem;
    GlobalMemoryStatus(&mem);
    return mem.dwAvailPhys;

}

BOOL isMemoryAvailable(DWORD min) {

    if (min == 0)
        min = 2500000; // 2.5 Mb

    return getMemoryAvailable() > min ? TRUE : FALSE;

}

// Windows Mobile 5 has OS version = 5
// The previous is < 5 (2003 is 4)
//
BOOL isWindowsMobile5() {

    if (windowsMobileVersion == 0) {
        OSVERSIONINFO OSVersionInfo;
        OSVersionInfo.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
        GetVersionEx(&OSVersionInfo);

        windowsMobileVersion = OSVersionInfo.dwMajorVersion;
        TCHAR szPlatform[512];
        SystemParametersInfo(SPI_GETPLATFORMTYPE, sizeof(szPlatform),szPlatform,0);
        if (wcsicmp(szPlatform, L"SmartPhone") == 0) {
            pocketPCDevice = 0;
        } else {
            pocketPCDevice = 1;
        }

    }

    if (windowsMobileVersion < 5)
        return false;
    else
        return true;
}

BOOL isPocketPC() {
    return pocketPCDevice == 1 ? TRUE : FALSE;
}


// converts newline characters from "\n" to "\r\n"
void convertNewlines(std::wstring &s)
{
    unsigned long pos = 0;
    while(pos != wstring::npos){
        pos = s.find(_T("\n"),pos);
        if(pos == wstring::npos)
            continue;
        if(pos == 0)
        {
            s.insert(0, _T("\r"));
            pos+=2;
        }
        else
        {
            if(s[pos-1] != '\r')
            {
                s.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久av中文字幕片| 欧美精品日韩精品| 欧美日韩亚洲综合在线 | 日韩无一区二区| 国产精品无遮挡| 日本亚洲电影天堂| 91丨porny丨最新| 精品国精品自拍自在线| 一区二区三区高清在线| 成人免费视频视频| 欧美一区二区三区视频免费 | www久久精品| 亚洲成人免费观看| 成人18精品视频| 久久只精品国产| 日韩av网站免费在线| 91啪亚洲精品| 国产精品国产自产拍高清av王其| 国产一区91精品张津瑜| 欧美二区在线观看| 亚洲高清中文字幕| 日本丰满少妇一区二区三区| 亚洲欧美日韩人成在线播放| 粉嫩av亚洲一区二区图片| 日韩一区二区三区视频在线 | 激情偷乱视频一区二区三区| 欧美日本一区二区| 亚洲国产精品天堂| 色乱码一区二区三区88| 亚洲免费观看高清| 91麻豆高清视频| 综合亚洲深深色噜噜狠狠网站| 成人午夜电影网站| 欧美激情在线一区二区| 国产91精品在线观看| 国产女人18毛片水真多成人如厕| 国产精品一线二线三线精华| 久久久www成人免费毛片麻豆| 麻豆国产精品视频| 日韩精品一区二区三区在线观看| 琪琪久久久久日韩精品| 欧美成人午夜电影| 国产在线不卡视频| 国产无一区二区| 91免费精品国自产拍在线不卡 | 欧美国产一区视频在线观看| 成人小视频免费观看| 中文字幕制服丝袜一区二区三区| 99re8在线精品视频免费播放| 亚洲欧美日本在线| 欧美视频在线一区二区三区| 久久精品噜噜噜成人av农村| 久久久99精品久久| 成+人+亚洲+综合天堂| 有码一区二区三区| 91精品久久久久久蜜臀| 国内精品在线播放| 亚洲丝袜精品丝袜在线| 欧美三级视频在线播放| 奇米色777欧美一区二区| 2023国产精华国产精品| 9色porny自拍视频一区二区| 亚洲国产成人porn| 欧美成va人片在线观看| 99视频精品全部免费在线| 亚洲国产中文字幕在线视频综合| 久久综合精品国产一区二区三区| 99r精品视频| 免费欧美高清视频| 中文字幕精品一区二区三区精品| 色美美综合视频| 久久99国产精品免费| 最新热久久免费视频| 91 com成人网| 99视频在线精品| 韩国中文字幕2020精品| 亚洲精品免费在线| 国产午夜精品久久久久久免费视| 欧美午夜精品久久久久久孕妇| 国产精品一区一区| 性久久久久久久久| 中文一区二区完整视频在线观看| 欧美日本免费一区二区三区| 成人av在线一区二区| 日韩av网站免费在线| 亚洲精品中文字幕乱码三区| 国产亚洲综合在线| 欧美一区二区美女| 欧美伊人久久大香线蕉综合69 | 国产高清亚洲一区| 日韩福利电影在线观看| 专区另类欧美日韩| 国产欧美日韩在线| 日韩精品一区二区三区在线观看 | 欧美激情一区不卡| 欧美二区三区91| 欧美写真视频网站| 99久久er热在这里只有精品66| 国产一区二区三区四区五区入口| 日韩精品亚洲专区| 亚洲综合成人网| 亚洲免费av高清| 亚洲欧美偷拍卡通变态| 国产欧美精品一区二区色综合| 久久日韩精品一区二区五区| 精品久久久久av影院| 日韩无一区二区| 日韩一区二区高清| 欧美精品在线观看一区二区| 欧美日韩一本到| 欧美久久一区二区| 337p亚洲精品色噜噜噜| 制服视频三区第一页精品| 欧美日韩三级一区二区| 欧美亚洲另类激情小说| 精品1区2区3区| 欧美区视频在线观看| 欧美久久婷婷综合色| 欧美精品一卡两卡| 欧美一区二区三区视频在线| 精品乱人伦小说| 欧美mv日韩mv国产| 26uuu亚洲综合色欧美| 337p粉嫩大胆色噜噜噜噜亚洲| 久久久国产综合精品女国产盗摄| 日本一区二区高清| 国产精品国产自产拍高清av| 亚洲激情成人在线| 亚洲伊人伊色伊影伊综合网| 亚洲午夜精品网| 午夜精品福利久久久| 蜜桃久久av一区| 高清不卡在线观看av| 不卡一区二区中文字幕| 91免费观看视频| 91精品中文字幕一区二区三区| 欧美成人午夜电影| 亚洲国产成人自拍| 亚洲色图欧洲色图婷婷| 婷婷丁香激情综合| 九色综合国产一区二区三区| 成人高清视频免费观看| 91啪在线观看| 日韩一区和二区| 中文字幕在线视频一区| 亚洲午夜激情网页| 国产一区二区成人久久免费影院| 97se亚洲国产综合自在线不卡| 欧美日韩国产成人在线免费| 国产日韩三级在线| 一区二区三区在线不卡| 精品一区二区三区在线播放视频 | 亚洲乱码国产乱码精品精小说 | 国产iv一区二区三区| 色婷婷av久久久久久久| 欧美成人高清电影在线| 国产精品成人免费在线| 五月婷婷激情综合| 国产成人免费视频精品含羞草妖精| 91成人免费在线视频| 精品理论电影在线观看| 一区二区在线免费| 国产一区二区三区在线观看精品| 欧美中文字幕一区二区三区| 国产三级一区二区| 亚洲成人自拍偷拍| 国产精品18久久久久久久久久久久| 欧美亚洲日本一区| 国产精品污污网站在线观看| 久久国产三级精品| 在线观看不卡一区| 国产精品久久一级| 久久国产精品色婷婷| 欧美日韩精品一区二区在线播放| 国产精品青草综合久久久久99| 美女脱光内衣内裤视频久久网站| 色偷偷成人一区二区三区91| 久久色在线视频| 精品亚洲国内自在自线福利| 欧美一区在线视频| 亚洲午夜精品在线| 91色综合久久久久婷婷| 国产精品视频你懂的| 人禽交欧美网站| 欧美人成免费网站| 亚洲国产另类精品专区| 色婷婷综合久色| 亚洲人123区| 99久久国产免费看| 国产精品色噜噜| 波多野结衣亚洲| 国产精品国产精品国产专区不片| 国产精品综合av一区二区国产馆| 日韩精品专区在线| 日本不卡中文字幕| 欧美精品久久一区二区三区| 五月天婷婷综合| 欧美老人xxxx18| 青青草97国产精品免费观看 | 美国三级日本三级久久99|