본문 바로가기

전체 글418

WIX로 설치 프로그램 만들기 WIX란?? XML 소스 코드를 이용하여 윈도우 인스톨러 패키징을 만들 수 있는 일종의 오픈 소스 플랫폼 입니다. Visual Studio 2010에서 Wix 기본 프로젝트 만들기 1) Wix 홈페이지에 가서 Wix Toolset을 다운 로드 받는다. 현재 3.7 버전까지 진행 중... (http://wix.sourceforge.net/index.html) 2) Visual Studio 2010을 실행시킨 후 파일 메뉴의 NEW를 선택하고 프로젝트를 생성합니다. 3) 아마 WIX Toolset을 설치하였다면 아래 그림과 같이 Windows Installer XML이란 Template가 뜰 것입니다. 선택한 후 Setup Project를 만들면 됩니다. 그 밖의 프로젝트에 대해선 아직 Custom Acti.. 2013. 1. 3.
WPF 전체 화면 설정하기 Window를 고정된 전체 화면으로 만들고 싶을 때 쓰는 설정. Window Property 중 WindowStyle="None" ResizeMode="NoResize" WindowState="Maximized"로 설정. 2013. 1. 3.
Sharepoint Site JAVA로 접근하기 C#으로 개발된 Sharepoint Site의 List 내용들을 읽어오는 코드를 자바로 변경해야 할 일이 생겼다.일단 참고한 사이트위의 사이트대로 WSDL file을 긁어왔고...잠깐 여기서 WSDL이란???모르시는 분들을 위해 WSDL이란 Web Services Description Language의 약자로 웹 서비스의 구체적인 내용들이 언급되어 있는 XML파일을 말한다.예를 들어, 해당 웹서비스가 어떤 서비스를 제공하는지, 혹은 어떤 파라미터를 가지고 있어야 하는지, 어떤 값을 리턴하는지 등등이다.해당 WSDL을 가지고 코드를 만들어야 제대로된 SOAP 통신을 할 수가 있다.어찌됐건..그 다음에 Stub code 생성!!jdk내에 bin 폴더를 자세히 뒤지면 wsimport라는 실행파일을 찾을 수 있.. 2013. 1. 3.
Collection 정리 Vector- 동기화 처리가 내부적으로 이루어진다.- 예를 들어 한 쓰레드에서 어떤 작업을 하고 있으면 다른 쓰레드에서는 접근할 수 없도록 한번에 하나의 쓰레드만 사용할 수 있도록 내부적으로 처리되고 있다.- 단일 쓰레드에서는 불필요한 처리 코드만 가지게 되기 때문에 ArrayList나 LinkedList에 비해 성능 저하를 가져오게 된다.- 동기화를 고려한다면 Vector의 사용 보다는 Collection.synchronizedCollection(Collection C)나 synchronizedList, Map 등을 사용하는 것이 낫다. ArrayList- 내부적으로 따로 동기화 처리를 하지 않는다.- 동기화 처리를 위해선 Collection.synchronizedCollection을 사용해야 한다.-.. 2013. 1. 3.
동적 라이브러리 호출 JAVA에서도 C++과 같이 동적으로 Lib(자바에서는 Jar)를 호출할 수 있다. 2013. 1. 3.
Sharepoint SOAP로 접근하기 Excel Web Service는 HTTP 상에서 Simple Object Access Protocol(SOAP)을 사용함으로써, client 프로그램과 Excel Service 사이에서 interface 통신 역할을 수행한다.Web Service는 다양한 함수와 복잡한 타입의 object들로 구성되어 있으며, 이러한 Web Service를 호출하기 위해서는 반드시 Excel Web Service의 Web Services Description Language(WSDL)을 참조해야 한다.Referencing the WSDL성공적으로 Web Service를 호출하기 위해서는 어떻게 service에 접근하는지, service가 지원하는 동작에는 어떤 것들이 있는지, service에서 기대하는 parameter.. 2012. 12. 28.
volatile 얼핏보면 C volatile과 다른 문맥으로 쓰인 것 처럼 보였지만 알고 보면 같은 의미이다.첫번째로 C에서 volatile 선언은 optimize를 포기하겠다는 의미로 표현될 수 있다.가령 어떤 변수에 i = 0;i = 10;i = 20;i = 50;이라는 값을 대입했을 경우 volatile로 선언하지 않았을 경우, C 컴파일러에서는 optimize를 위해서 최종 50에 해당하는 값만 의미가 있다고 판단을 하고 나머지 0,10,20에 대한 값은 누락시킬 것이다.하지만 이를 방지하고 단계적 순차과정을 알아야 한다면 volatile로 선언을 해주어야 한다. 두 번째는 멀티쓰레드 환경에서의 무결성 보장을 위한 측면으로 사용될 수 있다.프로그램은 메모리에 대입한 변수에 대해 매번 메모리로부터 값을 가지고 오는.. 2012. 12. 27.
정규식 . 영문 딱 한자 h.t hat, hit, that ^ 문자열의 맨 처음 ^h.t hat, hit (that은 안됨) ^.e he, me, regard $ 문자열의 맨 마지막 h.t$ hat, hit, that * 0 이상의 문자. 앞에 항상 문자가 있어야 한다. h*t, (*t는 에러 발생) hat, gt, ht, t, tst, haaaaaat + 1 이상의 문자 h+t (+t는 에러 발생)hat, haaaat, hiiit ? 0 또는 1개의 문자 s?he (?he는 에러 발생) she 또는 he [st]he she 또는 the ^[st]he 문자열의 처음에 있는 she 또는 the [a-z] 소문자 한 문자. [a-zA-Z] 소문자 또는 대문자 한 문자. [0-9] 십진수 한자 [-0-9] '-'부호.. 2012. 12. 26.
perl 시작 #/usr/local/bin/perl #hello.pl print "Hello World\n"; perl의 실행> perl 2012. 12. 26.