nErr=RegCreateKeyEx(HKEY_LOCAL_MACHINE,szRegKey,0,L"",0,0,NULL,&hDrvKey,&dwDisp);<br /> if(nErr!=ERROR_SUCCESS)<br /> {<br /> MessageBox(_T("创建驱动注册表子键失败!"));<br /> return;<br /> }<br /> else<br /> {<br /> //往注册表里添加内容<br /> WRITE_REG_SZ(L"Prefix",szPrefix);<br /> WRITE_REG_SZ(L"Dll",szDLL);<br /> WRITE_REG_SZ(L"FriendlyName",szFriendlyName);<br /> WRITE_REG_DWORD(L"Order",DrvOrder);<br /> WRITE_REG_DWORD(L"Index",DrvIndex);<br /> }<br /> HandleDriver=ActivateDeviceEx(szRegKey,NULL,0,NULL); //加载SimpleDriver驱动<br /> if(HandleDriver==INVALID_HANDLE_VALUE)<br /> {<br /> MessageBox(_T("加载SimpleDriver失败!"));<br /> }<br /> else<br /> {<br /> MessageBox(_T("加载SimpleDriver成功!"));<br /> } <br />并且成功了<br /><br />hFile=CreateFile(_T("SPL1:"),GENERIC_READ|GENERIC_WRITE,0,0, OPEN_EXISTING,0,0);<br /> //sprintf(buf,"hFile=0x%x",hFile);<br /> CString strTmp;<br /> strTmp.Format(_T("%x"),hFile); <br /> CEdit *pDispEdit=(CEdit*)GetDlgItem(IDC_READ_DISP);<br /> pDispEdit->SetWindowText(strTmp);<br /> if(hFile==INVALID_HANDLE_VALUE)<br /> {<br /> MessageBox(_T("不能打开"));<br /> <br /> }<br /> else<br /> {<br /> MessageBox(_T("打开成功!"));<br /> }<br />打开驱动时,却总是失败
|