MOEDEIRO CONVERTER CODIGO C PARA VB6
Alguem ja conseguiu fazer um pequeno programa que trabalha-se com um moedeiro usb?
Citação::
Ola a todos!
Alguem ja conseguiu fazer um pequeno programa que trabalha-se com um moedeiro usb?
Nunca fiz, mas realmente é bem interessante. Traz muitas idéias legais na cabeça rsrs
Agora com relação ao desenvolvimento, normalmente esses hardwares vem com drivers ou DLL para fazer o desenvolvimento em várias linguagens. Um exemplo é os famosos leitores biométricos ou leitoras de cheques. Os fabricantes trazem DLL para trabalhar com eles em suas app.
Obs.: Esse moedeiro é o EMP-800.14 USB certo ??
Esse moedeiro vem com o Software InterCafé.
FONTE:
http://www.cafebar-software.com/moedeiro.html
Espero que te ajude !!
Abraços !!
Citação::
:
Ola a todos!
Alguem ja conseguiu fazer um pequeno programa que trabalha-se com um moedeiro usb?
Nunca fiz, mas realmente é bem interessante. Traz muitas idéias legais na cabeça rsrs
Agora com relação ao desenvolvimento, normalmente esses hardwares vem com drivers ou DLL para fazer o desenvolvimento em várias linguagens. Um exemplo é os famosos leitores biométricos ou leitoras de cheques. Os fabricantes trazem DLL para trabalhar com eles em suas app.
Obs.: Esse moedeiro é o EMP-800.14 USB certo ??
Esse moedeiro vem com o Software InterCafé.
FONTE:
http://www.cafebar-software.com/moedeiro.html
Espero que te ajude !!
Abraços !!
Sim é, mas a minha dúvida é se existe maneira de colocar o moedeiro a funcionar no vb? Visto que eles tem um programa próprio e se fornecem os códigos necessários para o seu funcionamento.
Já enviei um e-mail a perguntar se fornecem os códigos para o VB6
Citação::
eu criei um jukebox que usa esse equipamento, mas no meu caso usava a interface ps2 do teclado, e eu recebia os comando como se fosse uma tecla precisonada. talves esse tambem funcione assim.
Essa ideia parece interessante, mas isso precisa de uma placa com uma pic? Certo?
Citação::
sim, no meu caso usava uma plaquinha controladora, onde alem de controlar o moedeiro, tbm sai mais alguma cabos que eu usava para ligar os botoes de comando da jukebox.
pois mas com o cabo usb ligado directo ao moedeiro, em principio não precisamos de outras interfaces ligado ao moedeiro, alem de termos acesso a outros tipos de informação. Por exemplo com uma placar a fazer interface não é possÃvel ter acesso ao contador interno do moedeiro onde nos dizem quantas moedas foram inseridas e quais. Estas dados são importantes visto que dá para combater erros no programa que fizermos.
Aguem podia-me dar uma ajudinha para colocar isto no vb6?
#define WM_PAYMENTMESSAGE (WM_USER+1)
BEGIN_MESSAGE_MAP(CPC_Vending, CDialog)
// Message from Payment Manager
ON_MESSAGE(WM_PAYMENTMESSAGE,OnPaymentMessage)
END_MESSAGE_MAP()
extern [Ô]C[Ô] {
typedef int __stdcall nTypST(void);
typedef int __stdcall nTypI(HWND,int,int,int,int);
typedef int __stdcall nTypII(int,int,int,int);
static HINSTANCE vendlib = NULL;
static nTypST *openpaymentmanager = NULL;
static nTypI *startpaymentmanager = NULL;
static nTypST *stoppaymentmanager = NULL;
static nTypST *closepaymentmanager = NULL;
static nTypII *setpaymentmanager = NULL;
int message_buffer1[500];
int message_buffer2[500];
int pointer_in;
}
static BOOL LoadVendLib()
{
if(vendlib) return TRUE;
// Release
vendlib = LoadLibrary([Ô]PaymentManager.DLL[Ô]);
if(vendlib)
{
openpaymentmanager =
(nTypST*)GetProcAddress(vendlib,[Ô]openpaymentmanager[Ô]);
startpaymentmanager =
(nTypI*)GetProcAddress(vendlib,[Ô]startpaymentmanager[Ô]);
stoppaymentmanager =
(nTypST*)GetProcAddress(vendlib,[Ô]stoppaymentmanager[Ô]);
closepaymentmanager =
(nTypST*)GetProcAddress(vendlib,[Ô]closepaymentmanager[Ô]);
setpaymentmanager =
(nTypII*)GetProcAddress(vendlib,[Ô]setpaymentmanager[Ô]);
if(!openpaymentmanager|!startpaymentmanager|!stoppaymentmanager|
!closepaymentmanager|!setpaymentmanager)
{
// Library not found
openpaymentmanager = NULL;
startpaymentmanager = NULL;
stoppaymentmanager = NULL;
closepaymentmanager = NULL;
setpaymentmanager = NULL;
return FALSE;
}
}
if(!vendlib) return FALSE;
return TRUE;
}
int CMyApplication::LoadLibraryPaymentManager()
{
return LoadVendLib();
}
int CMyApplication::OpenPaymentManager()
{
if(LoadLibraryPaymentManager())
return (*openpaymentmanager)();
}
int CMyApplication::ClosePaymentManager()
{
return (*closepaymentmanager)();
}
int CMyApplication::StartPaymentManager(int devices, int messageConfig, int
protocol)
{
return (*startpaymentmanager)( this->m_hWnd, WM_PAYMENTMESSAGE, devices,
messageConfig, protocol);
}
int CMyApplication::StopPaymentManager()
{
return (*stoppaymentmanager)();
}
int CMyApplication::SetPaymentManager(int command,int selection,int info1, int
info2)
{
return (*setpaymentmanager)(command, selection,info1,info2);
}
// Message routine
LRESULT CMyApplication::OnPaymentMessage(WPARAM wParam, LPARAM lParam)
{
// Save Message information as fast as possible
message_buffer1[pointer_in] = wParam;
message_buffer2[pointer_in] = lParam;
if (pointer_in>500)
{
pointer_in = 0;
}
else
{
pointer_in++;
}
return (LRESULT) wParam;
}