| 385 |
CloseHandle(ptr->LogThread); |
CloseHandle(ptr->LogThread); |
| 386 |
ptr->LogThread = (HANDLE)-1; |
ptr->LogThread = (HANDLE)-1; |
| 387 |
} |
} |
| 388 |
|
#ifdef FileVarWin16 |
| 389 |
_lclose(ptr->FileHandle); |
_lclose(ptr->FileHandle); |
| 390 |
|
#else |
| 391 |
|
CloseHandle((HANDLE)ptr->FileHandle); |
| 392 |
|
#endif |
| 393 |
} |
} |
| 394 |
|
|
| 395 |
// 遅延書き込み用スレッド |
// 遅延書き込み用スレッド |
| 399 |
PFileVar fv = (PFileVar)arg; |
PFileVar fv = (PFileVar)arg; |
| 400 |
PCHAR buf; |
PCHAR buf; |
| 401 |
DWORD buflen; |
DWORD buflen; |
| 402 |
|
DWORD wrote; |
| 403 |
|
|
| 404 |
PeekMessage(&msg, NULL, 0, 0, PM_NOREMOVE); |
PeekMessage(&msg, NULL, 0, 0, PM_NOREMOVE); |
| 405 |
|
|
| 408 |
case WM_DPC_LOGTHREAD_SEND: |
case WM_DPC_LOGTHREAD_SEND: |
| 409 |
buf = (PCHAR)msg.wParam; |
buf = (PCHAR)msg.wParam; |
| 410 |
buflen = (DWORD)msg.lParam; |
buflen = (DWORD)msg.lParam; |
| 411 |
|
#ifdef FileVarWin16 |
| 412 |
_lwrite(fv->FileHandle, buf, buflen ); |
_lwrite(fv->FileHandle, buf, buflen ); |
| 413 |
|
#else |
| 414 |
|
WriteFile((HANDLE)LogVar->FileHandle, buf, buflen, &wrote, NULL); |
| 415 |
|
#endif |
| 416 |
free(buf); // ここでメモリ解放 |
free(buf); // ここでメモリ解放 |
| 417 |
break; |
break; |
| 418 |
|
|
| 567 |
LogVar->FileHandle = (int)CreateFile(LogVar->FullName, GENERIC_WRITE, dwShareMode, NULL, |
LogVar->FileHandle = (int)CreateFile(LogVar->FullName, GENERIC_WRITE, dwShareMode, NULL, |
| 568 |
OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL); |
OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL); |
| 569 |
if (LogVar->FileHandle>0){ |
if (LogVar->FileHandle>0){ |
| 570 |
|
#ifdef FileVarWin16 |
| 571 |
_llseek(LogVar->FileHandle,0,2); |
_llseek(LogVar->FileHandle,0,2); |
| 572 |
|
#else |
| 573 |
|
SetFilePointer((HANDLE)LogVar->FileHandle, 0, NULL, FILE_END); |
| 574 |
|
#endif |
| 575 |
/* 2007.05.24 Gentaro |
/* 2007.05.24 Gentaro |
| 576 |
If log file already exists, |
If log file already exists, |
| 577 |
a newline is inserted before the first timestamp. |
a newline is inserted before the first timestamp. |
| 813 |
PCHAR WriteBuf; |
PCHAR WriteBuf; |
| 814 |
DWORD WriteBufMax, WriteBufLen; |
DWORD WriteBufMax, WriteBufLen; |
| 815 |
CHAR tmp[128]; |
CHAR tmp[128]; |
| 816 |
|
DWORD wrote; |
| 817 |
|
|
| 818 |
if (! LogVar->FileOpen) return; |
if (! LogVar->FileOpen) return; |
| 819 |
if (FileLog) |
if (FileLog) |
| 909 |
#endif |
#endif |
| 910 |
/* 2007.05.24 Gentaro */ |
/* 2007.05.24 Gentaro */ |
| 911 |
if( eLineEnd == Line_FileHead ){ |
if( eLineEnd == Line_FileHead ){ |
| 912 |
|
#ifdef FileVarWin16 |
| 913 |
_lwrite(LogVar->FileHandle,"\r\n",2); |
_lwrite(LogVar->FileHandle,"\r\n",2); |
| 914 |
|
#else |
| 915 |
|
WriteFile((HANDLE)LogVar->FileHandle, "\r\n", 2, &wrote, NULL); |
| 916 |
|
#endif |
| 917 |
} |
} |
| 918 |
|
#ifdef FileVarWin16 |
| 919 |
_lwrite(LogVar->FileHandle,"[",1); |
_lwrite(LogVar->FileHandle,"[",1); |
| 920 |
_lwrite(LogVar->FileHandle, strtime, strlen(strtime)); |
_lwrite(LogVar->FileHandle, strtime, strlen(strtime)); |
| 921 |
_lwrite(LogVar->FileHandle,"] ",2); |
_lwrite(LogVar->FileHandle,"] ",2); |
| 922 |
|
#else |
| 923 |
|
WriteFile((HANDLE)LogVar->FileHandle, "[", 1, &wrote, NULL); |
| 924 |
|
WriteFile((HANDLE)LogVar->FileHandle, strtime, strlen(strtime), &wrote, NULL); |
| 925 |
|
WriteFile((HANDLE)LogVar->FileHandle, "] ", 2, &wrote, NULL); |
| 926 |
|
#endif |
| 927 |
} |
} |
| 928 |
|
|
| 929 |
/* 2007.05.24 Gentaro */ |
/* 2007.05.24 Gentaro */ |
| 934 |
eLineEnd = Line_Other; /* clear endmark*/ |
eLineEnd = Line_Other; /* clear endmark*/ |
| 935 |
} |
} |
| 936 |
|
|
| 937 |
|
#ifdef FileVarWin16 |
| 938 |
_lwrite(LogVar->FileHandle,(PCHAR)&b,1); |
_lwrite(LogVar->FileHandle,(PCHAR)&b,1); |
| 939 |
|
#else |
| 940 |
|
WriteFile((HANDLE)LogVar->FileHandle, (PCHAR)&b, 1, &wrote, NULL); |
| 941 |
|
#endif |
| 942 |
(LogVar->ByteCount)++; |
(LogVar->ByteCount)++; |
| 943 |
} |
} |
| 944 |
} |
} |