diff --git a/launcher/CmderLauncher.vcxproj b/launcher/CmderLauncher.vcxproj index e419cc3..7c647e0 100644 --- a/launcher/CmderLauncher.vcxproj +++ b/launcher/CmderLauncher.vcxproj @@ -22,6 +22,7 @@ {4A8485A5-B7DD-4C44-B7F6-3E2765DD0CD3} Win32Proj CmderLauncher + 10.0 diff --git a/launcher/src/CmderLauncher.cpp b/launcher/src/CmderLauncher.cpp index 0049100..3167615 100644 --- a/launcher/src/CmderLauncher.cpp +++ b/launcher/src/CmderLauncher.cpp @@ -105,7 +105,7 @@ bool FileExists(const wchar_t * filePath) return false; } -void StartCmder(std::wstring path = L"", bool is_single_mode = false, std::wstring taskName = L"", std::wstring iconPath = L"", std::wstring cfgRoot = L"", bool use_user_cfg = true, std::wstring conemu_args = L"") +void StartCmder(std::wstring path = L"", bool is_single_mode = false, std::wstring taskName = L"", std::wstring title = L"", std::wstring iconPath = L"", std::wstring cfgRoot = L"", bool use_user_cfg = true, std::wstring conemu_args = L"") { #if USE_TASKBAR_API wchar_t appId[MAX_PATH] = { 0 }; @@ -132,6 +132,7 @@ void StartCmder(std::wstring path = L"", bool is_single_mode = false, std::wstr std::wstring cmderStart = path; std::wstring cmderTask = taskName; + std::wstring cmderTitle = title; std::wstring cmderConEmuArgs = conemu_args; std::copy(cfgRoot.begin(), cfgRoot.end(), userConfigDirPath); @@ -412,7 +413,7 @@ void StartCmder(std::wstring path = L"", bool is_single_mode = false, std::wstr PathCombine(conEmuPath, exeDir, L"vendor\\conemu-maximus5\\ConEmu.exe"); } - swprintf_s(args, L"%s /Icon \"%s\" /Title Cmder", args, icoPath); + swprintf_s(args, L"%s /Icon \"%s\"", args, icoPath); if (!streqi(cmderStart.c_str(), L"")) { @@ -429,6 +430,11 @@ void StartCmder(std::wstring path = L"", bool is_single_mode = false, std::wstr swprintf_s(args, L"%s /run {%s}", args, cmderTask.c_str()); } + if (!streqi(cmderTitle.c_str(), L"")) + { + swprintf_s(args, L"%s /title \"%s\"", args, cmderTitle.c_str()); + } + if (cfgRoot.length() != 0) { swprintf_s(args, L"%s -loadcfgfile \"%s\"", args, userConEmuCfgPath); @@ -574,6 +580,7 @@ struct cmderOptions std::wstring cmderCfgRoot = L""; std::wstring cmderStart = L""; std::wstring cmderTask = L""; + std::wstring cmderTitle = L"Cmder"; std::wstring cmderIcon = L""; std::wstring cmderRegScope = L"USER"; std::wstring cmderConEmuArgs = L""; @@ -636,6 +643,11 @@ cmderOptions GetOption() cmderOptions.cmderTask = szArgList[i + 1]; i++; } + else if (_wcsicmp(L"/title", szArgList[i]) == 0) + { + cmderOptions.cmderTitle = szArgList[i + 1]; + i++; + } else if (_wcsicmp(L"/icon", szArgList[i]) == 0) { cmderOptions.cmderIcon = szArgList[i + 1]; @@ -764,8 +776,8 @@ int APIENTRY _tWinMain(_In_ HINSTANCE hInstance, } else { - StartCmder(cmderOptions.cmderStart, cmderOptions.cmderSingle, cmderOptions.cmderTask, cmderOptions.cmderIcon, cmderOptions.cmderCfgRoot, cmderOptions.cmderUserCfg, cmderOptions.cmderConEmuArgs); + StartCmder(cmderOptions.cmderStart, cmderOptions.cmderSingle, cmderOptions.cmderTask, cmderOptions.cmderTitle, cmderOptions.cmderIcon, cmderOptions.cmderCfgRoot, cmderOptions.cmderUserCfg, cmderOptions.cmderConEmuArgs); } return 0; -} \ No newline at end of file +} diff --git a/launcher/src/strings.rc2 b/launcher/src/strings.rc2 old mode 100755 new mode 100644 diff --git a/scripts/build.ps1 b/scripts/build.ps1 index c27d584..2054789 100644 --- a/scripts/build.ps1 +++ b/scripts/build.ps1 @@ -117,6 +117,7 @@ if ($ConEmuXml -ne "") { Pop-Location if($Compile) { + cmd.exe /C "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvars64.bat" Push-Location -Path $launcher Create-RC $version ($launcher + '\src\version.rc2'); # https://docs.microsoft.com/visualstudio/msbuild/msbuild-command-line-reference