C# 클래스 라이브러리를 COM+에 등록해보겠습니다. 참고 : 마이크로 소프트 고객센터 - HOWTO: Visual C# .NET에서 서비스 대상 .NET 구성 요소 만들기 Com을 쓰던 Com+를 쓰던 어떻게 쓰는지는 자유이고 나같은 경우 클라이언트 프로그램에서 직접 DB에 접근하지 못하게 하려고 많이 씁니다. 웹참조도 비슷한 용도로 사용할수 있습니다. 웹의 경우 TCP/IP를 이용하여 따로 서버프로그램만들어 DB를 날려주는 프로그램을 만들어 쓰는 회사도 보았을 정도로 DB에 직접접근을 막는건 여러므로 좋습니다. 물론 저도 예전에는 멋모르고 그냥 서버프로그램 만들어 썼는데 Com+를 만나고나서는 Com+ 를 많이 이용하다가 요즘은 웹서비스를 많이 이용하고 있습니다. 따로 서버프로그램을 만드는거에 비해 ..
iis(5.0) 에서 *.asp파일을 읽어들이면 500번 에러가뜸니다 Server Application Error The server has encountered an error while loading an application during the processing of your request. Please refer to the event log for more detail information. Please contact the server administrator for assistance. 마이크로 소프트 고객센터 - IIS 5.0에서 ASP 문제를 해결하는 방법 를 참고하던중 2단계에서 asp페이지가 뜨질않아 그것과 관련된 걸 검색해보니 구성요소 서비스의 COM+ 응용프로그램 부분에 문제가 ..
마이크로소프트 테크넷 - COM+ 관리: 구성 요소 서비스 관리 도구 이해 저는 COM+를 수직적 관계로만 사용하였기 때문에 그외 활용방법은 잘 모릅니다 ㅡ.-;; 이것이 COM+의 수직적 관계 클라이언트가 직접 DB나 서버 파일에 접근하는 보안상 매운 안좋은 방법이기 때문에 일반적으로 별도의 서버 프로그램을 만듭니다. 이것을 대체할수 있는 것이 COM+입니다. 단순이 이런용도라면 웹서비스도 쓸만하기 때문에 저는 거의 웹서비스만 이용하고 있저 ㅡ.-;;; 원래 COM이나 COM+의 개념은 원격지에있는 DLL이라고 할수 있습니다. 필요한 기능을 COM+에 요청하면 COM+는 처리결과를 리턴해주저. 이 방법은 재사용성을 늘려주고 프로그램의 유지보수를 쉽게 해주는 등에 장점이 있습니다. 닷넷 계열의 경우 별도..
2D 좌표에서 사각형 맵을 사용한다면 마름모 외각의 좌표를 쓸 일이 많습니다. 기준 좌표에서 마름모로 퍼지는 영역을 체크해야 하는 일이 많기 때문이죠. 로봇 대전에서 볼 수 있는 이것이 바로 마름모 영역입니다. 이 마름모 영역을 구하려면 마름모의 외곽 좌표를 알아야 하죠. 1. 2D사각형 맵 2D사각형 맵은 아래와 같이 구성됩니다. 우리가 구해야 할 값은 A를 기준으로 하는 범위입니다. B0는 Y - 1, B1은 X + 1 입니다. 그러면 C3은 어떻게 구할까요? A에 X와 Y가 1씩 더해주면 됩니다. 그러면 D4는? 그렇습니다. 3번째 칸부터는 기존 방식으로 외곽선 좌표를 구할 수가 없습니다. 방법이야 몇 가지 있습니다만 무식한 방법으로는 1) 모든 셀을 검사한 후 2) 기준 좌표와 거리를 계산해서(대..
닷넷에서는 DB를 어떤 것으로 불러오든 기본적으로 'SqlDataReader'라고 보시는 것이 맞습니다. 리턴값은 다르지만 데이터리더(DataReader)로 읽어 들인 후 나머지 작업(한 줄만 뽑아 문자열로 리턴한다던가 하는 작업)이 가능하니까요. 문제는 'SqlDataReader'라는 녀석은 테이블의 스키마 정보나 데이터를 다 가지고 있지만 가공 안 한체로 들어있어서 그냥 사용하기에는 여러 가지로 번거롭습니다. 그래서 보통은 'List'나 'DataSet'으로 변환하여 사용하죠. 'List'로 변환하는 방법은 한가지뿐이 없습니다. 직접 반복문을 이용하여 바인딩하는 것입니다. 'DataSet'이나 'DataTable'의 경우 두 가지 방법이 있습니다. 'List'와 같이 직접 바인딩하거나 'SqlData..
1/4. 한 프로젝트에서 웹서비스 만들기 2/4. DB연결 하기 3/4. 리스트 주고 받고 - 서버 탐색기와 린큐를 이용한 방법 4/4. 리스트 주고 받고 - 클래스를 이용한 방법 실버라이트에서 웹서비스를 통해 DB를 받아오는 방법은 몇가지가 있습니다. 그중 서버탐색기와 린큐를 이용한 방법을 다루 겠습니다. 테이블의 저장을 위해 웹서비스에 메소드를 만듭니다. public string SetList(string strA, string strB, string strC) { string strReturn = ""; msComm = new SqlCommand("ListSet", msConn); msComm.CommandType = CommandType.StoredProcedure; msComm.Parameter..
왜 케랙타는 있는데 스트링은 없는거냐!! 라는 생각을 여전이 합니다만.... 그런것과 상관없이 잘만들어서 쓰고 있으니 ㅎㅎㅎ 아래 맨위에 칸에 숫자와 문자를 넣고 입력을 누르면 결과를 보실수 있습니다. private bool IsNumeric(string value) { foreach (char cData in value) { if (false == Char.IsNumber(cData)) { return false; } } return true; } 코드를 보시면 아시겠지만 string는 c++로 보자면 char[]입니다. 스트링은 가변 캐랙타가 되는거저. 그래서 스트링으로 선언되있는 문자열은 배열로 접근이 가능합니다. 가끔 스트링에서 특정위치의 값을 꺼낼때 서브스트링같은 방법으로 꺼내는 사람들이 있는데..
도메인을 다른 기관으로 이전한 적이 있습니다. 그런데 도메인이 락이 걸려서 이전을 할 수 없다는 말을 들었습니다. 1. 도메인 상태 도메인의 만료, 잠금(lock)일 때 걸려있는 상태 값들입니다. Status: clientTransferProhibited (이전금지) Status: clientUpdateProhibited (정보 변경 금지) Status: clientDeleteProhibited (삭제 금지) 이것은 도메인 등록기관마다 설정 상태는 다릅니다. 위 상태 중에 하나 또는 두 개 아니면 전부를 걸어 놓는 업체들이 있습니다. 'client'라는 글자가 있다면 상태 설정은 도메인 등록기관에서 하는 것이며, 'client'대신에 'server'라고 되어 있다면 등록기관보다 위 단계 업체인 등록소에서..
바코드를 찍어주는 프로그램을 만든 적이 있습니다. GDI+로 출력을 했었습니다. 문제의 발견 그런데 바코드 특성상 숫자들을 검은색과 하얀색으로 구분하여 수십 또는 수백의 라인을 그려주어야 하다 보니 화면이 매번 화면을 다시 그리면 깜박거림에 딜래이까지 생겼습니다. '이걸 메모리에 따로 저장했다가 뿌려줘야 되는 건가?' 하고 있던 중 더블 버퍼링이란걸 알게 되었습니다. 더블 버퍼링(DoubleBuffer)이란? GDI+로 그린 그림을 자동으로 메모리에 실어놓고 필요할 때 자동으로 뿌려주는 기능입니다. 물론 그림을 다시 그리면 알아서 업데이트까지 해주죠. 문제는 메모리 더 먹는 다는거 ㅎㅎㅎ 사용하기 윈폼이라면 'InitializeComponent();' 밑에 SetStyle(ControlStyles.Use..
Asp.net 2.0기준입니다. DataList는 일단 바인딩이 되어야 사용할수 있습니다.(데이터가 들어가야 쓸수 있으니까--;;) 그렇기 때문인지 직접 컨트롤에 접근 할 수가 없습니다. DataList안에 있는 컨트롤에 접근하기위해서는 일단 선택되있는 라인의 찾아야 합니다. 그나마 다행인것이 DataList는 테이블처럼 데이터를 보여주기 위해 사용하므로 항상 선택된 라인에 대한 이벤트를 이용할수 있다는 점입니다. protected void dlBettingMenu_UpdateCommand(object source, DataListCommandEventArgs e) { string str1 = (e.Item.FindControl("txtGoldMin").ID); } 업데이트커맨드를 이용한 컨트롤 안의 데..