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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? s4n_service.cpp

?? funambol windows mobile plugin source code, the source code is taken from the funambol site
?? CPP
字號:
/*
 * Copyright (C) 2003-2007 Funambol, Inc
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY, TITLE, NONINFRINGEMENT or FITNESS FOR A PARTICULAR
 * PURPOSE.  See the GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
 * 02111-1307  USA
 */
// service.cpp : register and deregister notlstnr service.
//

#include <windows.h>
#include <service.h>
#include <winsock2.h>
#include <ws2tcpip.h>

#include "pim/utils.h"
#include "pim/SettingFunctions.h"
#include "notify/s4n_service.h"
#include "base/Log.h"
#include "pim/ClientSettings.h"


#define SERVICE_PREFIX TEXT("S4N")
#define SERVICE_DLL TEXT("notlstnr.dll")
#define SERVICE_PREFIX_INDEX TEXT("S4N0:")
#define SERVICE_INDEX 0
#define SERVICE_PORT 4745

typedef HANDLE (*PFN_REGISTER_SERVICE)(
  LPCWSTR lpszType,
  DWORD dwIndex,
  LPCWSTR lpszLib,
  DWORD dwInfo
);

typedef BOOL (*PFN_DEREGISTER_SERVICE) (
  HANDLE hDevice
);

typedef BOOL (*PFN_SERVICE_IO_CONTROL) (
  HANDLE hService,
  DWORD dwIoControlCode,
  LPVOID lpInBuf,
  DWORD nInBufSize,
  LPVOID lpOutBuf,
  DWORD nOutBufSize,
  LPDWORD lpBytesReturned,
  LPOVERLAPPED lpOverlapped
);

typedef BOOL (*PFN_SERVICE_ADD_PORT) (
  HANDLE hService,
  SOCKADDR* pSockAddr,
  INT cbSockAddr,
  INT iProtocol,
  WCHAR szRegWritePath
);

typedef HANDLE (*PFN_GET_SERVICE_HANDLE) (
  LPWSTR szPrefix,
  LPWSTR szDllName,
  DWORD pdwDllBuf
);

int getListenerPort(void)
{

//    ClientSettings cs(APPLICATION_URI);
//    ClientSettings::getInstance()->readConfig();
    string s = ClientSettings::getInstance()->getPushPort();
    if (s == "")
        return SERVICE_PORT;

    return atoi(s.c_str());

    /*
    wchar_t buf[32];

    memset(buf, 0, 32*sizeof(wchar_t));
    getClientConfigurationInternal (TEXT(""), PROPERTY_SPDM_NOTIFICATION_PORT,
                                 buf, FALSE);

    if(buf[0] == 0)
        return SERVICE_PORT;

    return wcstol(buf, NULL, 10);
    */
}

int registerService() {
    PFN_REGISTER_SERVICE pfnRegister = NULL;
    PFN_SERVICE_IO_CONTROL pfnIOControl = NULL;
    PFN_SERVICE_ADD_PORT pfnAddPort = NULL;
    SOCKADDR_IN SockAddr;
    HANDLE s = 0;
    int port = 0;
    int ret = 0;

    HMODULE h = LoadLibrary(L"COREDLL.dll");
    if (h == NULL) {
        LOG.error("registerService: library not found");
        goto finally;
    }
    pfnRegister =
        (PFN_REGISTER_SERVICE)GetProcAddress(h, L"RegisterService");

    if (pfnRegister == NULL) {
        LOG.error("registerService: function RegisterService not found");
        goto finally;
    }

    pfnIOControl =
        (PFN_SERVICE_IO_CONTROL)GetProcAddress(h, L"ServiceIoControl");

    if (pfnIOControl == NULL) {
        LOG.error("registerService: function ServiceIoControl not found");
        goto finally;
    }

    pfnAddPort =
        (PFN_SERVICE_ADD_PORT)GetProcAddress(h, L"ServiceAddPort");

    if (pfnAddPort == NULL) {
        LOG.error("registerService: function ServiceAddPort not found");
        goto finally;
    }

    port = getListenerPort();

    s = (pfnRegister)(SERVICE_PREFIX, SERVICE_INDEX, SERVICE_DLL, port);

    if (s == NULL) {
        ret = GetLastError();
        if (ret == 120) {
            LOG.debug("Service already registered");
        }
        else {
            LOG.debug("registerService: registering error (%d)", ret);
        }
        goto finally;
    }

    //
    // Now we register the super service...
    //
    memset(&SockAddr,0,sizeof(SockAddr));

    if(!(pfnIOControl)(s, IOCTL_SERVICE_REGISTER_SOCKADDR,0,0,0,0,0,0)) {
        LOG.error("registerService: the service does not support socked address registering");
        goto finally; //does not support super services
    }

    SockAddr.sin_family = AF_INET;
    SockAddr.sin_port=htons(port);
    if (! (pfnAddPort)(s,(SOCKADDR*)&SockAddr, sizeof(SockAddr), 0,0)) {
        LOG.error("registerService: I cannot listen on port %d", port);
        goto finally;
    }

    //When all sockets have been bound, the service must be informed that it
    //is ready to start.
    if(!(pfnIOControl)(s, IOCTL_SERVICE_STARTED,0,0,0,0,0,0)) {
        LOG.error("registerService: the service could not start....");
        goto finally; //if the service cannot start
    }

    LOG.debug("Service sucessfully registerd");

finally:
    if (h) {
        FreeLibrary(h);
    }
    return ret;
}

int deregisterService() {
    HMODULE h = NULL;
    HANDLE  s = NULL; // service handle
    int ret = 0;

    PFN_GET_SERVICE_HANDLE pfnGetHandle = NULL;
    PFN_DEREGISTER_SERVICE pfnDeregister = NULL;

    h = LoadLibrary(L"COREDLL.dll");
    if (h == NULL) {
        LOG.error("deregisterService: library not found");
        goto finally;
    }
    pfnDeregister =
        (PFN_DEREGISTER_SERVICE)GetProcAddress(h, L"DeregisterService");

    if (pfnDeregister == NULL) {
        LOG.error("deregisterService: function DeregisterService not found");
        goto finally;
    }

    pfnGetHandle =
        (PFN_GET_SERVICE_HANDLE)GetProcAddress(h, L"GetServiceHandle");

    if (pfnGetHandle == NULL) {
        LOG.error("deregisterService: function GetServiceHandle not found");
        goto finally;
    }

    s = (pfnGetHandle)(SERVICE_PREFIX_INDEX, NULL, 0);

    if (s == INVALID_HANDLE_VALUE) {
        LOG.error("deregisterService: Service not found");
        ret = GetLastError();
        goto finally;
    }

    if ((pfnDeregister)(s) == 0) {
        ret = GetLastError();
        LOG.error("Deregistering error: %ld", ret);
        goto finally;
    }

    s = NULL;

    LOG.debug("Service sucessfully deregisterd");

finally:
    if (h) {
        FreeLibrary(h);
    }
    return ret;
}

void activateService() {

}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
av在线这里只有精品| 日韩不卡一区二区三区| 成人激情小说乱人伦| 久久精品视频网| 国产91精品入口| 欧美激情一区二区三区四区| av在线播放成人| 一区二区三区在线视频免费| 欧美日本在线播放| 久久er精品视频| 久久精品人人做人人综合| 99久久免费精品| 五月激情六月综合| 久久一区二区三区国产精品| www..com久久爱| 亚洲bdsm女犯bdsm网站| 欧美精品一区二区在线播放| 成人高清视频在线| 亚洲成人综合视频| 久久久综合视频| 欧美主播一区二区三区| 免费看欧美女人艹b| 国产色产综合色产在线视频| 欧日韩精品视频| 久久99精品国产麻豆婷婷| 中文成人av在线| 欧美日韩极品在线观看一区| 国产精品一区二区免费不卡| 亚洲精品高清视频在线观看| 欧美一二三四区在线| 99天天综合性| 老鸭窝一区二区久久精品| 国产精品国产自产拍高清av| 国产精品女同一区二区三区| 欧美福利视频导航| 成人午夜私人影院| 日日骚欧美日韩| 国产精品免费视频一区| 欧美精品 国产精品| 成人少妇影院yyyy| 另类综合日韩欧美亚洲| 一区二区三区精品久久久| 精品少妇一区二区三区视频免付费| av一本久道久久综合久久鬼色| 蜜桃av一区二区在线观看| 亚洲免费av在线| 久久精品人人做人人综合 | 欧美亚洲国产一卡| 国产精品综合av一区二区国产馆| 一区二区三区不卡在线观看| 欧美激情一区二区三区在线| 日韩三级免费观看| 欧美无砖砖区免费| 色噜噜狠狠成人网p站| 国产盗摄视频一区二区三区| 男女男精品视频| 亚洲影视资源网| 亚洲少妇最新在线视频| 中文字幕不卡在线| 久久综合久久综合久久综合| 欧美精品在线一区二区三区| 色8久久精品久久久久久蜜| 成人免费va视频| 国产一区二区三区香蕉| 麻豆成人久久精品二区三区小说| 亚洲一本大道在线| 亚洲欧美日韩国产手机在线| 中文字幕在线观看不卡视频| 国产精品美女视频| 国产视频911| 中文字幕欧美日本乱码一线二线| 久久蜜桃一区二区| 国产亚洲一区二区三区在线观看| 日韩欧美卡一卡二| 欧美一区二区三区在线观看| 欧美丰满嫩嫩电影| 91精品国产麻豆| 日韩一区二区在线观看视频播放| 欧美一区二区三区婷婷月色 | 肉色丝袜一区二区| 日韩专区在线视频| 免费高清成人在线| 激情小说欧美图片| 国产精品99久久久久久有的能看| 国产精品小仙女| 成人一道本在线| 91网站在线观看视频| 日本精品视频一区二区| 欧美少妇bbb| 91精品麻豆日日躁夜夜躁| 日韩欧美一级片| 国产偷国产偷亚洲高清人白洁| 久久久99免费| 国产精品99久| 不卡电影一区二区三区| 色婷婷综合久久| 欧美福利视频导航| 久久日韩粉嫩一区二区三区| 国产精品不卡在线| 亚洲午夜私人影院| 美女在线视频一区| 成人激情小说乱人伦| 欧美视频一区二区三区在线观看| 欧美一区二区三区精品| 国产亚洲欧美日韩日本| 亚洲视频狠狠干| 人人狠狠综合久久亚洲| 国产精品性做久久久久久| 91蝌蚪porny九色| 欧美一区二区三区不卡| 国产网站一区二区三区| 一区二区三区精品在线| 精品一区二区在线播放| av电影天堂一区二区在线| 欧美日韩电影在线播放| 国产欧美日韩综合精品一区二区| 一区二区欧美在线观看| 久久99精品一区二区三区三区| www.欧美色图| 日韩欧美国产一二三区| 国产精品久久99| 美女视频第一区二区三区免费观看网站| 福利电影一区二区| 欧美久久一二三四区| 国产精品久久影院| 蜜臀久久99精品久久久久宅男| www.亚洲国产| 日韩精品资源二区在线| 一区二区三区在线免费播放| 国产一区三区三区| 91.xcao| 亚洲男人的天堂av| 国产综合色视频| 678五月天丁香亚洲综合网| 国产精品毛片高清在线完整版| 免费在线观看一区| 色综合天天综合色综合av | 日韩高清不卡一区| 成人午夜伦理影院| 欧美电影精品一区二区| 一区二区三区四区不卡在线| 国产精品一区二区x88av| 91精品国产全国免费观看| 亚洲综合图片区| 91丨porny丨蝌蚪视频| 久久这里只有精品首页| 日本欧美一区二区三区乱码| 欧洲中文字幕精品| 亚洲欧洲一区二区三区| 国产乱妇无码大片在线观看| 日韩视频在线观看一区二区| 亚洲国产精品久久不卡毛片 | 久久久www成人免费毛片麻豆| 日本欧美加勒比视频| 欧美探花视频资源| 一区二区三区国产| av中文一区二区三区| 国产午夜精品在线观看| 黄页视频在线91| 欧美一级xxx| 麻豆国产精品一区二区三区 | 91在线精品一区二区三区| 国产三级一区二区| 国产精品中文有码| 久久日韩粉嫩一区二区三区| 久久se这里有精品| 久久夜色精品国产欧美乱极品| 麻豆精品视频在线| 日韩色视频在线观看| 久久精品国产**网站演员| 日韩视频一区在线观看| 久久福利资源站| 久久久久久久久久久久电影| 国内久久精品视频| 欧美激情一区在线| 91丨porny丨国产入口| 亚洲理论在线观看| 欧美色网站导航| 日韩国产一区二| 日韩三区在线观看| 国产一区二区三区电影在线观看| 国产无人区一区二区三区| 99视频精品免费视频| 亚洲精品成人悠悠色影视| 欧美制服丝袜第一页| 五月开心婷婷久久| 精品国偷自产国产一区| 成人精品国产一区二区4080| 自拍偷拍国产精品| 欧美日韩你懂的| 激情综合网天天干| 中文字幕亚洲欧美在线不卡| 91国偷自产一区二区三区成为亚洲经典 | 国产成人免费网站| 国产精品高潮呻吟久久| 欧美色图第一页| 国产曰批免费观看久久久| 国产精品激情偷乱一区二区∴| 精品视频一区三区九区| 狠狠狠色丁香婷婷综合久久五月|