Explorer++ v1.4.0 빌드, 수정 방법
Explorer++ v1.5.0 빌드, 수정 방법( explorer plusplus, explorer plus plus, explorerplus)
https://explorerplusplus.com/download
https://github.com/derceg/explorerplusplus - 2.1k 
v1.4.0 -2024.01 
    - build 방법 매뉴얼
https://github.com/derceg/explorerplusplus/blob/master/BUILDING.md
     - WiX 설치 
https://wixtoolset.org/docs/intro/
> dotnet tool install --global wix 
     주의! visual studio 안의 Manage Extensions 메뉴로 설치하면 안됨, 이전 버전 설치됨 
         (참고만) visual studio -> extensions -> Manage Extensions... : wix 검색해서 설치하면 안됨 
//------------------------------------- 
     - 소스 다운로드 
> git clone --recurse-submodules https://github.com/derceg/explorerplusplus.git
> cd explorerplusplus 
    - vcpkg 설정 
> .\Explorer++\ThirdParty\vcpkg\bootstrap-vcpkg.bat 
     - 프로젝트 열기 
Explorer++\Explorer++.sln 
     - 빌드된 실행파일 경로 
Explorer++\Explorer++\x64\Debug\Explorer++.exe 
//----------------------------------------------------------------------------- 
기능 추가 변경 소스 수정
//----------------------------------------------------------------------------- 
< 마지막 탭 정렬 설정을 새로 시작시에도 적용하기>
#include "TabStorage.h" // m_loadedTabs 위해 추가 
... 
void Explorerplusplus::LoadAllSettings() 
{ 
... 
// 마지막 탭 설정을 전역 설정에 덮어쓰기 
int size = m_loadedTabs.size(); 
if (m_loadedTabs.size() > 0) 
{ 
TabStorageData tab = m_loadedTabs[0]; 
m_config->defaultFolderSettings = tab.folderSettings; 
} 
ValidateLoadedSettings(); 
}
//----------------------------------------------------------------------------- 
< 색변경 >
     - 코드 검색 코드 
backgroundColor = GetSysColor(COLOR_WINDOW); 
     - 새로 지정 
static const unsigned long COL_BK = RGB(160, 200, 160); // 배경색 지정 
backgroundColor = COL_BK; // 새로 지정한 색 적용 
     - 참고 - 3군데 
ThemeManager::ApplyThemeToListView( 
ThemeManager::ApplyThemeToTreeView( 
ThemeManager::ApplyThemeToRichEdit( 
//------------------------------------- 
< 파일 리스트 칼럼 정렬  >
    역순 정렬시 폴더가 아래로 가는 현상 수정
int CALLBACK ShellBrowserImpl::Sort(int InternalIndex1, int InternalIndex2) const 
... 
if (m_folderSettings.sortDirection == +SortDirection::Descending 
&& ((!isFolder1 && !isFolder2) || (isFolder1 && isFolder2)) // 역정렬시 폴더를 앞에두기위해 추가  <======== 
//----------------------------------------------------------------------------- 
< 새탭에서 이전 정렬 설정 유지 >
정렬이 변경될때 전역설정에 저장 
    - const 속성 변경 
struct FolderSettings 
{ 
mutable SortMode sortMode = SortMode::Name; 
mutable SortDirection sortDirection = SortDirection::Ascending; 
//------------------------------------- 
void ShellBrowserImpl::ColumnClicked(int iClickedColumn) 
// 전역 설정에 저장 
m_config->defaultFolderSettings.sortDirection = m_folderSettings.sortDirection; 
m_config->defaultFolderSettings.sortMode = m_folderSettings.sortMode; 
SortFolder(); // 칼럼 클릭시 정렬 
//------------------------------------- 
    - 새탭 열기 함수
ShellBrowserImpl::OnEnumerationCompleted( 
...
// 이전 탭 설정 적용 
m_folderSettings.sortDirection = m_config->defaultFolderSettings.sortDirection; 
m_folderSettings.sortMode = m_config->defaultFolderSettings.sortMode; 
SortFolder(); // 새 탭 초기화