카테고리 :: 개발관련
전체 121개
CreateProcessAsUser - 서비스에서 GUI포함한 프로그램 실행
일반적으로 윈서 서비스 프로그램은 일반 어플리케이션과 다른 영역에서 실행되기 때문에.. 서비스가 SheelExecute나 CreateProcess 함수등으로 실행한 프로그램들은 GUI를 포함하고 있다하더라도 화면에 표시되지 않습니다. 이러한 이유로 서비스 프로세스에서 .. GUI를 포 …
ShellExcute - 프로세스 종료까지 대기
MFC나 API 에서 외부 실행파일을 실행하는데 가장 많이쓰는게 ShellExcute 인데요 .. 간혹 .. 실행시킨 프로세스가 종료될때까지 대기해야 하는경우가 있습니다 그런때 사용하면 됩니다. C++ ::ZeroMemory(&sei, …
CreateProcess 예제
보통 다른 프로그램을 프로그래밍 적으로 실행을 하려면 ShellExcute 함수를 많이 쓰긴 합니다만.. 다른 이유로 CreateProcess 로 실행을 해야 하는 경우도 있지요 .. PID로 뭔가를 해야 한다거나 .. 등등... 그런때 쓰시면 됩니다. C++ / * …
TEA Encryption Algorithm, TEA 암호화 알고리즘
C++ // Encryption ( 8 Byte ) void encipher( unsigned long const v, unsigned long const w, const unsigned long const k ) { register unsigned long y = v[0], z = …
base64 인코딩 / 디코딩
C++ /—— Base64 Encoding Table ——/ static const char MimeBase64[] = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', …
Tucker Go언어 프로그래밍 - 책리뷰
터커(Tucker)님의 Go언어 프로그래밍 책에 대한 리뷰입니다. 저자이신 터커님에게 허락을 받고 만든 영상입니다.
Go언어로 윈도 서비스 어플리케이션 만들기
최근에는 MS의 Visual Studio도 기본적으로 무료로 사용가능하지만.. 무료버전으로는 서비스 어플리케이션은 개발할 수가 없습니다. ( 물론 Professional 버전 등에서 관련 리소스들을 복사해와서 꼼수로 개발환경을 구성가능하기도 하지만 ㅎㅎ ) 여튼 .. Go로도 윈도 서 …
[MFC] 문자열 분리 - Split String
C++ / * SplitString / void SplitString(TCHAR strData, TCHAR Seperator, CStringArray& arr) { CString data = strData; int Position = 0; CString Token; Token …
ANSI(CP949) 한글 조사 처리
C++ // kstbl.h #ifndef KSTBL_H #define KSTBL_H /* KS 완성형 2350자의 조합형 코드 */ unsigned KStbl[2350]={ 0x8861,0x8862,0x8865,0x8868,0x8869,0x886a,0x886b,0x8871, …
파일복사 함수
기본적으로 파일을 이동시키거나 삭제하는 함수는 제공되고 있지만 복사의 경우 따로 구현을 해야 합니다. Go / * 파일 복사 함수 / func copyFile(srcFile string, destFile string) error { // 기존 파일이 있으면 삭제 if , err := …
프로그램 실행경로를 실행파일 위치로 고정
간혹 프로그램을 어디서 실행했느냐 따라서 .. 상대경로로 지정된 코드들이 파일을 못찾는 경우가 생깁니다. 이럴경우 실행파일의 위치로 실행경로를 조정해주면 됩니다. Go if err != nil { return } exPath := filepath.Dir(ex) currDir, …
올바른 이메일 주소, 알파벳, 숫자 체크(Regexp)
Goa-zA-Z0-9?(?:\.a-zA-Z0-9?)$") return er.MatchString(email) } /** 알파뱃 , 숫자 체크 / func isAlphaNumString(str string) bool { match, _ := …
간단한 파일 다운로드(HTTP GET)
프로그래밍을 하다보면 HTTP GET방식으로 파일을 다운받아 저장해야할 일이 종종 있습니다. 그런떄 사용가능한 GET 방식의 간단한 파일 다운로드 예제입니다. Go func downloadFile(filepath string, url string) error { // Create …
윈도 API를 이용한 wav 사운드 파일 재생
간단히 소리로 무언가를 알려야 할경우에 유용한 코드입니다. 구글링 중에 얻은 코드인지 깃헙 돌아다니다 발췌한 코드인지 기억이 가물가물해서 출처가 애매하네요 ;; Go package main import ( "syscall" "unsafe" …
현재 날짜, 시간 구하기
Go / * 현재 날짜 및 시간 문자열로 얻기 / func currDateTimeStr() string { t := time.Now() return fmt.Sprintf("%04d%02d%02d_%02d%02d%02d", t.Year(), t.Month(), …
CP949 <-> UTF-8 변환
Go언어는 기본적으로 UTF-8을 인코딩으로 사용합니다만. 윈도의 경우 기본적으로 CP949 또는 UTF-16입니다. 한글 윈도를 설치한 경우에는 많은 경우에 CP949가 기본 인코딩인 경우가 대부분이라 exec 패키지 등으로 콘솔 명령어를 실행하고 결과를 받아서 사용하는 등의 경우에 …
파일, 폴더 존재여부 체크
Go / * isExistFile / func isExistFile(fname string) bool { if _, err := os.Stat(fname); os.IsNotExist(err) { return false } return true } / * …
MS윈도 파일또는 폴더를 휴지통으로 버리기
윈도에서 프로그래밍을 하다보면 파일을 바로 삭제하는게 아닌 휴지통으로 이동시켜야 하는 경우가 생깁니다. os.Remove 같은 메소드를 이용하여 파일자체를 영구 삭제하는거야 매우 편하지만 .. 사용자를 대상으로 배포할 프로그램을 만드는 경우에는 가능하면 사용자의 실수도 감안하여 바로 …
TCP/IP 안쓰는 포트 얻기 - freeport
서버 프로그램을 만들다 보면 가변포트를 사용해야 할 경우가 있습니다. 이런경우 시스템에 사용하고 있지 않은 포트를 얻어야 할때가 있는데요, 그런경우 사용가능한 패키지 입니다. GitHub - phayes/freeport: Get a free and open tcp port that …
JSON to GO
Go로 JSON 데이터를 다루다 보면 .. map 을 이용해 Unmarshal 등을 해도 상관은 없지만. 이래저래 불편합니다. 그래서 보통은 구조체를 생성해서 처리를 합니다. 이때 JSON 구조가 단순하다면야 직접 struct 를 잡아서 작성하면 되지만 복잡한 구조의 JSON 데이터의 …



