분류 전체보기 (323)

C# / ini 파일 읽기 및 쓰기: kernel32 사용하지 않고

프로그램을 개발하다 보면 사용자 환경을 저장하는 설정 파일을 읽거나 쓰는 경우가 발생한다. 그중 많이 사용되는 방법 중 하나가 .ini 파일을 사용하는 방법이며, .ini 파일은 일정한 문법적인 구조에 따라 작성된다. 물론, 아직도 레지스트리에 프로그램의 설정을 저장하는 경우도 많이 사용되지만, Window 운영체제의 보안 강화로 인해 레지스트리의 접근은 더 이상 자유롭지 못하다. 이러한 이유로 본인은 .ini 파일을 선호한다. 1. kernel32 사용하는 방법 C# 언어로 프로그램을 개발하는데 있어서, WIN API를 사용하는 것은 반갑지 않다. 하지만 무작정 피해 갈 수도 없는 노릇이다. 본인은 가급적 피해 갈 수 있는 방향으로 개발을 하지만 어쩔 수 없는 경우도 존재한다. 먼저 kernel32.D..

Language/C# | 2019. 7. 25. 01:21

WPF / XAML 코드로 현재 시간 얻는 방법

WPF에서는 VB, C#와 같은 비하인드 소스코드와 XAML 파일로 하나의 개발 화면이 구성된다. 이와 같은 특성으로 인해 현재 시간 값을 표시하는 다양한 방법이 존재한다. 본 포스팅에서는 비하인드 소스코드에서 현재시간을 가져오는 방법이 아닌 XAML 코드에서 직접 현재시간을 가져오는 방법을 소개한다. 1. 최상위 속성에 키워드 추가 xmlns:wookoa="clr-namespace:System;assembly=mscorlib" 2. 현재 시간 바인딩 위와 같이 간단한 방법으로 XAML 코드에서도 직접 현재 시간을 표현할 수 있다. 사실 본인은 위와 같은 방법으로 시간을 표현하면 자동으로 실시간 표현이 가능할 줄 알았는데, 화면이 디자인되는 순간의 시간만 표현하고 실시간으로 반영은 안 된다. 그래서 코드..

Language/WPF | 2019. 7. 23. 22:11

영화 마스터 시원한 결말 후기 스포없음: 손익분기점

오랜만에 가족과 함께 영화를 보고왔다. 가족 구성원 중 배우 이병헌의 팬이 있어서 두말없이 선택하게된 영화 마스터! 빵빵한 배역진들의 캐스팅이 호화롭기까지 하다. 시원하고 깔끔한 결말이 더더욱 여운을 남기는 작품이라 생각한다. 더욱이, 역대 조단위의 사기사건인 조희팔 실화 사건을 모티브로 탄생한 조의석 감독의 작품이다. 진회장(이병헌)은 사람들 현혹하는 화려한 언변력과 정계를 넘나드는 촘촘한 인맥을 구축하고 있다. 이러한 인맥과 재능으로 원네트워크라는 다단계 사업을 운영하고 있다. 수 많은 회원들 거느리고 있는 원네트워크는 저축은행 인수를 통해 금융업으로 진출을 꽤하고 있다. 금융업 진출을 위해 정관계에 마약같은 뇌물을 심어 놓는다. 이러한 거물 사기꾼의 그늘아래 박장군(김우빈)은 500억의 꿈을 꾸며 ..

Personal/Movie | 2019. 3. 15. 01:19

재난 영화 판도라 후기: 스포투척주의

개봉 전부터 본인의 큰 관심을 끌었던 영화다. 수년전 일본에서 터진 원전폭발 사고를 되새기며, 지금의 시국을 잘 그려낸 영화라는 평에 큰 기대를 하고 있었다. 드디어 판도라가 개봉되었고 첫번째로 맞이하는 주말에 바로 상영을 했다. 줄거리 소개 대한민국이 위험하다! 역대 최대 규모의 강진에 이어 원자력 폭발 사고까지 예고 없이 찾아온 초유의 재난 앞에 한반도는 일대 혼란에 휩싸이고 믿고 있던 컨트롤 타워마저 사정없이 흔들린다. 방사능 유출의 공포는 점차 극에 달하고 최악의 사태를 유발할 2차 폭발의 위험을 막기 위해 발전소 직원인 ‘재혁’과 그의 동료들은 목숨 건 사투를 시작하는데…! 포털 사이트에서 소개하고있는 줄거리는 위와 같다. 말그대로 재난 영화다. 우리나라가 앞으로 직면할지도 모르는 '원전'이라는..

Personal/Movie | 2019. 3. 1. 01:08

[C#] 파일경로 추출하기(파일명/확장자/파일경로)

파일의 전체 경로에서 파일명만 필요한 경우가 있다. 또한 파일의 경로만 필요한 경우도 있다. C#에서는 파일명을 둘러싼 여러가지 경우를 고려해서 유용한 함수를 제공한다. 본 포스팅에서는 파일명과 확장자, 파일 경로를 간단한 함수 호출만으로 구할 수 있는 방법을 소개한다. # 전체 경로 추출 1 2 3 4 5 6 7 8 9 10 11 12 13 using System; namespace ConsoleApp1 { class Program { static void Main(string[] args) { string filePath = @"C:\Users\wookoa\Pictures\signature.png"; Console.WriteLine(System.IO.Path.GetFullPath(filePath));..

Language/C# | 2019. 2. 25. 02:53

[Visual Studio] 프로젝트 위치변경 방법

Visual Studio 개발툴을 이용해 새로운 프로젝트를 생성할 때, 프로젝트가 저장될 위치를 물어본다. 기본 경로를 사용하면 문제될 것이 없으나 자신의 편의대로 저장될 위치를 변경하고 싶을때가 있다. 매번 프로젝트를 생성할 때 마다 특정한 위치를 지정하는 것 도 귀찮은 일이다. 본 포스팅에서는 기본으로 저장되는 프로젝트의 위치를 변경하는 방법을 소개한다. # 도구(T) - 옵션(O) 매뉴를 클릭 # 옵션 창에서 '프로젝트 및 솔루션' - '일반' 매뉴를 클릭 '프로젝트 위치(P)'의 경로만 변경해주면 된다. '사용자 프로젝트 템플릿 위치(R)' 또는 '사용자 항목 템플릿 위치(M)'의 경로는 Visual Studio의 템플릿 또는 기타 설정과 관련된 내용이 저장되는 위치기 때문에 특별한 사항이 아니면..

Personal/Tip | 2019. 2. 17. 18:03

영화 미씽 사라진 여자 결말 스포

병시년 막바지에 영화 티켓이 풍년이다. 허접지겁 쓰기위해 드디어 미씽을 보고 온다. '무서운 영화' 역시나 본인은 내용은 전혀 검색하지 않고 영화관에 들어갔다. 막연한 포스팅만 봐서는 무서운 영화라 생각되었다. 으스스한 분위기 때문인지, 대낮에 영화를 보면 좀 괜찮을 것 같았다. 다른 영화를 보면 예고편같은걸 언뜻 봐서인지, 정말 무서운 귀신이야기쯤으로 생각했었는데 슬펐다. '심지어, 눈물도 내려앉았다' 배우 공효진의 연기력은 물이 올를대로 올랐다. 잘 만들어진 영화에 연기파 엄지원, 공효진의 연기력이 더해지니 '작품'이 아닐 수 없다. 간단한 줄거리 너무 바쁜 회사 생활을 하는 지선(엄지원)은 보모 한매(공효진)을 집안으로 들이게 된다. 지선은 이혼한 상태이며 아이의 양육권으로 법적 다툼이 진행 중이다..

Personal/Movie | 2019. 2. 15. 02:02

영화 형 결말 및 후기: 스포일러 듬뿍

월드시네마의 비매품 무료 관람권으로 무료 영화를 봤다. 일반 음식점에서 받은 3장의 무료 관람권 티켓으로, 한장 한장 따로 예매를 하니 두장을 무료로 예매했다. 안될 줄 알았는데 예매가 성공으로 되니 성취감이 하늘을 찌른다. 행복한 무료 관람권을 고이 간직해서 발권을 받았다! 이렇게 무료 영화 관람권으로 영화를 예매해서 보는건 또 첫 경험이다. 'gooooooood!' 영화의 전개 흐름은 코믹에서 감동이다. 굉장히 뻔한 스토리지만, 배우들의 연기력에 지루하지 않게 편안히 감상할 수 있었다. 본인은 영화를 감상하기 전에, 온라인으로 사전 검색을 하지 않는다. 본인의 능력껏 있는 그대로를 즐기고 싶기 때문이다. 두식(조정석)은 사기꾼이다. 사기를 쳐서 감옥 살이를 하던 중 동생 두영의 실명 사실을 접하게 된..

Personal/Movie | 2019. 2. 1. 01:01

C# as 연산자, is 연산자 사용법

C#에서는 AS, IS 연산자가 존재한다. 형변환을 위해서 탄생한 예약어인데 알아두면 유용한 연산자이며, 타인이 작성한 코드를 무리없이 읽기 위해서도 필히 숙지해야할 연산자 중 하나이다. 본포스팅에서는 AS 연산자와 IS 연산자에 대해서 알아보도록 한다. # AS, IS 연산자의 개념 기본적으로 제공되는 int, bool, string과 같은 타입 외에도, 클래스간 캐스팅 작업이 필요한 경우가 있다. 예를들어 상속관계에 있는 두 클래스에서 자식 클래스는 부모 클래스에 대입될 수 있지만, 부모 클래스는 자식 클래스에 대입될 경우 아래와 같이 오류가 발생한다. "암시적으로 'ConsoleApp1.Program.Wookoa' 형식을 'ConsoleApp1.Program.WookoaTistory' 형식으로 변환..

Language/C# | 2019. 1. 21. 00:24

리눅스 CPU 정보 확인 방법

윈도우 시스템에서 CPU 정보를 확인하는 방법은 내컴퓨터를 통해서 충분히 확인할 수 있었지만, 과연 리눅스 시스템에서는 확인이 가능할지 의문이 들던 시절이 있었다. 당연히 리눅스 시스템에서도 CPU 정보를 확인할 수 있으며, 특정 파일에 모든 정보가 기술되어 있다. 다만, 모든 것은 명령어를 통해서만 확인이 가능하다. # CPU 정보 확인 명령어 [root@localhost ~]# cat /proc/cpuinfo 위의 명령어로 한번에 모든 정보를 출력할 수 있지만, 필요한 정보만 grep 명령어로 추려낼 수 있다. 아래의 명령어는 CPU에서 주로 확인하는 정보를 명령어로 정리했다. # CPU 모델 정보 [root@localhost ~]# cat /proc/cpuinfo | grep "model name"..

Operating System/Linux | 2019. 1. 18. 01:37