|
다음 xxx.cpp 파일을 include하여 사용하면 out of hash space error가 발생합니다
도대체 hash space가 뭐고, 어떻게 조치해야 합니까
<< xxx.cpp내용 >>
#include <windows.h>
#include <string.h>
#include "xxx.h"
#pragma inline
//NOMANGLE DllExport BYTE __stdcall GetPrnState()
BYTE __stdcall GetPrnState()
{
BYTE bRet = 0;
__asm mov ah, 02h
__asm mov dx, 00
__asm int 17h
__asm mov bRet, ah
return bRet;
}
//NOMANGLE DllExport BOOL __stdcall CheckPaper()
BOOL __stdcall CheckPaper()
{
BOOL blRes;
BYTE bPrnState;
bPrnState = GetPrnState();
if (bPrnState & 0x20) {
blRes = FALSE;
} else {
blRes = TRUE;
}
return blRes;
}
//NOMANGLE DllExport BYTE __stdcall PrintChar(SHORT sChar)
BYTE __stdcall PrintChar(SHORT sChar)
{
//BYTE bChar = sChar & 0x00ff; // original
BYTE bChar = BYTE(sChar & 0x00ff);
BYTE bRet;
do {
__asm mov ah, 02h
__asm mov dx, 00
__asm int 17h
__asm mov bRet, ah
} while (!(bRet & 0x80));
__asm mov ah, 01h
__asm mov dx, 00
__asm int 17h
__asm mov ah, 00h
__asm mov al, bChar
__asm mov dx, 00h
__asm int 17h
__asm mov bRet, ah
return bRet;
}
//NOMANGLE DllExport long __stdcall PrintString(LPSTR lpszText)
long __stdcall PrintString(LPSTR lpszText)
{
long lTextNum;
long i;
char chOne;
lTextNum = strlen(lpszText);
for (i = 0; i < lTextNum; i++) {
chOne = lpszText[i];
PrintChar(chOne);
}
return lTextNum;
}
<< xxx.h 내용>
#ifndef _xxx_H
#define _xxx_H
#define NOMANGLE extern "C"
//#define DllImport __declspec(dllimport)
#define DllExport __declspec(dllexport)
#endif
-이상입니다-
|