mrx Inserito: 22 giugno 2006 Segnala Inserito: 22 giugno 2006 Salve a tutti,sto cercando di utilizzare la funzione chiamata "byte_2_bool_ex6" in questo modo:(interno di module1.bas)Global lVal As longGlobal iaVal(7) As IntegerDeclare Function byte_2_bool_ex6 Lib "Prodave6.dll" (ByVal Value As Long, pBuffer() As Integer)(interno di form1)Private Sub Command1_Click()lVal = 2Call byte_2_bool_ex6(lVal, iaVal())Text1.Text = iaVal(0)End SubRicevo sempre l'errore che "iaVal()" non e' dello stesso formato che la funzione si aspetta.Ho provato molte e molte varianti ma se si segue la documentazione (con esempi solo in C e non vb) , questo dovrebbe essere il modo giusto di usare questa funzione.3.3.7 byte_2_bool_ex6The function byte_2_bool_ex6 converts a byte into 8 logical values (PCrepresentation).void byte_2_bool_ex6 (unsigned char Value, int * pBuffer);ParametersValue[in] Byte valuepBuffer[out] pointer on buffer with 8 converted logical valuesReturn ValuesnoneCall examplesThe transferred pointer should point to an unsigned char field with the followingstructure:Buffer[0] Buffer[1] Buffer[2] Buffer[3] Buffer[4] Buffer[5] Buffer[6] Buffer[7]bit 0 bit 1 bit 2 bit 3 bit 4 bit 5 bit 6 bit 7#define SIZE_BOOL_BYTE 8int Buffer[size_BOOL_BYTE]; // Buffer for 8 logical valuesunsigned char Value = 1;byte_2_bool_ex6 (Value, Buffer); // TRUE will be delivered in Buffer[0], FALSEin BUFFER[1]-[7].RequirementsV5.6 byte_boolean V6.0 byte_2_bool_ex6Windows: 2000, XPHeader: PRODAVE6.HLibrary: PRODAVE6.DLLio continuo a provare, ma incomincio a sentirmi leggerissimamente stanco.Grazie a tutti.
mrx Inserita: 22 giugno 2006 Autore Segnala Inserita: 22 giugno 2006 primo grosso errore e' che sull'esempio che riportano dichiaranoDeclare Function byte_2_bool_ex6 Lib "Prodave6.dll" (ByVal Value As Long, pBuffer As Integer)ma come si puo' vedere la funzione non restituisce nulla , quindi deve essereDeclare Sub byte_2_bool_ex6 Lib "Prodave6.dll" (ByVal Value As Long, pBuffer As Integer)ma ancora non funziona.vediamo chi arriva prima.ciao
Savino Inserita: 22 giugno 2006 Segnala Inserita: 22 giugno 2006 Non ho ancora utilizzata la Prodave 6.0 ma ho sentito che non gira tanto bene come la V 5.6 Declare Function byte_2_bool_ex6 Lib "Prodave6.dll" (ByVal Value As Long, pBuffer As Integer)ma come si puo' vedere la funzione non restituisce nulla , quindi deve essereDeclare Sub byte_2_bool_ex6 Lib "Prodave6.dll" (ByVal Value As Long, pBuffer As Integer)No.Il body della function e' fondata nella Prodave6.dll Dovrebbe essere..In "Value" li passi il valore del byte.In "pBuffer" ricavi il riferimento al primo indice del array..[0], etc... caduno elemento con i valori per i bit.Se ti servono delle funzioni di questo genere le puoi trovare qui
Messaggi consigliati
Crea un account o accedi per commentare
Devi essere un utente per poter lasciare un commento
Crea un account
Registrati per un nuovo account nella nostra comunità. è facile!
Registra un nuovo accountAccedi
Hai già un account? Accedi qui.
Accedi ora