오늘은 개발할 때 디버깅을 위해 파일로 로그를 남기는 저의 방법을 알려드리려고 합니다.


일반적으로 함수 하나로 해서 로그를 많이 남기게 됩니다.



* 소스코드


// parm_log : 남길 로그

void Util::AddLog(CString parm_log)

{


CTime t = CTime::GetCurrentTime();

CString log_str;

log_str.Format("[%04d/%02d/%02d %02d:%02d:%02d] %s", t.GetYear(), t.GetMonth(), t.GetDay(), t.GetHour(), t.GetMinute(), t.GetSecond(), parm_log);

CString file_str, make_str;

file_str.Format("%s\\log\\%04d%02d%02d_log.txt", "c:\\로그폴더경로", t.GetYear(), t.GetMonth(), t.GetDay() );

FILE *fp = fopen((const char *)file_str, "a+t");

if(!fp) return;

fprintf(fp, "%s\n", (const char *)log_str);

fclose(fp);

}


* 사용법


AddLog("로그입니다.");



위 코드는 말그대로 지정된 c:\\로그폴더경로 란 경로에 로그를 남기게 됩니다.


로그를 남길 때 GetCurrentTime() 함수를 사용하여 현재 시스템시간을 얻어서 a+t 타입, 즉. 텍스트타입의 add 방식으로 파일에 추가하라는 의미있니다.


위 함수를 지정해 놓고 사용하시면 편리합니다.













오늘은 ASP에서 DB연결을 하는 방법에 대해 설명하려 합니다. 


너무나도 잘 알려진 내용이지만 저의 블로그에서 체계적으로 정리하는 의미에서 연재하고자 합니다.


* 소스코드


Dim dbcon


Function DBOpen

Set dbcon = Server.CreateObject("ADODB.Connection")

dbcon.Provider = "Sqloledb"

dbcon.Open("Server=localhost;Database=DB명; UID=DB아이디; PWD=DB암호;")

end function


Function DBClose

dbcon.close

set dbcon=nothing

end function


보통 함수로 만들어놓고 많이 사용하게 됩니다. 

위 함수는 고정적이고, DB명, 아이디, 암호만 넣고 시작하시면 됩니다.

CreateObject 로 오브젝트 생성 후 연결하게 됩니다.


보통 MSSQL 이외 오라클이나 MySQL 의 경우 CreateObject 안의 문자열을 다르게 하기만 하면 해당 db을 사용할 수 있습니다.

아주 쉽죠~



* 사용법


DBOpen

set rs=server.createobject("adodb.recordset")

sql=""


~~~


set rs=nothing
DBClose


저는 위처럼 하게 됩니다. 레코드셋도 각각 만들게 되면 부하양이 많아질 수 있기 때문에 저는 통상 하나의 레코드셋울 사용합니다.

쿼리부분의 레코드셋사용 부분은

sql = "select top 10 * from 테이블명 with(nolock) where 조건절~~ "

rs.open sql,dbcon
do until rs.eof

aaa = rs("search_str") 
rs.movenext
loop
rs.close


위처럼 하게 되며~~, 다음 쿼리에서 레코드셋을 또 사용하기 위해 반드시 rs.close 을 해줘야 재사용이 가능합니다,~~

참 쉽죠~~










유튜브영상을 편하게 보자.. 유튜브서치(YouTubeSearch) 입니다.


현재 베타버젼이고요.. 좀더 기능을 추가예정인데 급한데로 사용하고싶은 분들께 배포합니다. 


기능추가요청을 댓글로 달아 주시면 반영할 수 있다면 반영할 예정입니다.


보통 유튜브 사이트에 들어가서 보게 되면 사이트의 틀과 기타 항목들 때문에 집중있게 영상을 보기 힘들고

원하는 크기로 보기가 힘든 부분이 있어 이 부분을 일반 곰플레이어처럼 비슷하게 만들었습니다. (이미지참조)

 

* 기본정보


프로그램명 : 유서치 (YouSearch)

운영체제 : 제힌없음

라이센스 : 프리웨어 - 절대로 해킹코드 없는 순수 프로그램임을 보증합니다.

다운로드

YouSearch_1_0_0_1.zip



검색어 중에 스포츠 쪽 관련된 내용 중 광고수익이 많이 발생하는 영상은 Youtube API 로는 볼수가 없더라고요. 그런 영상은 유뷰브 사이트에서 직접 보셔야 합니다.

그리고, 재생목록이 있는 채널리스트 같은 것은 배제하였습니다. 하려고 하니 작업이 좀더 필요해서 당장 시간이 없어서..ㅎㅎ

향후에 이 부분도 적용할 예정에 있습니다.



* 설치


압축푸셔서 ypusearch란 폴더를 만들어 안에 넣으시면 됩니다.


* 이미지 및 설명


프로그램 실행 시 화면입니다.^^ 오른쪽에 빨간 검색창 보이시죠? 거기에 검색어를 입력하시면 됩니다. 

재생목록은 검색에서 배제하였습니다.~


검색결과 보이시죠?.. 사이트에서 검색한 것과 대부분 같습니다.~~

스크롤 끝에 가시면 [다음] 버튼이 보이고 다음페이지로 넘어갈 수 있으며 한 리스트에 50 건씩 보입니다.



이미지를 클릭하게 되면 좀 기다리면 왼쪽에서 영상을 보실 수 있습니다.

위 이미지에서 보면...

(2) 클릭하면 오른쪽 리스트창이 사라집니다. ( 플레이어 같겠죠..)

(1) 클릭 하면 사라진 리스트창이 다시 나타납니다.

아래 가운데 보시면 (3) 부분은 리사이즈가 된다는 걸 표시한건데.. 잘 아시다싶이 

마우스를 저 근처에 갖다데면 마우스가 대각선화살표로 바뀌고, 리사이즈할 수 있습니다.


보이시죠..ㅎㅎ 운하는 크기로 작해 만들어 놓고 보시면 편해요..

다만 아쉬운게 하단 컨트롤도 사라지면 좋을 것 같은데 지원을 안하네요..ㅎㅎ



첨부파일을 받으셔서 즐겨보세요..~~









아주아주 예전에 제가 개발한 프로그램입니다.


플래시 게임을 좀 편리하고, 쉽게 사용하고, 해당 게임 사이트에 들어가지 않고도 사용할 수 있습니다.

기억을 하시는 분도 계시겠지만. 한동안 서버를 못구해서. 잠수타고 있다가 다시 시작합니다.



* 기본정보


프로그램명 : 플가 (FLGA)

운영체제 : 제힌없음

라이센스 : 프리웨어 - 절대로 해킹코드 없는 순수 프로그램임을 보증합니다.

다운로드 : 

Flga_1_3.zip





버젼업이 되게 되면 제 블로그에 오셔서 신규프로그램을 받으시면 됩니다. 

버전업 정보는 기존 프로그램 사용할 때 표시가 됩니다.


* 설치


첨부파일을 다운받아 압축을 푼 후 원하는 폴더에서 flag.exe을 실행하면 끝~~


* 이미지 및 설명


실행화면이며, 검색을 하거나, 메뉴를 클릭하면 해당 리스트가 나온다.



창크기가 고정이 된 것이 아니라서 원하는 크기로 프로그램 크기를 변경할 수 있습니다.



이미지 클릭 시 게임 상세설명을 볼 수 있다. (상세한 설명은 없습니다. ^^ 중요 게임 키 설명만 있어요..



[게임실행] 클릭 시 나온 게임화면입니다. 


이제 게임을 즐기시면 되겠죠~~~

게임키를 까먹었을 때 상단의 [게임설명] 울 클릭하면 설명화면으로 넘어갑니다.















제목 : 국가대표2

별점 : ★★★☆☆




* 전체 줄거리


유일무이 정통 아이스하키 선수 출신 에이스 ‘지원’
 자존심은 금메달 급, 현실은 쇼트트랙 강제퇴출 ‘채경’
 사는 게 심심한 아줌마, 빙판에선 열정의 프로 ‘영자’
 시간외 수당이 목표, 아이스하키 협회 경리 출신 ‘미란’
 취집으로 인생 반전 꿈꾸는 전직 피겨요정 ‘가연’
 주장급 멘탈 보유자, 최연소 국가대표 꿈나무 ‘소현’
 말만 번지르르, 주니어 아이스하키 우정상에 빛나는 국대 출신 감독 ‘대웅’
 
 이들이 뭉친 단 하나의 이유는 아오모리 동계 아시안게임 출전!
 
 뭉치면 싸우고 흩어지면 출전불가!
 모두가 불가능하다고 믿었던 이들의 뜨거운 도전이 시작된다!



* 나의 줄거리


아오모리 동계 아시안게임에 첫 출전한 여자 아이스하키 선수의 이야기이고, 1편과 비슷하게 전문적이지 않은 여자선수들이

각고의 노력으로 아시안게임에서 4등하는 이야기. (북한과 공동4위)



* 나의 리뷰

오늘 국가대표2 를 보았는데 크게 기대를 하지 않고 본거라 나름 볼만 햇다.

아오모리 동계 아시안게임에 첫 출전한 여자 아이스하키 선수의 이야기를 담은 영화로써.. 국가대표 1편을 생각하고 보면 오산..


1편의 스펙타클도 없고 각각의 선수들의 이야기들이 좀 엉성하다는 생각이 좀 든다.


다만, 북한 탈북 선수로 나오는 수애 의 배경이야기가 좀 가슴에 다기오는 정도... 


그래도 아이스하키 경기장면은 나름 잘 찍었다고 생각이 든다. 얼음을 가르는 소리는 쓰윽. 쓰윽 하는 소리가 멋있다는 생각 ^^


오달수가 감독으로 나오는데.. 음. 오달수 님은 내가 좋아하는 심스틸러인데 솔직히 감독 역활로는 좀 안맞다는 생각이...


아이스하키, 스케이팅, 수애 를  좋아하면 보고 그렇지 않다면 스킵해도 된다고 생각한다...












오늘 소개하고자 하는 종이접기는 유니콘 접기 입니다.


매우 고급스킬이 필요합니다. 영상자체가 1시간정도 (2편) 로 저같은 경우 거의 2시간 걸려서 접었네요.ㄷㄷ


이음새를 잘 마춰서 접어야 하기 때문에 영상을 자주 앞뒤로 해가면서 접으셔야 제대로 접을 수 있습니다.



* 나의 작품




정상적으로 접은 사진이 당장 없어 테스트용으로 만든 걸 올렸습니다. ㅎㅎ


영상으로 보고 한번 접어보세요.



* 유니콘접기



 
Origami Unicorn by Roman Diaz (part 1 of 2) (remake) - Yakomoga Origami tutorial

Origami Unicorn by Roman Diaz (part 2 of 2) (remake) - Yakomoga Origami tutorial


'나의취미' 카테고리의 다른 글

[중급] 3D 애벌레 접기  (0) 2016.09.28








폰갭을 사용할 때 필요한 설치가 여러가지가 있는데 nodejs 가 그중 하나입니다.


nodejs 는 핵심이 웹상에서 소켓통신 및 기타 유용한 라이브러리의 집합체 입니다.



* node.ks 설치


https://nodejs.org/en/ 에서 다운로드




설치는 다운로드 하여 인스톨을 하면 된다.



'프로그램 > Android' 카테고리의 다른 글

폰갭 설치하기 (phonegap)  (0) 2016.09.27








안드로이드에서의 대세는 폰갭(phone-gap) 이라 생각이 된다.


반응속도가 느린 단점이 있지만 사용자의 입장에서는 현란한 화면움직임, 예쁜 화면구성 도 중요하지만, 


나의 입장에서는 결국 필요한 것은 내가 원하는 데이터가 있느냐 없느냐가 중요한 것이다.


폰갭은 그 기본방식이 웹이고 그 웹+자바스크립트 을 기반으로 해서 폰 안에 내용을 저장하고 운영하는 것이 핵심이다.



설치는


1. java JDK 설치

2. Android SDK 설치

3. Apache Ant 설치

4. node.js 설치 

5. Phonegap 설치



순으로 하면 된다.

아래는 http://cppcomeon.tistory.com/486 에서 발췌한 내용이며 phone-gap 부분만 설명합니다.

---------------------------------------------------------------------------------------------------------------------------------

5. phonegap 설치


http://phonegap.com/

위 사이트에서 폰갭을 다운받아 설치합니다.




Getting Started Guides를 클릭



Windows를 클릭


Windows Installer 클릭 후 설치


설치가 완료 되면 아래와 같은 이미지가 나옵니다. 자동으로 나오지 않으면 

실행 -> 프로그램 -> adobe -> phonegap에서 실행 하면됩니다.




이제 폰갭을 빌드하는 방법입니다.


폴더명은 꼭 영문으로 해야 합니다. 한글폴더명이 섞여 있으면 에러 납니다.


실행 -> 프로그램 -> node.js -> node.js command prompt 를 실행합니다. 


nodejs 프롬프트 실행 되면


1. npm install -g phonegap 을 입력합니다. 그럼 폰갭이 설치되게 됩니다.


1. mkdir phonegap

2. cd phonegap

3. phonegap create sample

4. cd sample

5. phonegap platform add android

6. phonegap build android


위와 같이 하면 폰갭 빌드까지 끝났습니다. 

이제는 본격적으로 폰갭을 이용하여 어플을 만들면 됩니다. 




'프로그램 > Android' 카테고리의 다른 글

phonegap 을 위한 nodejs 설치  (0) 2016.09.27








오늘은 선택된 radio 항목의 value 값을 찾을 때 사용하는 함수를 설명하고자 합니다.


많이 사용하는 방식이지만 막상 직접 짜려면 귀찮기 때문에 라이브러리 형태로 만든 뒤 사용하면 편할 것 같습니다.


* 함수


function GetCheckedValue(parm_obj)

{

var checked_val = "";

for(var js_i=0; js_i<parm_obj.length; js_i++){

if(parm_obj[js_i].checked){

checked_val = parm_obj[js_i].value; break;

}

}

return checked_val;

}



* 사용법

var read_val = GetCheckedValue(document.write_form.f_radio);



GetCheckedValue 을 라이브러리 js 에 넣어놓고 사용하면 편합니다.










오늘은 자바스크립트에서 통상적으로 많이 사용하는 방식 중에


입력칸 (text) 에 값이 없을 때 원하는 메세지를 띄우고 해당 칸에 커서를 가는 방법을 하나의 함수로 묶어서 사용하는 함수를 소개하고자 합니다.


이미 알고 있을 내용을 조합해서 쉽게쉽게 쓰고자 하는 라이브러리라 생각됩니다.


* 함수


// parm_obj :form object

// parm_msg : 미입력 시 띄울 메세지

// parm_focus_skip : 포커스를 갈지 안갈지 유무

function NullCheckMessage(parm_obj, parm_msg, parm_focus_skip)

{

var obj = parm_obj;

if(obj.value==""){

alert(parm_msg);

if(parm_focus_skip != "skip") obj.focus();

return 0;

}

return 1;

}


* 사용법

var f = document.write_form;

if( !NullCheckMessage(f.f_id, "아이디를 입력해 주세요.", "") ) return;    // if 앞에 ! 주의



자바스크립트 사용할 때 NullCheckMessage 함수 하나로 쉽게쉽게 처리가 됩니다.~^^


참고로 포커스(focus)가 갈수 없는 object 일 경우 "skip" 을 넣어서 .focus 을 하지 않도록 하면 됩니다.


if( !NullCheckMessage(f.f_id, "아이디를 입력해 주세요.", "skip") ) return;







+ Recent posts