22. april 2008 - 08:44Der er
9 kommentarer og 1 løsning
Test om comport er ibrug.
Jeg har et gammelt stykke sw som er skrevet i VC++ 6.0.
Det bruger serial kommunikation. Problemet er at hvis man har comporte(på tlf) over bluetooth og telefonen er tilsluttet. tager det lang tid + telefonen kræver accept af om pc må tilslutte.
Dette er et problem og skal fjernes. Der må ikke bruges bt porte.
Er der nogen der har et forslag til hvordan man løser dette.
Sådan gøres det idag. Jeg syntes det virker lidt uheldigt at porten forsøges åbnet for at undersøge om den er optaget - kan det ikke gøres anderledes? void CHardiExeUploadWinDlg::updateCombo() { comboPtr = (CComboBox*) GetDlgItem( IDC_COMBO1); CString comport = "\\\\.\\com"; CString nrString; char * nr = new char[];
for (int i =1; i<MAX_COMPORT_NUMBER; i++) { itoa(i,nr,10); nrString = nr;
Sludder. det er tælleren til den port der skal åbnes. char * nr = new char[]; itoa(i,nr,10); nrString = nr; HANDLE m_porthandle = CreateFile( comport+nrString, GENERIC........
Men er et uheld der venter på at ske, da du ikke ved hvad du får tilbage fra din new, måske er det ok eller måske ikke. Måske ændre det sig i næste version eller patch da det er udefineret hvad der returneres.
Uden at sætte noget på højkant, så ville jeg jo mene at der bliver allokeret ledig ram med new kommandoen, og hvad der har været på adressen før er ligemeget da variablen 'nr' bliver tilskrevet med tællervariablen 'i' i denne linje itoa(i,nr,10); før den bruges
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.