Ben - Hur 0 Denunciar post Postado Agosto 22, 2009 Olá, estou tentando criar uma rotina em um Timer com o determinado objetivo: Pegar os dados de um ListBox e atribuir esses dados aonde tem BYTE CMD_ERL_WL60[] = "0x7B,0x00,0x04,0x54,0x54,0x4C,0x00,0x00,0x00,0x00" . Inicie com uma variável RetByte para ler os dados do ListBox, porém dá o erro "Call of nonfunction". Sendo que , não sei como vou encaixar essa variavel RetByte aonde tem os dados em hexa, ( BYTE CMD_ERL_WL60[] ), precisaria transformar para alguma outra variável? unsigned char MontaByte ; unsigned char RetByte = (unsigned char)MontaByte(ListBox02->Items->Strings[iPUBIndex].c_str()); iPUBIndex++; if(iPUBIndex >= ListBox02->Items->Count){ iPUBIndex = 0; iPUBContaVezes++; } BYTE CMD_ERL_WL60[] = {0x7B,0x00,0x04,0x54,0x54,0x4C,0x00,0x00,0x00,0x00} RS232_TX(10, CMD_ERL_WL60); Sleep(1); Grato. Compartilhar este post Link para o post Compartilhar em outros sites
VictorCacciari 42 Denunciar post Postado Agosto 23, 2009 Olá Ben - Hur! Cara, a sua explicação ficou meio confusa... Mas o erro "call of nonfunction" é um pouco autoexplicativo... e eu aposto que ele apareceu na linha: unsigned char RetByte = (unsigned char)MontaByte(ListBox02->Items->Strings[iPUBIndex].c_str()); Note que você declarou "MontaByte" como uma variável e não uma função! E outra... std::string::c_str() retorna char*, não esqueça! Compartilhar este post Link para o post Compartilhar em outros sites