본문 바로가기

반응형

코딩정보

(313)
[C#] 프로세스 중복체크 및 실행된 프로세스 최상위 표시 안녕하세요 코딩하는남자에 코딩연습생입니다~ 간혹 프로젝트를 진행하다 보면 두개의 프로젝트를 하나의 솔루션에 합쳐서 개발해야 할 때가 발생한다 뭐 프로젝트 두개 실행시키는거야 어렵지 않은데... 한쪽의 프로젝트에서 나머지 한쪽을 제어하는듯(?)이 보여 주고 싶을 때가 있다 예를들면 1번 프로젝트가 실행되고 나면 자연스럽게(?) 두번째 프로젝트가 실행된다던지 1번 프로젝트를 종료하면 자연스럽게(?) 두번째 프로젝트가 종료되는 이런 간단한 조작이 필요할 때가 있다 저의 경우 ClickOnce를 주로 사용하여 배포를 하는데 이 경우 실행된 프로세스를 통해 다음과 같은 동작을 구현할수 있다 이게 좋은 방법인지 아닌지는 잘 모르겠다 하지만 필요할때가 있다 [C# Source Code] using System; us..
[C#] CallBack 함수와 Delegate 사용하기 안녕하세요 코딩하는남자의 코딩연습생입니다 프로그래밍을 하다보면 CallBack 함수를 사용해야 되는 상황이 발생합니다 예를들면 Soket통신을 구현할때 수신/응답을 비동기식으로 구현해야할 경우가 이에 해당하죠 Soket 통신의 원리르 보면 이더넷 환경의 장비에 응답코드를 송신하여 그에 해당하는 결과 값을 받아오게 되죠 이경우 두가지 형식으로 구현을 합니다 동기식/비동기식. 동기식은 송신후 응답코드가 수신될때까지 멈춰 대기 하게 됩니다 구현할려는 장비와 운영 방법에 따라 즉시 응답이 가능하다면 동기식으로 구현하는것이 맞겠죠 하기만 한번에 여러대의 장비와 통신을 해야 하는 경우 혹은 수신까지 걸리는 ReadTime이 길 경우에는 무한정 기다릴수 만은 없기 때문에 비동기식 구현 방법을 사용 합니다 비동기식은 ..
[프로젝트] 개발 프로젝트 산출물 관리 안녕하세요. 코딩하는남자의 코딩연습생입니다 회사 생활을 하면서 여러가시 프로젝트를 경험하게 된다. 그중 제일 이해가 되지 않고 관리하기 힘든 부분이 바로 "프로그램"에 대한 관리 이다. 물론 개발자 입장에서 Source Code만 분석하면 어는정도 프로젝트에 대한 이해가 된다 하지만 회사에서 요구하는건 많은 것을 요구하게 된다 예를 들면 "Source Code는 너희만 아는거고....나는 모르니 내가 알수 있는 문서로 가져와" 머 이런 업무 지시들... 그래서 나름 문서화 해서 "프로그램 정의서", "인터페이스 정의서", "테이블 정의서", "ERD" 뭐 이런 산출물을 작성하면 이렇게 말한다 "이게 뭔데~! 초등학생이 봐도 알 수 있는 그런 자료를 가져와" 나는 생각한다 회사 바꿔야 하나??ㅋㅋㅋㅋ 그래..
[C#]MX Component V4를 이용한 통신 안녕하세요 코딩하는남자의 코딩연습생입니다 이번 블러그에서는 C#에서 MX Component V4의 API를 이용하여 PLC와 통신할 수 있는 설정 방법을 다뤄보겠습니다 1. MX Conmpnent의 Communication Setup Utility를 이용해서 기본 셋팅 한다 필자가 작성한 게시글중 MX Componnent v4 설정 방법의 게시글을 참고 2. GX Works2를 실행 및 새 프로젝트 생성해서 간단한 Ladder 코드를 작성하고 GX Simulator를 실행한다 Ladder코드는 검색을 통해 작성하시기 바란다. 3. 비쥬얼스튜디오 2017를 실행해서 프조게트를 생성한다 C#이든 WPF든 생성한다 4, 비쥬얼 스튜디오에 MX Component의 설치 경로에 있는 DLL 파일을 참조 추가 한다..
[C#] 미쯔비시 PLC와 통신하기 위한 GX Works2설정 안녕하세요 코딩하는남자의 코딩 연습생입니다 미쯔비시 PLC와 통신하기 위한 MX Componnent v4 설정방법에 대한 글을 게시햇었는데 GX Works2 시뮬레이션 환경 설정 방법에 대한 글이 없어 작성하게 되엇습니다 해당 글은 실제 미쯔비시 PLC가 없더라도 GX Works2의 시뮬레이션 환경을 통해 PLC의 환경을 구성해 줍니다 설정 방법은 아래를 참고해 주세요~ 1. GX WORKS2를 설치 한다 다운 받아서 다음 버튼을 통해 설치하면 되므로 설명은 생략 2. GX WORKS2를 실행하고 New Project를 실행해서 기본 정보를 입력해서 OK 버튼을 누른다 간단한 Ladder 코드를 자것ㅇ하고 M0가 접점이 이고, D0가 랜덤하고 값을 입력하는 코드 3. Ladder를 작성 한뒤 Debus ..
[MS-SQL] Split 함수 만들기!! 안녕하세요 코딩하는 남자의 코딩연습생입니다 MSSQL에서 Split 제공 함수가 없습니다 그래서 사용자 Function으로 만들어 두시면 프로시져 내부에서 사용하시가 편합니다 CREATE FUNCTION arr_split( @sText VARCHAR(500), -- 대상 문자열 @str CHAR(1) = '|', -- 구분기호(Default '|') @idx INT -- 배열 인덱스 ) RETURNS VARCHAR(20) AS BEGIN DECLARE @word CHAR(20), -- 반환할 문자 @sTextData VARCHAR(600), @num SMALLINT; SET @num = 1; SET @str = LTRIM(RTRIM(@str)); SET @sTextData = LTRIM(RTRIM(@sT..
[C#] 오라클 컨넥션 만들기!! using System; using System.Data; using System.Data.OleDb; class TableAnalysis { static void Main(string[] args) { string sql = "Provider=MSDAORA.1;Password=tiger;User ID=scott;Data Source=noaa;Persist Security Info=True"; //oracle 서버 연결 OleDbConnection conn = new OleDbConnection(sql); //conn.ConnectionString = sql; try { conn.Open(); //데이터베이스 연결 OleDbCommand cmd = new OleDbCommand(); cmd.Command..
[C#] 엑셀파일 내보내기(그리드뷰) /// /// 데이타 테이블을 엑셀로 받아온다. /// /// 원본 데이타 테이블. /// 원본 데이타 테이블의 컬럼들. /// 보여질 테이블의 컬럼들. private static void DownExcel(System.Data.DataTable dt, string[] columns, string[] newcolumns) { DataGrid grid = new DataGrid(); System.Data.DataTable targetdt = new System.Data.DataTable(); for (int i = 0; i < columns.Length; i++) { System.Data.DataColumn column = new System.Data.DataColumn(newcolumns[i]); tar..

반응형