Visual Studio C# Interactive Coding window (REPL)
Visual Studio C# Interactive Coding window (REPL)
2016.02.25Visual Studio C# 반응형 코딩 명령 창 C# 언어는 컴파일 언어라서 무언가 계산되는 결과를 얻기 위해서 프로젝트를 만들고 코딩하고 그걸 컴파일하고 실행해서 봐야 결과를 얻을 수 있지요. 이러한 과정이 길고 복잡하기 때문에 간단한 코딩 테스트를 위해서는 조금 불편했습니다. C#언어를 인터프리터 언어처럼 한 줄씩 실행해서 빠르게 확인해보면 어떨까? 외국에서는 공식적인 명칭으로 REPL 이라는 단어를 쓰고 Read-eval-print loop 라고 표현하는군요. 아마도 읽는 대로 실행하고 표시한다고 해석하면 될 것 같습니다. 결국 반응형 인터프리터라는 소리네요. Visual Studio 2015에서 '보기>다른 창>C# Interactive' 를 누르시면 이러한 의문을 해결할 수 있습니다. 'C#..
C# 버전 변화에 달라진 점
C# 버전 변화에 달라진 점
2015.03.12C# is not new to us. We are using it since Visual Studio 2002. Currently it is in released version 4.0 and C# 5.0 is on the way to release with Visual Studio 2012. Though we are using it since a long time, but many of us don't know the new features that has been introduced in each new release. This post will cover the "Evolution of C#" from version 1.0 to version 5.0 along with the new features ..
iTunes 현재 선택한 노래의 가사 검색 프로그램 개발
iTunes 현재 선택한 노래의 가사 검색 프로그램 개발
2013.06.26iTunes 현재 선택한 노래의 가사 검색 프로그램 개발 이번 내용에서는 iTunes에서 선택한 노래 제목을 검색해오는 프로그램을 만들어 볼겁니다. 1. iTunes 참조 추가 Visual Studio Window Form 프로젝트를 생성해서 프로젝트에 참조를 추가합니다. 추가할 참조는 iTunes를 제어할거니깐.. iTunes 설치된 폴더의 iTunes.exe 파일을 참조로 추가해주셔도 되고, COM에 노출되어 있는 ' iTunes 1.13 Type Library ' 를 찾아서 참조에 추가하셔도 됩니다. CoClass로 제어가능하도록 노출되어 있어서 플러그인이나 이 게시글에 적힌대로 제어가 가능해지는 것이죠. http://dot-totally.co.uk/software/itunescon/javadoc-..
volatile(C# 참조)
volatile(C# 참조)
2011.11.04SingleTone Pattern을 적용하기 위해 volatile이란 키워드가 있는걸 알게 되었습니다. 목적에 맞는 코딩이 중요하니깐 꼭 알아둬야겠네요.. volatile(C# 참조) volatile 키워드는 동시에 실행 중인 여러 스레드에 의해 필드가 수정될 수 있음을 나타냅니다. volatile로 선언된 필드에는 단일 스레드를 통한 액세스를 전제로 하는 컴파일러 최적화가 적용되지 않습니다. 이렇게 하면 필드의 값을 항상 최신 상태로 유지할 수 있습니다. 일반적으로 volatile 한정자는 액세스를 serialize할 때 lock 문(C# 참조) 문을 사용하지 않고 여러 스레드에서 액세스하는 필드에 사용됩니다. 다중 스레드 시나리오에서 volatile을 사용하는 방법의 예제는 방법: 스레드 만들기 및 ..
Hooking on C#
Hooking on C#
2011.07.07C#에서 Global hooking은 .NET Framework 차원에서 지원하지 않는다고 합니다. 그러나, WH_KEYBOARD_LL 과 WH_MOUSE_LL hooking의 global hook이 가능하다고 하네요. 참고할만한 사이트.. ex) 1. How to set a Windows hook in Visual C# .NET 2. Processing Global Mouse and Keyboard Hooks in C# 3. Using Hooks from C#
GMAIL을 사용하는 C# SMTP 발송 샘플 코드
GMAIL을 사용하는 C# SMTP 발송 샘플 코드
2011.04.14GMAIL을 사용하는 C# SMTP 발송 샘플 코드 Gmail을 사용해 SMTP 발송합니다. Gmail은 smtp.gmail.com의 호스트와 EnableSsl true 설정으로 587 포트로 자신의 id, password를 networkcredential을 생성해서 발송하면 됩니다. 첨부된 프로젝트에서 코드를 확인하실 수 있습니다. 프로젝트의 Property에 Settings에 자신의 메일주소, id, password를 설정한 후 사용할 수 있어요. (Visual Studio 2010)
C# - Diroctory Copy (Recursive method)
C# - Diroctory Copy (Recursive method)
2011.03.29http://www.codeproject.com/KB/files/copydirectoriesrecursive.aspx Directory.Copy 로는 쉽게 복사가 되지 않는데 위 재귀 방법으로 구현하면 되겠네요. 너무 글이 짧은가;; ㅋㅋ
Q&A - Send a None exist email with SmtpClient(C#)
Q&A - Send a None exist email with SmtpClient(C#)
2011.03.27http://hoons.kr/Board.aspx?Name=QACSHAP&Mode=2&BoardIdx=42400 Question 안녕하세요 웹에서 메일을 발송할때 SmtpCilent 를 사용해서 메일을 발송하는데요~ 만약 받는 메일 주소가 잘못된 주소여서 전송이 안 됐을때 로그를 남기려고 합니다. 근데 SmtpFailedRecipientsException 이 부분에선 잡히지가 않는거 같아서요... 없는 메일주소로 발송을 해보면... 큐에 잠깐 들어갔다가 배드 메일로 빠지고 아무런 오류도 남질 않습니다. 회원들중에 잘못된 메일 주소를 등록한 회원이라면 메일주소를 초기화 시켜주려고 하는데요 어떻게 로그를 남길 방법이 없을까요? 해결 방법이 있으면 조언좀 부탁드립니다!! 수고하세요^^ Answer 일단 발생하는..
C# 'this' keyword - Extension Method
C# 'this' keyword - Extension Method
2011.02.25(* over .NET Framework 3.5) ref url. http://weblogs.asp.net/scottgu/archive/2007/03/13/new-orcas-language-feature-extension-methods.aspx this 키워드를 통해 기존에 존재하는 Object의 Static 메소드를 추가한 것 처럼 만들 수 있다. public static class ScottGuExtensions { public static bool IsValidEmailAddress(this string s) { Regex regex = new Regex(@"^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$"); return regex.IsMatch(s); } } 스캇 구슬희 형님의 VS에..
ASP.NET - ICallback을 이용한 JSON 기반의 Javascript Serialization
ASP.NET - ICallback을 이용한 JSON 기반의 Javascript Serialization
2010.04.15원문 참조 : http://aspalliance.com/1537_ICallback__JSON_Based_JavaScript_Serialization.1 * 4월 19일 추가 내용 프로젝트 기반은 .NET Framework 3.5 프로젝트로 설정하고 진행하셔야 합니다. 그리고 제가 테스트해 본 소스도 첨부합니다. 예제 소스 파일 다운로드 : 아직 테스트 해보지는 않은 코드이지만 흥미로운 내용이네요~ 별다른 라이브러리를 사용하지 않고 ICallback을 이용해서 Javascript Serialization을 JSON Object 형식으로 처리할 수 있는 방법이니깐요. 먼저 Page나 Controll 클래스에서 System.Web.UI.ICallbackEventHandler를 Implement 해야한다고 합니..
C# : Unit Class - File Size
C# : Unit Class - File Size
2009.05.14C# : Unit Class - File Size 변환 이전에 올렸던 Length 단위에 이어 두번째 File Size 관련된 단위입니다. 귀찮았는데 막상 파일사이즈를 보여야 할 일이 있어서 간단히 Property 를 이용해서 작성해 봤네요. C# 프로퍼티(Property)의 가장 적절한 예가 아닌가 생각됩니다. ㅋㅋㅋ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76..
C# : TextBox Auto Scrolling
C# : TextBox Auto Scrolling
2009.04.20C# : TextBox Auto ScrollingTextBox의 스크롤을 지정하기 위해 일단 Multiline 모드를 설정하고, Scrollbar가 Vertical로 되어 있다면 더 좋겠죠. 1. 다음과 같이 TextBox에 값을 설정 후 textBox.Text = "some string"; 스크롤이 생길 정도의 문자열을 넣어도 스크롤은 위에 고정되어 있습니다. 계속 바닥으로 스크롤이 되어있기 원한다면 textBox.Select(textBox.Text.Length, 0); textBox.ScrollToCaret(); 위와 같은 코드를 값을 입력 후 실행해 줍니다. 2. 문자열 값을 추가하고 항상 scroll을 바닥으로 하고 싶다면. textBox.Text += "some string"; 위와 같은 코드는..