<?xml version="1.0" encoding="utf-8"?>
<libraries>
- <library name="unlha32.dll" prefix="Unlha" unicode="0" typename="Lzh" suffix="lzh;lha;lzs"
+ <library name="unlha32.dll" prefix="Unlha" unicode="1" typename="Lzh" suffix="lzh;lha;lzs"
sfx ='s -n -gw4 "-gr%93" --3 "%90" "%91"'
create ='a -n -r2 -a1 -x%a0 %a1{-gw3|} --3 "%90" "%91" "@%92"'
add ='a -n -r2 -a1 -x%a0 --3 "%90" "%91" "@%92"'
<library name="UnAceV2J.dll" prefix="UnAce" typename="Ace" quote-resp="0"
extract ='%a0{x|e} --hide %a5{"-p#"|} "%90" "%91" "@%92"'
test ='t --hide "%90" "@%92"' />
- <library name="unarj32j.dll" prefix="Unarj" typename="Arj" unicode="0"
+ <library name="unarj32j.dll" prefix="Unarj" typename="Arj" unicode="1"
extract ='%a0{x|e} -i -!@ -- "%90" "%91" "@%92"'
test ='t -i -- "%90" "@%92"' />
<library name="yz1.dll" prefix="Yz1" typename="Yz1" suffix="yz1"
<dt>calLibrary</dt>\r
<dd>\r
<ul>\r
+ <li class="add">Unicode版のW系APIに対応。</li>\r
<li class="fix">作業ディレクトリからライブラリを読み込まないよう修正。</li>\r
</ul>\r
</dd>\r
return szCommandLineSend;\r
}\r
\r
-wxString MakeResponceFile(wxArrayString asFiles, bool bQuote)\r
+wxString MakeResponceFile(wxArrayString asFiles, bool bQuote, bool bUnicode)\r
{\r
wxFile fListFile;\r
- wxString szFileName = wxFileName::CreateTempFileName(wxT("__listfile"), & fListFile);\r
+ wxString szFileName = wxFileName::CreateTempFileName(wxT("__listfile"), & fListFile), szBuffer;\r
if (szFileName.IsEmpty())\r
{\r
return wxEmptyString;\r
// ファイルリスト書き込み処理。\r
if (asFiles.IsEmpty())\r
{\r
- fListFile.Write(wxT("*"));\r
+ szBuffer = wxT("*");\r
}\r
else\r
{\r
- wxString szBuffer;\r
for (size_t i = 0; i < asFiles.GetCount(); i++)\r
{\r
// 最後に改行があると動作がおかしくなる場合がある模様。\r
}\r
szBuffer += bQuote ? (wxT("\"") + asFiles[i] + wxT("\"")) : asFiles[i];\r
}\r
- fListFile.Write(szBuffer);\r
}\r
+ fListFile.Write(szBuffer, bUnicode ? (const wxMBConv&) wxMBConvUTF16LE() : (const wxMBConv&) wxMBConvUTF8());\r
fListFile.Close();\r
\r
return szFileName;\r
//******************************************************************************\r
\r
wxString MakeCommandLineSend(wxString szCommandLine, wxString szArcName, TPI_SWITCHES * swInfo, wxArrayString asFiles, wxString szResponceFileName);\r
-wxString MakeResponceFile(wxArrayString asFiles, bool bQuote);\r
+wxString MakeResponceFile(wxArrayString asFiles, bool bQuote, bool bUnicode = false);\r
wxString MB2String(const char * sz);\r
wxString UTF82String(const char * sz);\r
wxString WC2String(const wchar_t * sz);\r
\r
// コマンドライン・レスポンスファイル作成。\r
wxString\r
- szResponceFileName = MakeResponceFile(_szFiles, g_LibInfo.node.GetAttribute(wxT("quote-resp"), wxT("1")) == wxT("1")),\r
+ szResponceFileName = g_LibInfo.fRunning ?\r
+ MakeResponceFile(_szFiles, g_LibInfo.node.GetAttribute( wxT("quote-resp"), wxT("1")) == wxT("1"), g_LibInfo.fUnicode) :\r
+ MakeResponceFile(_szFiles, g_LibInfoAlt.node.GetAttribute(wxT("quote-resp"), wxT("1")) == wxT("1"), g_LibInfoAlt.fUnicode),\r
szCommandLineSend = MakeCommandLineSend(szCommandLine, _szArcName, _swInfo, _szFiles, szResponceFileName);\r
\r
// コマンドライン実行。\r