WaitforSingleObject(Mutex, INFINITE);

이함수를 정확히 하는 역할이 무엇인지.

동기화를 위해서 사용은 한것 같지만.. 음.
AcroEdit 에서 사용자 도구 명령으로  C# 파일을 컴파일 하는 설정

메뉴 이름 : 임의로 입력
명령 : 예)C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\csc.exe  // csc.exe 있는곳을 찾아서 경로를 적어 준다.
인자 : %NAME%   // 활성화된 파일의 이름
작업 디록토리 : %PATH%   // 활성화된 파일의 경로
단축키 : Ctrl + 1

다음의 화면은 예제 화면이다.




























regedit를 띄운후 다음과 같이 작업한다.

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\dos prompt] 에
  "현재 위치에서 명령 프롬프트 열기(&D)" 입력한다.


[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\dos prompt\command] 에
  cmd.exe /k "cd %1" 입력한다.
메뉴의 Component -> Install Packages -> Add 클릭하여
설치된 Delphi BIN폴더에서 dclqrt70.bpl 을 선택하여 추가하세요.
Server (받는쪽)

#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/msg.h>
#include <sys/stat.h>

struct msgbuf {
long msgtype;
char buf[512];
};

int main(int argc, char **argv)
{
key_t key_id;
int i;
struct msgbuf mybuf;

key_id = msgget((key_t)1234, IPC_CREAT|0666);
if(key_id == -1) {
perror("msgget error : ");
exit(0);
}

while(1) {
if(msgrcv(key_id, (void *)&mybuf, sizeof(struct msgbuf), 1, 0) == -1) {
perror("quit : ");
exit(0);
}
printf("Msg Recv : [%d] [%s] \n", mybuf.msgtype, mybuf.buf);
}

return 0;
}


Client (보내는쪽)

#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/msg.h>
#include <sys/stat.h>
#include <fcntl.h>

struct msgbuf {
long msgtype;
char buf[512];
};

int main(int argc, char **argv)
{
key_t key_id;
int i, n;
struct msgbuf mybuf;
int fd_r;

int packet_size;

int total_size = 100000000;
int loop_size;

key_id = msgget((key_t)1234, IPC_CREAT|0666);

if (key_id == -1) {
perror("msgget error : ");
exit(0);
}

mybuf.msgtype = 1;

memset(mybuf.buf, 0x00, sizeof(mybuf.buf));


printf("Queue에 전송할 메시지를 입력하세요. -> ");
gets(&mybuf.buf);

if (strlen(mybuf.buf) > 0) {
if (msgsnd(key_id, (void*)&mybuf, sizeof(struct msgbuf), 0) == -1) {
perror("msgsnd error : ");
exit(0);
}
printf("Queue에 메시지 전송 성공.\n");
} else {
printf("Queue에 메시지 전송이 실패 했습니다.\n");
printf(" 입력한 문장을 확인해 주세요. \n");
exit(0);
}

return 0;
}
프로세서간의 통신 방법중 하나인 IPC[Message Queue]에 대한 간단한 샘플이다.

위에 프로그램은 Server 측에서 Key_id (1234) 에 Queue를 대기 하고 있다가
Client 쪽에서 KeyIn으로 받은 데이타를 Queue로 보내준다.

'아무거나' 카테고리의 다른 글

현재 폴더의 위치에서 명령 프롬프트 열기  (0) 2006.05.28
델파이 7.0 에서 QuickRep 설치 하기  (1) 2006.05.02
Eclipse 설치후 사용..  (0) 2006.04.25
공개 뉴스 그룹  (1) 2006.04.14
윈도우 정품 인증팁 #2  (2) 2006.04.14
이클립스 + CDT 설치후 MinGW를 가지고 사용하는데
윈도우용 이클립스에는 좀 버그가 있는것 같다.

컴파일후 실행이 잘 안된다. 컴파일은 제대로 되는데
실행이 안되는지 화면상에 출력이 됐다 안됐다 한다
리눅스용은 아주 이상없이 잘된다..



저도 어떤 분이 뉴스 그룹에서 올린 무료 뉴스 서버 검색 엔진을 가끔 이용합니다.

참 편리합니다.

특히, 우리나라 상용 뉴스 그룹 서버는 미풍양속을 해치는 게시물은 안 올라오잖아요.

근데, 외국에는 공개된 것이 굉장히 많습니다.

이 검색 엔진을 이용해서 검색창에 원하는 뉴스 그룹을 입력하면 무료 뉴스 서버 목록이 검색됩니다.

무료 뉴스 서버 목록을 클릭하면 자동으로 아웃룩이 실행되면서 뉴스 서버 게시물이 나타납니다.

참고하시기 바랍니다.

http://freenews.maxbaud.net/
이번에 새로 나온 인증패치는 기존 인증 건너뛰는 방법(추가기능관리 비활성화)으로는 통하지 않습니다.

일단 도구-윈도우 업데이트에서 하라는대로 업데이트 하면 정품인증혜택 업데이트를 합니다.
다시 접속해서 업데이트를 하면
정품인증 문제로 업데이트가 안됩니다.

이제

익스플로러
도구-윈도우 업데이트
눌르면 사이트 이동이 됩니다.(업데이트 갔을시 초기 사이트로...)
사이트가 완전 로드되면

파일-열기를 클릭해(사이트 이동시 쓰는 방법입니다.)
다음을 입력해줍니다.

javascipt:void(window.g_sDisableWGACheck='all')
댓글에 있는 내용으로 대체

엔터


걍 즐겨찾기식으로 추가해 업데이트 사이트 가면 이 바로가기를 눌러주면 되겠죠.
이걸 먹여준 다음

업데이트 하는대로 나가면 업데이트 할걸 할 수 있습니다.

+ Recent posts