添加的开机运行程序 卡住

情场探花   2009-6-1 18:32 楼主
写了一个小的应用程序,通过修改注册表,设置成开机自动运行.(我用vs2005远程跑是没问题的)
可是,开机时会卡在log界面上.请问下高手,问题在哪里?

添加注册表如下:

[HKEY_LOCAL_MACHINE\init]
"Launch50"="startup.exe"
"Depend50"=hex:14,00, 1e,00

starup.exe 代码如下:

void NotifyWavDevByFm(DWORD Command)
{
        HANDLE hWavDev = CreateFile(TEXT("WAV1:"), GENERIC_READ|GENERIC_WRITE, FILE_SHARE_READ|FILE_SHARE_WRITE,
                NULL, OPEN_ALWAYS, 0, 0);
        if (hWavDev == NULL)
        {
                return ;
        }
       //以下操作是打开音频设备
        DWORD OutBuf = 0;
        MMDRV_MESSAGE_PARAMS InBuf;

        InBuf.uMsg= WPDM_CONTROL_AUXOUT_PATH;
        InBuf.uDeviceId = 0;
        InBuf.dwUser        = 0;
        InBuf.dwParam1        = Command;
        DeviceIoControl(hWavDev, IOCTL_WAV_MESSAGE, &InBuf, sizeof(InBuf), &OutBuf,sizeof(OutBuf),
                        NULL, NULL);

        if (hWavDev != NULL)
                CloseHandle(hWavDev);               

}

int _tmain(TCHAR argc,TCHAR* argv[])
{
        NotifyWavDevByFm(1);
        SignalStarted(50); //notify the OS
        return 1;
}

WAV是音频驱动,built-in driver.应该在我的应用之前就加载了吧.

回复评论 (2)

你的这个程序有什么界面吗?正常情况下会停留在你的这个界面上,因为你用Launch50已经把WINCE的explorer.exe给屏蔽掉了,不启动explorer也就看不到WINCE桌面上的那些东西了,你可以用其它值
点赞  2009-6-1 19:13
thanks . i 'll try .
点赞  2009-6-1 19:19
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复