+ switch(Pkt->KanjiCode)\r
+ {\r
+ case KANJI_SJIS:\r
+ switch(Pkt->KanjiCodeDesired)\r
+ {\r
+ case KANJI_SJIS:\r
+ // カナ変換のため\r
+ cInfo2.Str = cInfo.Buf;\r
+ cInfo2.StrLen = cInfo.OutLen;\r
+ cInfo2.Buf = Buf3;\r
+ cInfo2.BufSize = (BUFSIZE + 3) * 4;\r
+ ConvJIStoSJIS(&cInfo2);\r
+ break;\r
+ case KANJI_JIS:\r
+ memcpy(Buf3, cInfo.Buf, cInfo.OutLen);\r
+ cInfo2.OutLen = cInfo.OutLen;\r
+ break;\r
+ case KANJI_EUC:\r
+ memcpy(Buf3, cInfo.Buf, cInfo.OutLen);\r
+ cInfo2.OutLen = cInfo.OutLen;\r
+ break;\r
+ case KANJI_UTF8N:\r
+ memcpy(Buf3, cInfo.Buf, cInfo.OutLen);\r
+ cInfo2.OutLen = cInfo.OutLen;\r
+ break;\r
+ case KANJI_UTF8BOM:\r
+ memcpy(Buf3, cInfo.Buf, cInfo.OutLen);\r
+ cInfo2.OutLen = cInfo.OutLen;\r
+ break;\r
+ }\r
+ break;\r
+ case KANJI_JIS:\r
+ switch(Pkt->KanjiCodeDesired)\r
+ {\r
+ case KANJI_SJIS:\r
+ memcpy(Buf3, cInfo.Buf, cInfo.OutLen);\r
+ cInfo2.OutLen = cInfo.OutLen;\r
+ break;\r
+ case KANJI_JIS:\r
+ // カナ変換のため\r
+ cInfo2.Str = cInfo.Buf;\r
+ cInfo2.StrLen = cInfo.OutLen;\r
+ cInfo2.Buf = Buf3;\r
+ cInfo2.BufSize = (BUFSIZE + 3) * 4;\r
+ ConvSJIStoJIS(&cInfo2);\r
+ break;\r
+ case KANJI_EUC:\r
+ cInfo2.Str = cInfo.Buf;\r
+ cInfo2.StrLen = cInfo.OutLen;\r
+ cInfo2.Buf = Buf3;\r
+ cInfo2.BufSize = (BUFSIZE + 3) * 4;\r
+ ConvSJIStoEUC(&cInfo2);\r
+ break;\r
+ case KANJI_UTF8N:\r
+ cInfo2.Str = cInfo.Buf;\r
+ cInfo2.StrLen = cInfo.OutLen;\r
+ cInfo2.Buf = Buf3;\r
+ cInfo2.BufSize = (BUFSIZE + 3) * 4;\r
+ ConvSJIStoUTF8N(&cInfo2);\r
+ break;\r
+ case KANJI_UTF8BOM:\r
+ cInfo2.Str = cInfo.Buf;\r
+ cInfo2.StrLen = cInfo.OutLen;\r
+ cInfo2.Buf = Buf3;\r
+ cInfo2.BufSize = (BUFSIZE + 3) * 4;\r
+ ConvSJIStoUTF8N(&cInfo2);\r
+ break;\r
+ }\r
+ break;\r
+ case KANJI_EUC:\r
+ switch(Pkt->KanjiCodeDesired)\r
+ {\r
+ case KANJI_SJIS:\r
+ memcpy(Buf3, cInfo.Buf, cInfo.OutLen);\r
+ cInfo2.OutLen = cInfo.OutLen;\r
+ break;\r
+ case KANJI_JIS:\r
+ cInfo2.Str = cInfo.Buf;\r
+ cInfo2.StrLen = cInfo.OutLen;\r
+ cInfo2.Buf = Buf3;\r
+ cInfo2.BufSize = (BUFSIZE + 3) * 4;\r
+ ConvSJIStoJIS(&cInfo2);\r
+ break;\r
+ case KANJI_EUC:\r
+ // カナ変換のため\r
+ cInfo2.Str = cInfo.Buf;\r
+ cInfo2.StrLen = cInfo.OutLen;\r
+ cInfo2.Buf = Buf3;\r
+ cInfo2.BufSize = (BUFSIZE + 3) * 4;\r
+ ConvSJIStoEUC(&cInfo2);\r
+ break;\r
+ case KANJI_UTF8N:\r
+ cInfo2.Str = cInfo.Buf;\r
+ cInfo2.StrLen = cInfo.OutLen;\r
+ cInfo2.Buf = Buf3;\r
+ cInfo2.BufSize = (BUFSIZE + 3) * 4;\r
+ ConvSJIStoUTF8N(&cInfo2);\r
+ break;\r
+ case KANJI_UTF8BOM:\r
+ cInfo2.Str = cInfo.Buf;\r
+ cInfo2.StrLen = cInfo.OutLen;\r
+ cInfo2.Buf = Buf3;\r
+ cInfo2.BufSize = (BUFSIZE + 3) * 4;\r
+ ConvSJIStoUTF8N(&cInfo2);\r
+ break;\r
+ }\r
+ break;\r
+ case KANJI_UTF8N:\r
+ switch(Pkt->KanjiCodeDesired)\r
+ {\r
+ case KANJI_SJIS:\r
+ memcpy(Buf3, cInfo.Buf, cInfo.OutLen);\r
+ cInfo2.OutLen = cInfo.OutLen;\r
+ break;\r
+ case KANJI_JIS:\r
+ cInfo2.Str = cInfo.Buf;\r
+ cInfo2.StrLen = cInfo.OutLen;\r
+ cInfo2.Buf = Buf3;\r
+ cInfo2.BufSize = (BUFSIZE + 3) * 4;\r
+ ConvSJIStoJIS(&cInfo2);\r
+ break;\r
+ case KANJI_EUC:\r
+ cInfo2.Str = cInfo.Buf;\r
+ cInfo2.StrLen = cInfo.OutLen;\r
+ cInfo2.Buf = Buf3;\r
+ cInfo2.BufSize = (BUFSIZE + 3) * 4;\r
+ ConvSJIStoEUC(&cInfo2);\r
+ break;\r
+ case KANJI_UTF8N:\r
+ memcpy(Buf3, cInfo.Buf, cInfo.OutLen);\r
+ cInfo2.OutLen = cInfo.OutLen;\r
+ break;\r
+ case KANJI_UTF8BOM:\r
+ memcpy(Buf3, cInfo.Buf, cInfo.OutLen);\r
+ cInfo2.OutLen = cInfo.OutLen;\r
+ break;\r
+ }\r
+ break;\r
+ case KANJI_UTF8BOM:\r
+ switch(Pkt->KanjiCodeDesired)\r
+ {\r
+ case KANJI_SJIS:\r
+ memcpy(Buf3, cInfo.Buf, cInfo.OutLen);\r
+ cInfo2.OutLen = cInfo.OutLen;\r
+ break;\r
+ case KANJI_JIS:\r
+ cInfo2.Str = cInfo.Buf;\r
+ cInfo2.StrLen = cInfo.OutLen;\r
+ cInfo2.Buf = Buf3;\r
+ cInfo2.BufSize = (BUFSIZE + 3) * 4;\r
+ ConvSJIStoJIS(&cInfo2);\r
+ break;\r
+ case KANJI_EUC:\r
+ cInfo2.Str = cInfo.Buf;\r
+ cInfo2.StrLen = cInfo.OutLen;\r
+ cInfo2.Buf = Buf3;\r
+ cInfo2.BufSize = (BUFSIZE + 3) * 4;\r
+ ConvSJIStoEUC(&cInfo2);\r
+ break;\r
+ case KANJI_UTF8N:\r
+ memcpy(Buf3, cInfo.Buf, cInfo.OutLen);\r
+ cInfo2.OutLen = cInfo.OutLen;\r
+ break;\r
+ case KANJI_UTF8BOM:\r
+ memcpy(Buf3, cInfo.Buf, cInfo.OutLen);\r
+ cInfo2.OutLen = cInfo.OutLen;\r
+ break;\r
+ }\r
+ break;\r
+ }\r
+// if(WriteFile(iFileHandle, Buf2, cInfo.OutLen, &Writed, NULL) == FALSE)\r
+ if(WriteFile(iFileHandle, Buf3, cInfo2.OutLen, &Writed, NULL) == FALSE)\r
+ Pkt->Abort = ABORT_DISKFULL;\r
+ cInfo2.Buf = Buf3;\r
+ cInfo2.BufSize = (BUFSIZE + 3) * 4;\r
+ FlushRestData(&cInfo2);\r
+ if(WriteFile(iFileHandle, Buf3, cInfo2.OutLen, &Writed, NULL) == FALSE)\r
+ Pkt->Abort = ABORT_DISKFULL;\r
+ }\r