반응형

한동안 WinSCP의 업데이트가 크게되지 않아 번역할 일이 없었는데 간만에 martin이 메일을 보내서 로컬라이징을 해 달라고 하는군요.

홈페이지에 들어가보니 WinSCP 5.0.6 Beta 버전을 만들었다고 하는데, 추가된 문장들이 꽤 있더군요.

 

기존 4 버전에서와 틀려진 점은 눈에 띄게 크게 보이진 않지만, 4 버전대는 ANSI로 프로그램을 작성했다면, 5 버전대는 유니코드로 프로그램을 재 작성했더군요.

 

덕분에 기존 로컬라이징한 파일을 UTF-8로 올리는 수고를 해야 했지만, 좀 더 다국어를 잘 지원할 수 있게 되었군요.

 

하루만에 번역해서 올려놓는 바람에 바쁘긴 했지만, 이렇게 안 해놓으면 다음번 버전업 시에 설치 패키지에 한글이 안들어간답니다.

 

반응형
반응형

MS VS 2008부터 MFC Feature Pack을 지원합니다.


Doc-View 형태의 응용프로그램을 만들면 MFC Feature Pack에서 제공하는 OutlookBar 와 Docking Pane를 이용할 수 있습니다. OutlookBar와 Docking Pane의 레이아웃은 자동으로 저장되고 로드 됩니다.

매우 편리한 기능이긴 하지만 또한 매우 불편한 기능입니다. 물론 이 레이아웃 상태에 대해서 커스터마이징을 할 수 있는 여지를 두었군요.

MFC Feature Pack으로 Doc-VIew 응용프로그램을 생성할 시 기본 App 클래스는
CWinApp에서 CWinAppEx로 변경됩니다.
CWinAppEx에서 이 상태 저장 및 복구를 하는 군요.
CWinAppEx의 메소드 중 다음 메소드를 주의해서 보시면 됩니다.

  • CleanState(): 레이아웃 상태를 모두 초기화 한다.
  • LoadState(): 레이아웃 상태를 로드한다.
  • SaveState(): 레이아웃 상태를 저장한다.

위와 같은 메소드가 있지만 CleanState() 정도가 유용하게 쓰일 수 있을 것 같습니다.

 

CWinAppEx를 상속받은 클래스의 InitInstance()에서 SetRegistryKey() 구문 다음에 CleanState()를 호출하면 항상 레이아웃이 초기화한 상태로 표시되게 됩니다. 레이아웃을 로드하는 시점은 ProcessShellCommand()에서 프레임워크상 자동으로 로딩되게 되어 있습니다.

또한 이 레이아웃 자동 저장이 필요없다면 CWinAppEx의 다음 메소드를 오버라이딩 합니다.

virtual void OnClosingMainFrame(CFrameImpl* pFrameImpl);

기본 동작은 SaveState() 메소드를 호출합니다.

 

그러므로 레이아웃 자동저장이 되지 않게 하기 위해서는 OnClosingMainFrame()메소드를 오버라이딩하여 빈 구문으로 놓으면 레이아웃이 자동으로 저장되지 않습니다.

 

반응형

'개발 > Windows' 카테고리의 다른 글

Visual Studio 2013 로그인이 안될 경우 해결 방법  (0) 2022.08.29

+ Recent posts