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

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

?? audiorouting.cpp

?? AudioRouting.cpp : Defines the entry point for the DLL application. Audio Routing Service
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
                pC->hThread = NULL;
            }
        }
        DeleteCriticalSection( &pC->cs );
        LocalFree( pC );
        pC=NULL;
    }
    FUNCTRACEOUT();
    return TRUE;
}
extern "C" __declspec(dllexport) ULONG ARS_Init(
    ULONG Data
)
{  
    ARSCONTEXT *Context;
    FUNCTRACEIN();
    Context = (ARSCONTEXT*)LocalAlloc(LPTR, sizeof(ARSCONTEXT));

    if ( Context )
    {
        InitializeCriticalSection( &Context->cs );
        Context->hDllCoredll = LoadLibrary(TEXT("coredll.dll"));
        if ( Context->hDllCoredll )
        {
            Context->pfnKernelIoControl = (_KernelIoControl)GetProcAddress(Context->hDllCoredll,TEXT("KernelIoControl"));
            if ( NULL == Context->pfnKernelIoControl )
            {
                DebugMsg(L"Could not grab KernelIoControl\r\n");
                ARS_Deinit( (ULONG)Context );
                Context = NULL;
                goto ErrorExit;
            }

            // Get CPU type
            PROCESSOR_INFO pi;
            ULONG bytesWritten;
            BOOL bRet = Context->pfnKernelIoControl( IOCTL_PROCESSOR_INFORMATION, NULL, 0, &pi, sizeof( pi ), &bytesWritten);
            if (bRet)
            {
                // look for OMAP730,850 or 1030
                if ( wcsstr( pi.szProcessorName, L"OMAP730") 
                    || wcsstr( pi.szProcessorName, L"OMAP850") 
                    || wcsstr( pi.szProcessorName, L"OMAP1030") )
                {
                    DebugMsg(L"ProcName: %s\r\n", pi.szProcessorName );

                    // Go with omap
                    Context->AudioRouting = (CAudioRouting *) new CAudioRoutingTIOmap();
                    bool boolRet = Context->AudioRouting->Init();
                    if ( !boolRet )
                    {
                        DebugMsg(L"Could not grab KernelIoControl\r\n");
                        delete Context->AudioRouting;
                        Context->AudioRouting = NULL;
                        ARS_Deinit( (ULONG)Context );
                        Context = NULL;
                        goto ErrorExit;
                    }

                }
            }
            else
            {
                DebugMsg(L"KernelIoControl call failed %d", GetLastError() );
            }
        }
#if 0
        // Start the service
        if (StartService( Context ))
        {
            Context->ServiceStatus = SERVICE_STATE_ON;
        }
#endif
    }

ErrorExit:
    FUNCTRACEOUT();

    return (ULONG)Context;    
}



extern "C" __declspec(dllexport) ULONG ARS_Open(  
    ULONG Data,
    ULONG Access,
    ULONG ShareMode
)
{
    return Data;
}

extern "C" __declspec(dllexport) BOOL ARS_Close(
    ULONG Data
    )
{
    return TRUE;
}

extern "C" __declspec(dllexport) ULONG ARS_Read(
    ULONG Data,
    LPVOID  Buffer,
    ULONG   Length

    )
{
    return 0;
}
extern "C" __declspec(dllexport) ULONG ARS_Write(
    ULONG   Data,
    LPVOID  Buffer,
    ULONG   Length
    )
{
    return 0;
}


//______________________________________________________
extern "C" __declspec(dllexport) BOOL ARS_IOControl(
  ULONG Data,
  ULONG Code,
  PBYTE pBufIn,
  ULONG LenIn,
  PBYTE pBufOut,
  ULONG LenOut,
  ULONG *pActualOut
)
{
    ARSCONTEXT *pC = (ARSCONTEXT*)Data;
    ULONG ErrorCode = ERROR_INVALID_PARAMETER;
    BOOL bRet=FALSE;

    FUNCTRACEIN();

    DebugMsg(L"IOCTL_SERVICE_STATUS: %x (code:%x)\r\n", IOCTL_SERVICE_STATUS, Code);
    switch (Code)
    {
    case IOCTL_SERVICE_START:
        DebugMsg(L"IOCTL_SERVICE_START\r\n");
        if ( SERVICE_STATE_ON == pC->ServiceStatus )
        {
            ErrorCode=ERROR_SERVICE_ALREADY_RUNNING;
        }
        else
        {
            if (StartService(pC))
            {
                pC->ServiceStatus = SERVICE_STATE_ON;
                ErrorCode=ERROR_SUCCESS;
                bRet = TRUE;
            }
        }
        break;

    case IOCTL_SERVICE_STOP:
        DebugMsg(L"IOCTL_SERVICE_STOP\r\n");
        if (SERVICE_STATE_ON == pC->ServiceStatus)
        {
            if (StopService(pC))
            {
                pC->ServiceStatus = SERVICE_STATE_OFF;
                ErrorCode=ERROR_SUCCESS;
                bRet = TRUE;
            }
        } 
        else 
	    {
		    ErrorCode = ERROR_SERVICE_NOT_ACTIVE;
	    }
        break;
    case IOCTL_SERVICE_STATUS:
        DebugMsg(L"IOCTL_SERVICE_STATUS\r\n");
        if (pBufOut && (LenOut>=sizeof(ULONG)) )
        {
            *(ULONG*)pBufOut = pC->ServiceStatus;
            if (pActualOut)
            {
                DebugMsg(L"ServiceStatus: %x\r\n",pC->ServiceStatus);
                *pActualOut = sizeof(ULONG);
                bRet=TRUE;
                ErrorCode=ERROR_SUCCESS;
            }
        }
        break;
    case IOCTL_SERVICE_QUERY_CAN_DEINIT:
        DebugMsg(L"IOCTL_SERVICE_QUERY_CAN_DEINIT\r\n");
        if (pBufOut && (LenOut>=sizeof(ULONG)) )
        {
            *(ULONG*)pBufOut = TRUE;
            if (pActualOut)
            {
                *pActualOut = sizeof(ULONG);
                bRet=TRUE;
                ErrorCode=ERROR_SUCCESS;
            }
        }
        break;

    case IOCTL_SERVICE_INSTALL:
        DebugMsg(L"IOCTL_SERVICE_INSTALL\r\n");
    break;
    case IOCTL_SERVICE_UNINSTALL:
        DebugMsg(L"IOCTL_SERVICE_UNINSTALL\r\n");
    break;
    default:
        DebugMsg(L"ARS_IOControl: Unhandled IOCTL 0x%x\r\n", (Code >> 2) & 0x3fff);
        break;

    }

    FUNCTRACEOUT();
    SetLastError(ErrorCode);
    
    return bRet;
}


extern "C" __declspec(dllexport) BOOL PopulateAudioRoutingServiceRegistry(void)
{

    FUNCTRACEIN();

    HKEY hKey;
    ULONG Dispo;
    long r=RegCreateKeyEx(HKEY_LOCAL_MACHINE, L"Services\\AudioRouting", 0, NULL, 0, NULL, NULL, &hKey, &Dispo);
    if (ERROR_SUCCESS!=r)
    {
        DebugMsg(L"Could not create  HCConfigService key (%d)\r\n", GetLastError());
    }
    else
    {
        RegCloseKey(hKey);
    }


    HRESULT hr = RegistrySetString( HKEY_LOCAL_MACHINE, L"Services\\AudioRouting", L"Dll", L"AudioRouting.dll");
    if (S_OK != hr)
    {
        DebugMsg(L"Failed to write reg key %s\r\n", L"Dll");
    }
    hr = RegistrySetString( HKEY_LOCAL_MACHINE, L"Services\\AudioRouting", L"Prefix", L"ARS");
    if (S_OK != hr)
    {
        DebugMsg(L"Failed to write reg key %s\r\n",  L"Prefix");
    }
    hr = RegistrySetString( HKEY_LOCAL_MACHINE, L"Services\\AudioRouting", L"DisplayName", L"ColumbusAudio");
    if (S_OK != hr)
    {
        DebugMsg(L"Failed to write reg key %s\r\n", L"DisplayName");
    }
    hr = RegistrySetString( HKEY_LOCAL_MACHINE, L"Services\\AudioRouting", L"Description", L"Columbus Audio Rotuing Service");
    if (S_OK != hr)
    {
        DebugMsg(L"Failed to write reg key %s\r\n", L"Description");
    }
    hr = RegistrySetDWORD( HKEY_LOCAL_MACHINE, L"Services\\AudioRouting", L"Flags", 0);
    if (S_OK != hr)
    {
        DebugMsg(L"Failed to write reg key %s\r\n",  L"Flags");
    }
    hr = RegistrySetDWORD( HKEY_LOCAL_MACHINE, L"Services\\AudioRouting", L"Index", 1);
    if (S_OK != hr)
    {
        DebugMsg(L"Failed to write reg key %s\r\n",  L"Index");
    }
        hr = RegistrySetDWORD( HKEY_LOCAL_MACHINE, L"Services\\AudioRouting", L"Keep", 1);
    if (S_OK != hr)
    {
        DebugMsg(L"Failed to write reg key %s\r\n",L"Keep" );
    }
    hr = RegistrySetDWORD( HKEY_LOCAL_MACHINE, L"Services\\AudioRouting", L"Index", 80);
    if (S_OK != hr)
    {
        DebugMsg(L"Failed to write reg key %s\r\n",L"Index" );
    }
    FUNCTRACEOUT();
    return TRUE;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美第一区第二区| 欧美亚洲综合一区| 蜜臀91精品一区二区三区 | 国产91精品久久久久久久网曝门| 美女视频黄免费的久久| 韩国中文字幕2020精品| 国产精品亚洲人在线观看| 国产一区二区三区综合| 国产精品456露脸| 成人国产精品视频| 在线免费观看日本一区| 欧美精品xxxxbbbb| 欧美成人女星排名| 国产精品美女久久久久高潮| 亚洲欧美另类小说| 日本v片在线高清不卡在线观看| 精品一区二区在线看| 丁香婷婷综合激情五月色| 97精品国产97久久久久久久久久久久 | 亚洲国产一区二区a毛片| 天天综合天天做天天综合| 久久成人羞羞网站| 99re热这里只有精品视频| 精品视频999| 久久丝袜美腿综合| 亚洲激情男女视频| 久久99精品久久久久久久久久久久| 国产成人综合网| 欧美在线播放高清精品| 欧美成人猛片aaaaaaa| 亚洲人成7777| 麻豆精品在线看| 色综合色狠狠综合色| 日韩免费高清av| 亚洲黄色性网站| 国产精品亚洲专一区二区三区 | 亚洲欧美偷拍卡通变态| 日韩电影在线一区二区| 成人黄色一级视频| 日韩欧美中文字幕公布| 亚洲免费高清视频在线| 国产盗摄一区二区三区| 91精品国产福利在线观看| 中文字幕一区视频| 国产一区二区在线看| 欧美日韩1234| 亚洲愉拍自拍另类高清精品| 国产成a人亚洲精品| 欧美一区二区三区四区五区 | 国产成人精品一区二区三区网站观看| 欧美三级蜜桃2在线观看| 中文欧美字幕免费| 国产真实乱子伦精品视频| 6080yy午夜一二三区久久| 国产精品的网站| 国产一区二区三区免费在线观看| 欧美美女一区二区| 亚洲激情自拍偷拍| 91麻豆精品秘密| 国产精品无人区| 国产传媒欧美日韩成人| 国产亚洲精品免费| 国产经典欧美精品| 欧美激情在线一区二区三区| 国产精品一区二区黑丝| 久久综合九色欧美综合狠狠| 久久99精品久久只有精品| 欧美一区二区网站| 日本视频免费一区| 日韩一级片网站| 日本免费新一区视频| 91精品国产色综合久久| 免播放器亚洲一区| 久久综合色天天久久综合图片| 免费成人小视频| 久久久一区二区三区| 国产乱码精品一区二区三区忘忧草 | 一区二区三区影院| 在线影视一区二区三区| 一区二区三区在线免费| 欧美日韩激情在线| 极品少妇一区二区三区精品视频 | 日韩和欧美一区二区| 日韩一二在线观看| 国产精品亚洲午夜一区二区三区| 久久精品人人爽人人爽| 成人免费毛片app| 夜夜精品浪潮av一区二区三区 | 国产最新精品精品你懂的| 国产日韩欧美精品一区| 波多野结衣在线aⅴ中文字幕不卡| 日韩一区在线免费观看| 精品视频一区二区不卡| 精品一区二区在线播放| 成人欧美一区二区三区小说| 欧美在线影院一区二区| 久久97超碰色| 亚洲三级免费电影| 欧美一区二区久久| 成人午夜电影网站| 亚洲大片精品永久免费| 精品99一区二区三区| 色综合中文字幕国产| 日韩精品一级二级| 亚洲欧洲性图库| 日韩欧美在线综合网| av在线不卡电影| 免费观看在线色综合| 中文字幕一区二区三区在线观看| 欧美日韩成人在线| 91在线观看下载| 久久99精品久久久久久久久久久久 | 成人性生交大片免费| 亚洲va韩国va欧美va| 久久久久久综合| 69成人精品免费视频| 91在线观看地址| 国产一区二区按摩在线观看| 亚洲国产wwwccc36天堂| 国产精品国产馆在线真实露脸 | 色婷婷亚洲婷婷| 国内外成人在线| 五月天丁香久久| 1000部国产精品成人观看| 精品日本一线二线三线不卡| 欧美日韩亚洲综合在线 | 日韩精品一区二区三区在线观看| 91免费国产在线| 国产精品18久久久久久久网站| 亚洲成人免费在线观看| 中文字幕一区在线| 国产拍欧美日韩视频二区| 日韩欧美一区在线观看| 91.com视频| 欧美日韩亚州综合| 91国产精品成人| av色综合久久天堂av综合| 国产精品一区二区91| 精品在线亚洲视频| 免费看精品久久片| 蜜臀av一区二区在线观看 | 不卡高清视频专区| 国产成人超碰人人澡人人澡| 久久精品国产精品亚洲红杏| 日韩成人一级片| 日本不卡中文字幕| 日本不卡中文字幕| 日韩电影免费在线看| 麻豆国产一区二区| 激情综合亚洲精品| 国产69精品久久久久毛片| 国产精品1区2区3区在线观看| 国产精品一区二区久久精品爱涩 | 色女孩综合影院| 日本高清不卡一区| 欧美天堂亚洲电影院在线播放| 色国产精品一区在线观看| 色视频一区二区| 欧美日韩免费一区二区三区 | 99精品国产91久久久久久| 高清免费成人av| 91蜜桃网址入口| 欧美午夜视频网站| 91麻豆精品久久久久蜜臀| 欧美一区二区视频在线观看 | 亚洲美女区一区| 五月开心婷婷久久| 国内精品嫩模私拍在线| 成人黄色小视频在线观看| 一本大道久久a久久精品综合| 欧美亚洲动漫精品| 欧美成人免费网站| 最新热久久免费视频| 亚洲国产一区二区在线播放| 久久国产麻豆精品| 成人一二三区视频| 色天天综合色天天久久| 日韩免费视频一区| 中文欧美字幕免费| 三级成人在线视频| 国产aⅴ精品一区二区三区色成熟| 91蜜桃婷婷狠狠久久综合9色| 制服丝袜中文字幕一区| 国产欧美一区二区精品忘忧草| 伊人夜夜躁av伊人久久| 久久99精品久久久久| 色婷婷久久久久swag精品| www国产成人| 亚洲成人自拍偷拍| a美女胸又www黄视频久久| 欧美精品少妇一区二区三区| 国产拍揄自揄精品视频麻豆| 亚洲午夜精品在线| 成人的网站免费观看| 欧美精品一卡两卡| 国产精品不卡在线| 激情综合色播激情啊| 欧美三级三级三级| 亚洲视频综合在线| 国产精品1区2区|