프로그래밍_Programing/C# 4

프린터 용지함 설정하기

XPS도큐먼트 파일 인쇄 기준으로 해당 프린터기의 인쇄함을 지정 하는 방법이 있다. PrintQueue에서 PrintCapabilities를 가져오고 거기에서 InputBinCapability를 확인하면 무엇을 지정할 수 있는지 알 수 있다. 그것을 PrintTicket에 설정만 하면 되는데....골 때리게도 파라메터는 0. AutoSelect 1. Manual 두개 인 경우가 대부분(...) 그렇다면 방법이 없는가? 그 방법은 이러하다 먼저 해당 프린터 드라이버 스키마에서 정보를 읽어오자 public List GetInputBinName(PrintQueue printerQueu, out string nameSpaceURI) { List binName = new List(); PrintQueue prin..

WPF에서 Window 창 위치의 보존&복원을 해보자

데스크톱 응용 프로그램에서 창 위치를 저장하고 싶다는 클라이언트의 요구가 있었습니다. 그러나 구현하는 것이 큰 골칫거리 입니다. 예를들어 최대화를 하면 최대화하기 직전의 윈도우의 위치와 크기도 보존 해두지 않으면 안된다거나 세세한 동작까지 신경쓰면 여간 일이 많은게 아닙니다. (+귀찮음) 조금 찾아 본 결과 MSDN에 해당 소스 코드가 있었기에 SetWindowPlacement GetWindowPlacement 이를 기초로 Window창 위치의 보존&복원 기능을 구현 해보고자 합니다. 그전에 WPF도 어찌되었든 Window에서 움직이므로 .NetF FrameWork의 네이티브 라이브러리를 참조할 필요가 있습니다. 네이티브 라이브러리 기능을 호출하는 이것을 P/Invoke (Platform Invoke :..

[번외] TortoiseSVN log export 했을 때 문자깨짐 문제

SVN에서 Show Log창을 띄우면 지금까지의 커밋 로그를 확인 할 수 있다. 다만, 확인만 할 수 있을 뿐 내보내기(Export)는 할 수 없다. (그림1. 복사 붙여넣기 해도 이렇게 나올 뿐...) 그렇다고 기능이 없는건 아니다 먼저, TortoiseSVN에서 log를 Export 하고 싶으면 아래와 같이 'command line client tools' 를 설치해야한다. 설치가 되었다면 Power Shell을 실행해서 프로젝트 리포지토리가 있는 곳 cd 명령어로 이동한다. 그 다음은 다음과 같이 명령어를 쳐 주면 된다. svn log -v --xml >export.xml 그러면 XML 파일이 생성되고 그걸 Excel로 읽어 들이기만 하면 된다! (그림2. 아무 문제 없이 엑셀로 열었을 경우) 하지..

무엇이 다른가? WPF, WinRT, UWP(Universal Windows Platform)

지금 1년 반정도 C# WPF 프로그래머로 일하고 있지만나에게는 Java와는 다르게 색다른 경험을 주고 있고(재밌다는 뜻임) 이 기회에 앞으로도 계속 해보고 싶다고 생각한다. 먼저 필자가 처음 시작할때 혼란 스러웠던 .Net Framework를 정리 해보고자 한다.심지어 아래에 설명할 것들 모두가 UI 디자인을 XAML(Extensible Application Markup Language)을 이용 하고 있어서(WinForm은 빼고) 더욱 그랬다. WinForm이제는 더 이상 업데이트도 안되고 있고 그저 유지만 되고 있는 아주 오래된 프레임 워크초창기 Windows 응용 프로그램 제작에 사용 되었다.근 미래에는 지원이 중단될 것 같다. WPF(Windows Presentation Foundation)Ric..