728x90

프로그램 97

MSSQL DB 연결 방법

오늘은 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명, 아이디, 암호만 넣고 시..

프로그램/ASP 2021.01.15

디버깅을 위해 로그를 남길 때 사용하는 방법

오늘은 개발할 때 디버깅을 위해 파일로 로그를 남기는 저의 방법을 알려드리려고 합니다. 일반적으로 함수 하나로 해서 로그를 많이 남기게 됩니다. * 소스코드 // 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\\..

프로그램/C++ 2021.01.15

파일(exe,dll) 의 버젼 읽기

오늘은 exe파일이나 dll, ocx 등의 파일 버젼을 읽을 필요가 있게 됩니다. 그때 읽는 함수를 알려드리겠습니다. 현재 제가 사용하고 있는 소스입니다. * 소스코드 // CString parm_path : 파일경로 // CString parm_filename : 파일명.확장자 CString Util::GetAppVersion( CString parm_path, CString parm_filename ) { DWORD dwHandle, dwLen; UINT BufLen; LPTSTR lpData; VS_FIXEDFILEINFO *pFileInfo; CString pgm_path, ret_version; pgm_path.Format("%s\\%s", parm_path, parm_filename); dwL..

프로그램/C++ 2021.01.15

해당위치에 파일 존재유무 체크

오늘은 해당 특정폴더 안의 특정 파일이 존재하는지를 체크하는 함수 입니다. 간단하지만 막상 인터넷에서 찾아서 사용하려면 머리 아픕니다. 아래 함수 하나를 넣어놓고 호출해서 사용하시면 편리합니다. * 소스코드 // LPCSTR lpszFilePath : 폴더 및 파일명 BOOL Util::IsFileExist(LPCSTR lpszFilePath) { CFileFind find_file; if(find_file.FindFile(lpszFilePath)){ return TRUE; // 존재한다. } return FALSE; } * 사용법 BOOL present = IsFileExist("c:\\특정폴더\\aaa.exe"); 파일이 존재하면 TRUE 이겠죠... #존재#파일#폴더#현재폴더

프로그램/C++ 2021.01.15

바탕화면에 단축아이콘 만들기 (각종)

오늘은 윈도우 시스템의 바탕화면, quickLaunch, 시작메뉴 에 원하는 실행파일을 위한 단축아이콘 생성에 대한 통합 함수를 설명하고자 합니다. 아래 함수 하나면 원하는 위치에 생성할 수 있습니다. (win10 에서는 안해봐서 될지는 잘.. 해봐야 알 것 같네요..) 이 단축아이콘을 변경되는 경우는 PC을 재부팅해야 설정이 되더라구여.. 원래는 아래 함수 후에 시스템에 notify 을 줘야 하는데 그 부분은 검색해 보시면 됩니다. * 소스코드 // LPTSTR pszFilePath : 실행파일경로 및 파일명.확장자 // LPTSTR pszTitle : \\파일명.lnk // LPTSTR pszDescription : 표시할 툴팁 // BOOL bDesktop : 바탕화면 생성 유무 TRUE., FAL..

프로그램/C++ 2021.01.15

작업관리자에서 해당 프로세스가 실행중인지..

오늘은 해당 프로그램이 실행중인지 확인하는 함수를 소개하고자 합니다. 보통 FindWindow 을 사용하면 되지만.. 부팅 시 자동실행이나 PC의 부하가 많은 상태에서는 FindWindow 로는 해당 window을 찾지 못하는 경우가 있습니다. 그래서 직접 작업관리자에서 해당 파일이 실행중인지 확인해서 해당 핸들을 얻는 방법이 가장 정확한 방법이기에 소개합니다. 보통 FindWindow 로 먼저 처리하고, 프로그램을 운영을 하면서 FindWindow 가 통과하는 경우가 발생하면 CreateToolhelp32Snapshot 울 이용을 하개 됩니다.. * 소스코드 // CString parm_exe : exe 파일명 // DWORD parm_id : 프로세스 아이디 (모르는 경우 -1 사용) int Util..

프로그램/C++ 2021.01.15

강제로 프로세스 종료하기

오늘은 작업관리자에서 강제로 프로세스를 종료하는 방법이 있는데 이런 방법을 프로그램을 하는 것에 대해 설명하고자 합니다. 보통 메인 프로그램이 서브프로그램을 강제로 종료시킬 때 sendmessage 을 통해서 종료를 시키게 되는데 해당 프로그램이 lock이 걸렸거나 이벤트를 받지를 못하는 상황이 생겼을 때 위 메세지는 의미가 없게 된다. 그렇기에 강제로 프로세스를 종료를 시켜야 하는데 이에 사용한 함수를 소개 하고자 합니다. ** 소스코드 // CString strProcessName : 프로세스 파일명.확장자 BOOL Util::ProcessKill(CString strProcessName) { HANDLE hProcessSnap = NULL; BOOL bRet = FALSE; PROCESSENTRY3..

프로그램/C++ 2021.01.15

C++의 DoModal 구현하기 (다이얼로그)

오늘은 자바스크립트에서 DoModal 을 사용하는 방법에 대해 설명하고자 합니다. C++ 에서는 DoModal 함수가 있어서 Modal 방식의 창을 띄울 수 있는데 자바스크립트에서도 그와 같은 함수가 있습니다. showModalDialog 라는 함수입니다. 이 함수를 좀더 쉽게 다룰 수 있도록 함수화 해서 만든게 있어서 알려드립니다. (IE기준) * 소스코드 // parm_url : 호출할 페이지 // w : 가로크기 (px) // h : 세로크기 (px) function DoModal(parm_url, w, h) { var pop_layer = null; var is_style="edge:raised;center:yes; dialogwidth:"+w+"px; dialogheight:"+h+"px; sc..

숫자의 정수 또는 소수점 반올림

오늘은 자바스크립트에서 정수부 또는 소수점 반올림 관련 함수에 대해 설명하고자 합니다. 당연히 Math.round 함수를 사용하면 되지만 좀 더 경우의 수가 많은 경우에도 문제없이 사용하려면 좀 다듬어서 함수를 만들어서 사용해야 합니다. * 소스코드 // n : 수치 // digits : 자를 소수점 자리수 function RoundXL(n, digits) { var str_n = String(n); //숫자를 스트링으로 변환 str_n = replaceAll(str_n, ",", ""); var float_n = parseFloat(str_n); // 소수부 반올림 if (digits >= 0) return parseFloat(float_n.toFixed(digits)); // 정수부 반올림 ( dig..

문자열의 실제 바이트 수 계산

오늘 자바스크립트에서 사용되는 것 중에 한글 또는 문자열의 실제 바이트 수 계산을 해야 할 때가 있는데.. 그때 사용하는 함수를 만들어 볼까 합니다. 은근히 사용되는 함수이고, 잘 찾아봐도 정확한 답변이 없는 경우가 좀 있더라구요. * 소스코드 function getByteLength( data ) { var str = data; var l = 0; if( str == "") return l; for (var i=0; i 128) ? 2 : 1; return l; return len; } * 사용법 var len = getByteLength("철수야 놀자. !!"); 결국 한글문자는 아스키 128이 넘기 때문에 2, 작으면 1 이런식으로 카운팅을 하는 것입니다. 많이 사용해 주세요 !! #byte#계산#..

728x90
반응형