From 74c507190df2c7fdbff2f981d3f8c9f74c1b2823 Mon Sep 17 00:00:00 2001 From: "NARUSE, Yui" Date: Mon, 17 Apr 2006 09:30:56 +0000 Subject: [PATCH] * Modify and Add files for nkf.exe and nkf32.dll. * Add new files. * nkf.mak * nkf32.c * nkf.h * version.rc * dll.rc * dll.def * nkf32dll.c: update version and fix declaration of *fout. --- dll.def | 27 ++++++++++++++++++++++ dll.rc | 34 +++++++++++++++++++++++++++ nkf.h | 77 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ nkf.mak | 67 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ nkf32.c | 1 + nkf32dll.c | 8 +++---- version.rc | 34 +++++++++++++++++++++++++++ 7 files changed, 244 insertions(+), 4 deletions(-) create mode 100755 dll.def create mode 100755 dll.rc create mode 100755 nkf.h create mode 100755 nkf.mak create mode 100755 nkf32.c create mode 100755 version.rc diff --git a/dll.def b/dll.def new file mode 100755 index 0000000..ab182c2 --- /dev/null +++ b/dll.def @@ -0,0 +1,27 @@ +LIBRARY nkf32.dll + +EXPORTS + GetNkfVersion + SetNkfOption + NkfConvert + ToHankaku + ToZenkakuKana + EncodeSubject + ToMime + NkfGetKanjiCode + NkfFileConvert1 + NkfFileConvert2 + NkfConvertSafe + ToHankakuSafe + ToZenkakuKanaSafe + EncodeSubjectSafe + GetNkfVersionSafeA + NkfFileConvert1SafeA + NkfFileConvert2SafeA + GetNkfGuessA + GetNkfVersionSafeW + NkfFileConvert1SafeW + NkfFileConvert2SafeW + GetNkfGuessW + GetNkfSupportFunctions + NkfUsage diff --git a/dll.rc b/dll.rc new file mode 100755 index 0000000..21992d7 --- /dev/null +++ b/dll.rc @@ -0,0 +1,34 @@ +#include + +1 VERSIONINFO +FILEVERSION 2,0,7,0 +PRODUCTVERSION 2,0,7,0 +FILEFLAGSMASK 0x3fL +#ifdef _DEBUG +FILEFLAGS 0x1L +#else +FILEFLAGS 0x0L +#endif +FILEOS VOS__WINDOWS32 +FILETYPE VFT_DLL +FILESUBTYPE 0x0L +{ + BLOCK "StringFileInfo" + { + BLOCK "041103A4" + { + VALUE "CompanyName", "project nkf\0" + VALUE "FileDescription", "Network Kanji Filter\0" + VALUE "FileVersion", "2.0.7.0 1\0" + VALUE "InternalName", "nkf32\0" + VALUE "LegalCopyright", "Copyright (C) 1987, Fujitsu LTD. (Itaru ICHIKAWA); Copyright (C) 2003-2004 T.kaneto\0" + VALUE "OriginalFilename", "nkf32.c\0" + VALUE "ProductName", "nkf32.dll\0" + VALUE "ProductVersion", "2.0.7.0 1\0" + } + } + BLOCK "VarFileInfo" + { + VALUE "Translation", 0x411, 932 + } +} diff --git a/nkf.h b/nkf.h new file mode 100755 index 0000000..d2e8b2f --- /dev/null +++ b/nkf.h @@ -0,0 +1,77 @@ +/* nkf32.dll nkf.h */ +#ifndef CLASS_DECLSPEC +/* dll __declspec(dllexport) */ +/* app __declspec(dllimport) */ +#define CLASS_DECLSPEC +#endif +#ifdef __cplusplus +extern "C" { +#endif /* __cplusplus */ +#ifdef __BORLANDC__ +#pragma argsused +#endif /*__BORLANDC__*/ +/* uminchu nkf32103a.lzh 1.00 */ +void CALLBACK CLASS_DECLSPEC GetNkfVersion(LPSTR verStr); +int CALLBACK CLASS_DECLSPEC SetNkfOption(LPCSTR optStr); +void CALLBACK CLASS_DECLSPEC NkfConvert(LPSTR outStr, LPCSTR inStr); +/* uminchu nkf32103a.lzh 1.02 */ +void CALLBACK CLASS_DECLSPEC ToHankaku(LPSTR inStr); +void CALLBACK CLASS_DECLSPEC ToZenkakuKana(LPSTR outStr ,LPCSTR inStr); +/* uminchu nkf32103a.lzh 1.03 */ +void CALLBACK CLASS_DECLSPEC EncodeSubject(LPSTR outStr ,LPCSTR inStr); +/* tkaneto nkf32204.zip 2.0.4.0 */ +#ifdef TOMIME +void CALLBACK CLASS_DECLSPEC ToMime(LPSTR outStr ,LPCSTR inStr); +#endif /*TOMIME*/ +#ifdef GETKANJICODE +int CALLBACK CLASS_DECLSPEC NkfGetKanjiCode(VOID); +#endif /*GETKANJICODE*/ +#ifdef FILECONVERT1 +void CALLBACK CLASS_DECLSPEC NkfFileConvert1(LPCSTR fName); +#endif /*FILECONVERT1*/ +#ifdef FILECONVERT2 +void CALLBACK CLASS_DECLSPEC NkfFileConvert2(LPCSTR fInName,LPCSTR fOutName); +#endif /*FILECONVERT2*/ +#ifndef NKF32103A +/* safe */ +BOOL WINAPI CLASS_DECLSPEC GetNkfVersionSafeA(LPSTR verStr,DWORD nBufferLength /*in TCHARs*/,LPDWORD lpTCHARsReturned /*in TCHARs*/); +BOOL WINAPI CLASS_DECLSPEC NkfConvertSafe(LPSTR outStr,DWORD nOutBufferLength /*in Bytes*/,LPDWORD lpBytesReturned /*in Bytes*/, LPCSTR inStr,DWORD nInBufferLength /*in Bytes*/); +BOOL WINAPI CLASS_DECLSPEC ToZenkakuKanaSafe(LPSTR outStr,DWORD nOutBufferLength /*in Bytes*/,LPDWORD lpBytesReturned /*in Bytes*/,LPCSTR inStr,DWORD nInBufferLength /*in Bytes*/); +BOOL WINAPI CLASS_DECLSPEC ToHankakuSafe(LPSTR outStr,DWORD nOutBufferLength /*in Bytes*/,LPDWORD lpBytesReturned /*in Bytes*/,LPCSTR inStr,DWORD nInBufferLength /*in Bytes*/); +BOOL WINAPI CLASS_DECLSPEC EncodeSubjectSafe(LPSTR outStr,DWORD nOutBufferLength /*in Bytes*/,LPDWORD lpBytesReturned /*in Bytes*/,LPCSTR inStr,DWORD nInBufferLength /*in Bytes*/); +BOOL WINAPI CLASS_DECLSPEC NkfFileConvert1SafeA(LPCSTR fName,DWORD nBufferLength /*in TCHARs*/); +BOOL WINAPI CLASS_DECLSPEC NkfFileConvert2SafeA(LPCSTR fInName,DWORD fInBufferLength /*in TCHARs*/,LPCSTR fOutName,DWORD fOutBufferLength /*in TCHARs*/); +BOOL WINAPI CLASS_DECLSPEC GetNkfGuessA(LPSTR outStr,DWORD nBufferLength /*in TCHARs*/,LPDWORD lpTCHARsReturned /*in TCHARs*/); + +BOOL WINAPI CLASS_DECLSPEC GetNkfVersionSafeW(LPWSTR verStr,DWORD nBufferLength /*in TCHARs*/,LPDWORD lpTCHARsReturned /*in TCHARs*/); +BOOL WINAPI CLASS_DECLSPEC NkfFileConvert1SafeW(LPCWSTR fName,DWORD nBufferLength /*in TCHARs*/); +BOOL WINAPI CLASS_DECLSPEC NkfFileConvert2SafeW(LPCWSTR fInName,DWORD fInBufferLength /*in TCHARs*/,LPCWSTR fOutName,DWORD fOutBufferLength /*in TCHARs*/); +BOOL WINAPI CLASS_DECLSPEC GetNkfGuessW(LPWSTR outStr,DWORD nBufferLength /*in TCHARs*/,LPDWORD lpTCHARsReturned /*in TCHARs*/); +BOOL WINAPI CLASS_DECLSPEC GetNkfSupportFunctions(void *outStr,DWORD nBufferLength /*in Bytes*/,LPDWORD lpBytesReturned /*in Bytes*/); +BOOL WINAPI CLASS_DECLSPEC NkfUsage(LPSTR outStr,DWORD nBufferLength /*in Bytes*/,LPDWORD lpBytesReturned /*in Bytes*/); + +#ifdef UNICODE +#define GetNkfVersionSafe GetNkfVersionSafeW +#define GetNkfGuess GetNkfGuessW +#define NkfFileConvert1Safe NkfFileConvert1SafeW +#define NkfFileConvert2Safe NkfFileConvert2SafeW +#else /*UNICODE*/ +#define GetNkfVersionSafe GetNkfVersionSafeA +#define GetNkfGuess GetNkfGuessA +#define NkfFileConvert1Safe NkfFileConvert1SafeA +#define NkfFileConvert2Safe NkfFileConvert2SafeA +#endif /*UNICODE*/ + +struct NKFSUPPORTFUNCTIONS { +DWORD size; +LPCSTR copyrightA; +LPCSTR versionA; +LPCSTR dateA; +DWORD functions; +}; +#endif /*!defined(NKF32103A)*/ + +#ifdef __cplusplus +} // Balance extern "C" above +#endif /*__cplusplus*/ +/* nkf32.dll nkf.h end */ diff --git a/nkf.mak b/nkf.mak new file mode 100755 index 0000000..88a5b1b --- /dev/null +++ b/nkf.mak @@ -0,0 +1,67 @@ +# Visual C++ 2005 Express Edition +CC = cl +LD=link +CFLAGS = -O2 -DMSDOS -DWIN32 -D__WIN32__ -D_CRT_SECURE_NO_DEPRECATE +LD_FLAGS = +LIBS = user32.lib kernel32.lib gdi32.lib +RC = rc + +all: nkf.exe nkf32.dll + +nkf.exe : nkf.obj config.h utf8tbl.obj version.res + $(CC) $(CFLAGS) /MT nkf.obj utf8tbl.obj version.res /link setargv.obj + copy nkf.exe WIN\nkf.exe + +# Windows NT +nkf32.dll: nkf32.obj utf8tbl.obj dll.res + $(LD) $(LDFLAGS) /DLL /DEF:dll.def nkf32.obj utf8tbl.obj dll.res + copy nkf32.dll NT\nkf32.dll + copy nkf32.lib NT\nkf32.lib + +# Windows NT +nkf32.lib: nkf32.obj utf8tbl.obj dll.res + $(LD) $(LDFLAGS) /DLL /DEF:dll.def nkf32.obj utf8tbl.obj dll.res + copy nkf32.dll NT\nkf32.dll + copy nkf32.lib NT\nkf32.lib + +nkf.obj : nkf.c config.h + $(CC) $(CFLAGS) /MT -c nkf.c + +# Windows NT +nkf32.obj: nkf32.c nkf.c nkf32dll.c config.h nkf.h + $(CC) $(CFLAGS) /LD /DLL -DWIN32DLL -DTOMIME -DGETKANJICODE -DFILECONVERT1 -DFILECONVERT2 -DUNICODESUPPORT /c nkf32.c + +utf8tbl.obj : utf8tbl.c config.h + $(CC) $(CFLAGS) /c utf8tbl.c + +version.res: version.rc + $(RC) $(RCFLAGS) version.rc + +dll.res: dll.rc + $(RC) $(RCFLAGS) dll.rc + +clean: + -del nkf.obj + -del nkf32.obj + -del utf8tbl.obj + -del version.res + -del dll.res + -del nkf.exe + -del nkf32.dll + -del nkf32.lib + +# Windows 9x +#nkf32.dll: nkf32.obj utf8tbl.obj dll.res +# $(LD) $(LDFLAGS) /DLL /DEF:dll.def nkf32.obj utf8tbl.obj dll.res +# copy nkf32.dll 9x\nkf32.dll +# copy nkf32.lib 9x\nkf32.lib +# +# Windows 9x +#nkf32.lib: nkf32.obj utf8tbl.obj dll.res +# $(LD) $(LDFLAGS) /DLL /DEF:dll.def nkf32.obj utf8tbl.obj dll.res +# copy nkf32.dll 9x\nkf32.dll +# copy nkf32.lib 9x\nkf32.lib +# +# Windows 9x +#nkf32.obj: nkf32.c nkf.c nkf32dll.c config.h nkf.h +# $(CC) $(CFLAGS) /LD /DLL -DWIN32DLL -DTOMIME -DGETKANJICODE -DFILECONVERT1 -DFILECONVERT2 -UUNICODESUPPORT /c nkf32.c diff --git a/nkf32.c b/nkf32.c new file mode 100755 index 0000000..d417f31 --- /dev/null +++ b/nkf32.c @@ -0,0 +1 @@ +#include "nkf.c" diff --git a/nkf32dll.c b/nkf32dll.c index b4532a3..0653ec4 100644 --- a/nkf32dll.c +++ b/nkf32dll.c @@ -4,11 +4,11 @@ /*WIN32DLL*/ /* ‚±‚¿‚ç‚̃o[ƒWƒ‡ƒ“‚àXV‚µ‚Ä‚­‚¾‚³‚¢B */ -#define NKF_VERSIONW L"2.0.6" +#define NKF_VERSIONW L"2.0.7" /* NKF_VERSION ‚̃ƒCƒh•¶Žš */ -#define DLL_VERSION "2.0.6.0 1" +#define DLL_VERSION "2.0.7.0 1" /* DLL‚ª•Ô‚· */ -#define DLL_VERSIONW L"2.0.6.0 1" +#define DLL_VERSIONW L"2.0.7.0 1" /* DLL‚ª•Ô‚· DLL_VERSION ‚̃ƒCƒh•¶Žš */ /* nkf32.dll main */ @@ -153,7 +153,7 @@ FILE *f; return EOF; } -static FILE *fout = stdout; +static FILE *fout = NULL; static unsigned char *cout = NULL; static int nout = -1; static int noutmax = -1; diff --git a/version.rc b/version.rc new file mode 100755 index 0000000..1b15fdd --- /dev/null +++ b/version.rc @@ -0,0 +1,34 @@ +#include + +1 VERSIONINFO +FILEVERSION 2,0,7,0 +PRODUCTVERSION 2,0,7,0 +FILEFLAGSMASK 0x3fL +#ifdef _DEBUG +FILEFLAGS 0x1L +#else +FILEFLAGS 0x0L +#endif +FILEOS VOS__WINDOWS32 +FILETYPE VFT_APP +FILESUBTYPE 0x0L +{ + BLOCK "StringFileInfo" + { + BLOCK "041103A4" + { + VALUE "CompanyName", "project nkf\0" + VALUE "FileDescription", "Network Kanji Filter\0" + VALUE "FileVersion", "2.0.7\0" + VALUE "InternalName", "nkf\0" + VALUE "LegalCopyright", "Copyright (C) 1987, Fujitsu LTD. (Itaru ICHIKAWA)\0" + VALUE "OriginalFilename", "nkf.c\0" + VALUE "ProductName", "nkf.exe\0" + VALUE "ProductVersion", "2.0.7\0" + } + } + BLOCK "VarFileInfo" + { + VALUE "Translation", 0x411, 932 + } +} -- 2.11.0