我的打印机命令有修改的 所以要自己发送正确的命令 但我想问怎样可以直接发送我的命令给打印机呢

解决方案 »

  1.   

    我以前用过斑马的打印机,开了LPT后,把ZPL指令写进去就完了。
    看了我自己的回答,貌似觉得楼主的问题不是这么简单吧,没看明白
      

  2.   


    {
    UINT nSize = static_cast<UINT>(m_aPageItem.GetSize());
    if (pInfo->m_nCurPage > nSize) {
    pInfo->SetMaxPage(nSize);
    return;
    } if (pInfo->m_nCurPage == 1)
    InitColoumnPos(pInfo); CPen penLine(PS_SOLID, 3, RGB(0, 0, 0));
    CPen *lpPenOld = pDC->SelectObject(&penLine);
    pDC->SetTextAlign(TA_LEFT); PrintHeadFoot(pDC, pInfo); PrintPageContent(pDC, pInfo);
    pDC->SelectObject(lpPenOld);
    }
      

  3.   

    我要是
    ESC  i全切纸                                                                          
    名称   全切纸
    格式   ASCII码    ESC    i
           十六进制    1B    69
             十进制    27    105
    描述  切纸操作,把纸全切断
    DCB dcb; 
     HANDLE hCom; 
    BOOL fSuccess; 
    dcb.DCBlength = sizeof(DCB); 
    // TODO: 在此添加控件通知处理程序代码
    hCom = CreateFile( "COM4",
                         GENERIC_READ | GENERIC_WRITE,
                         0,    
                         NULL, 
                         OPEN_EXISTING, // comm devices must use OPEN_EXISTING
                         0,      //FILE_ATTRIBUTE_NORMAL|FILE_FLAG_OVERLAPPED
                         NULL   // hTemplate must be NULL for comm devices
                         );
    if(hCom==(HANDLE)-1)
    {
    AfxMessageBox("打开COM失败!");
    } fSuccess = GetCommState(hCom, &dcb); dcb.BaudRate = CBR_9600;     // set the baud rate
    dcb.ByteSize = 8;             // data size, xmit, and rcv
    dcb.Parity =  NOPARITY;        // no parity bit
    dcb.StopBits = ONESTOPBIT;    // one stop bit
        fSuccess = SetCommState(hCom, &dcb); CString lpOutBuffer = _T("ASCII  ESC  i"); DWORD dwBytesWrite= 100;
    COMSTAT ComStat;
    DWORD dwErrorFlags;
    BOOL bWriteStat;
    //ClearCommError(hCom,&dwErrorFlags,&ComStat);
    bWriteStat=WriteFile(hCom,lpOutBuffer,dwBytesWrite,&dwBytesWrite,NULL);
    if(!bWriteStat)
    {
    AfxMessageBox("写入失败!");
    }但他不是收命令 而是打印出ASCII  ESC  i一群乱码 要怎样给他命令啊
      

  4.   

    要用16进制的数据发,而不是名称发.......
    char buf[10];
    buf[0]=0x1B;//esc
    buf[1]=0x69;
    bWriteStat=WriteFile(hCom,buf,2,&dwBytesWrite,NULL); 
      

  5.   

    dirdirdir3 成功了 !还有个问题 我想他打印我的文档!在哪设置文档信息给他的啊