ConnectionString, ConnectionTimeout, 및 상태 속성 예제 (VC + +)

항상 느끼는 것이지만 메모를 해두지 않으면 헛갈린다. 메모하는 습관은 상당히 중요하다. // ConnectionStringSampleCpp.cpp // compile with: /EHsc #import “msado15.dll” no_namespace rename(“EOF”, “EndOfFile”) // Function declarations inline void TESTHR(HRESULT x) {if FAILED(x) _com_issue_error(x);}; void ConnectionStringX(); _bstr_t GetState(int intState); void PrintProviderError(_ConnectionPtr pConnection); void PrintComError(_com_error &e); int main() { if (FAILED(::CoInitialize(NULL))) return 0; ConnectionStringX(); ::CoUninitialize(); } void ConnectionStringX()

Log 파일을 만들기 위한 arglist 활용

가변 파라메터 라고 해야 할 까요?  알기쉬운 이름을 정의하기가 쉽지는 않습니다. 흔히 불리는 arglist 라고 하겠습니다. Argument List 즉 ArgList를 사용하면 로그 파일을 생성 할 때 Format문을 쓰지 않고도 편리하게 사용 할 수 있다는 장점이 있습니다.또한 입력하는 Parameter가 가변적일 때 오버로딩 (Overloading)을 사용하지 않고도 간편하게 처리하는 방법을 제공합니다. 예제 코드를 보면 Format문과 같은 기능을 Method로 정의하고 사용할

VC++ SQL 접속(윈도우 서비스 프로그램)

기존에 사용하고 있던 응용프로그램을 윈도우 서비스 프로그램으로 변경하고 나서, 정상적으로 동작 하던 SQL Server 접근에서 오류가 발생했습니다. 결국 문제를 해결했습니다. 간혹 프로젝트를 수행하다 보면 이전에 만들어 놓은 소스를 그냥가져다 사용하면서 비슷한 실수와 시행착오를 종종 격게 되므로 메모를 해 둡니다. MFC 에서 SQL Server에 접근할 때는 ‘2’ 의 방법을 사용할 것을 권장 합니다.  1. SQL 에

윈도우 찾기

view plaincopy to clipboardprint? HWND FindWindow(LPCTSTR lpClassName, LPCTSTR lpWindowName); FindWindow 함수는 탑레벨 윈도우 중에서 원하는 윈도우를 찾는 기능을 한다. 탑레벨 윈도우란 desktop 윈도우를 부모로 갖는 윈도우를 말한다. 첫 번째 인자에는 찾고자 하는 윈도우의 클래스 이름을 넣어주면 된다. NULL을 지정할 경우에는 윈도우를 찾을 때 클래스 이름은 무시하고 찾는다. 두 번째 인자로 찾고자 하는 윈도우의 윈도우 이름을 넣어준다. 첫 번째 인자와

메시지 박스 종료하기

SetTimer(101, 1000, NULL); if(AfxMessageBox(“박스다..”) == IDOK) { // AfxMessageBox(“OK”); }   OnTimer() { HWND wndDlg = ::GetLastActivePopup(m_hWnd); if(wndDlg && wndDlg != m_hWnd) { char buffer[256] = {0}; ::GetClassName(wndDlg, buffer, 256); if(CString(“#32770”) == buffer) //메시지 박스는 분명히 다이얼로그이며 클래스명이 #32770 { ::EndDialog(wndDlg, IDOK); } } } 출처: http://ddiggam.tistory.com/99 [띠깜의 하얀세상]

WinSock2.h를 이용한 간단한 윈도우 서버 & 클라이언트 프로그램

이번 1학기 때 시스템 프로그래밍을 들으면서 소켓 프로그래밍을 배운 적이 있습니다. 대부분의 수업은 리눅스에서 작업했지만 소켓 통신은 윈도우 환경에서도 짜보게 되었는데요, 오늘 업무 중에 간단한 서버 & 클라이언트 프로그램을 짜보라고 하셔서 복습 겸 손풀기 겸 해서 프로그램을 짰습니다. 부탁받은 프로그램은 아래와 같은 행동을 합니다. 서버를 실행하고 클라이언트를 실행한다 클라이언트가 서버에 접속하면 서버는 1초 기다린 다음

Random 난수 발생에 대한 검토

컴퓨터 과학 분야에서 말하는 난수는 보통 결정론적인 방법으로 생성된 난수이다. 특정 입력이나 조건에 따라 무작위로 선택된 것처럼 보이는 난수또는 난수열이 생성되며 그 생성 조건이나 입력이 같다면 그 결과값은 항상 같다. 진정한 의미에서의 난수는 아니지만 그 결과값이 충분히 추측되기 어렵다면 어느정도 난수로서의 의미를 가질 수 있다. 컴퓨터에 의해 생성된 모든 난수는 의사(擬似) 난수이다. 컴퓨터는 계산된 결과만

C# — ListView 사용법

<< 전체 소스 보기 >> //////////// using System; using System.ComponentModel; using System.Drawing; using System.Windows.Forms; namespace ListView_test { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { listView1.View = View.Details; listView1.GridLines = true; listView1.FullRowSelect = true; listView1.CheckBoxes = true; // listView1.LabelEdit = true; listView1.Columns.Add(“a“, 100); listView1.Columns.Add(“b“);

C# 그래프

GraphDisplay_04092014 Download demo – 32.98 KB Download source – 130.9 KB Introduction In our application, we had to display the output of a multichannel ECG (Electro Cardiograph) device. I had a look at some commercial libraries, but none of them met by demands. So, I decided to design a simple solution by myself. This is