1. 설명
종료할 프로그램의 Handle을 얻고 그것을 이용해서 프로세스ID를 얻어서 프로그램을 종료 시킨다.

2. 소스
var
ProcessHandle: THandle;

ProcessId: Integer;

Wnd: HWND;

begin

Wnd := FindWindow('KMUtilWndClass',nil);

// 윈도우 핸들로 부터 프로세스 ID를 얻습니다.

GetWindowThreadProcessId(Wnd, @ProcessId);

// 얻어진 ID로 부터 프로세스 핸들을 얻습니다.

ProcessHandle := OpenProcess(PROCESS_TERMINATE, False, ProcessId);



// 죽여 버립니다...

TerminateProcess(ProcessHandle, 4);
Posted by Gu Youn
,
1. 설명
메인폼 이전에 출력할 폼을 먼저 모달로 보여준후 모달 폼에서 mrOk, mrCancel에 따라서 그 이후 메인폼 보여줄지 말지를 결정한다.

2. 소스
    Loginform := TLoginForm.Create(Application);

   try
     if LoginForm.ShowModal = mrCancel then
       Exit;
   finally
     LoginForm.Free;
   end;

   Application.CreateForm(TKomarooForm, KomarooForm);
   Application.CreateForm(TSendMemoForm, SendMemoForm);
   Application.Run;


Posted by Gu Youn
,
1. C++ Tutorial
www.cs.uregina.ca/dept/manuals/C++/tutorial.html
Online documentation which accompanies Coronado Enterprises C++ Tutor version 2.2.

 
2. C++ Tutorials: Learn C Language Today
www.gustavo.net/programming/c.shtml
Contains C, C++, and OOP tutorials, software and programming tools, routines and source code.

 
3. DevX -- C++ Zone
www.cplus-zone.com
Specialized part of the Development Exchange containing C++ links, FAQs, discussions, news, and tutorials.

 
4. From the Ground Up: A Guide to C++
http://library.advanced.org/3074
Personalized C++ tutorial in HTML format specifically created for users with knowledge of the Pascal programming language.

 
5. MSDN Online Voices: Deep C++
http://msdn.microsoft.com/voices/deep.asp
Monthly C++ column from Microsoft.

 
6. "Thinking in C++ 2nd Edition" by Bruce Eckel
www.mindview.net/ThinkingInCPP2e.html
Free electronic version of Bruce Eckel's book, "Thinking in C++ 2nd Edition", along with source code.

7. C/C++ Users Journal Web Site
www.cuj.com
This monthly magazine is available in-print, and several articles each month are made available on-line.


8. Dr. Dobb's Journal C/C++ Discussion Forum
www.ddj.com/topics/cpp
This site has reasonable activity, with roughly 1 message posted per day.

 
9. PrestoNet C/C++ Discussion Group
www.prestwood.com/forums/c
This site hosts several forums, one of them C++Builder specific. It is fairly active, with a message posted every two or three days.

 
10. Programmer's Archive C++ Discussion Board
http://pa.pulze.com/cppdir/wwwboard
One of many discussion lists created by The Programmer's Archive.

 
11. The Bits C++Builder Discussion List
www.topica.com/lists/cbuilder/subscribe
An extremely active C++Builder discussion list where initial discussions were held on the creation of the C++Builder Developer's Guide.
Posted by Gu Youn
,
1. ActiveX Type Library의 IActiveFormXEvents에 추가하고자 하는 이벤트 이름으로 메소드(method)를 추가한다.
에를 들어 OnTestEvent를 추가한 경우 ActiveFormProj1_TLB.pas 파일에 자동으로 다음과 같은 항목이 추가된다.

    procedure OnTestEvent; dispid 209;
    FOnTestEvent: TNotifyEvent;
    property OnTestEvent: TNotifyEvent read FOnTestEvent write FOnTestEvent;

2. ActiveFormImpl1.pas에 Event Triger 함수를 작성한다.
procedure TrigerOnTestEvent(Sender: TObject);

procedure TActiveFormX.TrigerOnTestEvent(Sender: TObject);
begin
   if FEvents <> nil then FEvents.OnTestEvent;
end;

3. 이벤트 발생 시켜야 할 시점에 TgigerOnTestEvent함수를 호출하면 이벤트가 발생하게 된다.

4. html에서 이벤트 핸들러 작성하는 방법
<script language="vbscript">
  sub Form1_OnTestEvent()
    //이벤트발생할떄 처리할 내용 구현
  End Sub
</script>
Posted by Gu Youn
,
Sun ONE Web Server 가 iPlanet 서버 임.
Java Servlet 2.2 specification and JavaServer Pages 1.1 components
자세한 내용은 아래 페이지 참고
http://wwws.sun.com/software/products/web_srvr/ds_web_srvr.html


서버별 서블릿 지원하는 스펙에 대한 내용은
http://java.sun.com/products/servlet/industry.html 페이지 참고


http://docs.sun.com/source/816-5742-10/index.html

http://docs.sun.com/db/prod/s1.entconn60#hic
Posted by Gu Youn
,
1. sqlplus 접속
sqlplus [user name]/[password]@[SERVERNAME]

SERVERNAME은 tnsnames.ora에 설정된 이름을 사용한다.


2. PRIMARY KEY 설정
PRIMARY KEY 설정에는 세가지 방법이 존재

ㄱ.컬럼 정의에서 설정(테이블 일반 생성 하는 형식)
   location_id    NUMBER(4) CONSTRAINT loc_id_pk PRIMARY KEY

ㄴ.테이블 속성에서 설정(Create문 맨 마지막에 추가)
   CONSTRAINT loc_id_pk PRIMARY KEY (location_id)

ㄷ. 테이블 생성후 설정 변경 :
   ALTER TABLE locations_demo MODIFY (country_id CONSTRAINT country_nn NOT NULL);


3. 자동증가하는 컬럼 만들기
sequence를 만들고 테이블에 인서트 할때 sequence를 이용해서 저장한다.

ex)
create sequence seq1
increment by 1
start with 1
maxvalue 1000;

4. lastreqtim과 현재 시간과의 차이 구하기
trunc(round((sysdate-lastreqtime)*24*60*60)) //day 단위
trunc(round((sysdate-lastreqtime)*24)) //hour 단위
trunc(round((sysdate-lastreqtime)*24*60))  //min 단위
trunc(round((sysdate-lastreqtime)*24*60*60)) //sec 단위

5. SQLPLUS 기본 명령 정리
SHOW ALL : 현재 설정 내용 출력
set heading off[on]

6. 인덱스(index)
ㄱ. 생성
   create index index_name  on table_name(column_name);
ㄴ. 삭제
   drop index index_name;
ㄷ.기타
  desc user_indexes;
  select * from user_indexes;

7. 제약 조건 확인(not null...)
select * from user_constraints where table_name = upper('table_name');

8. SERVER NAME 등록
/product/9.2.0.1.0/network/admin/tnsnames.ora에 추가

9. sqlclient에서 한글 인서트 깨지는 경우
오라클 서버의 NSL_LANGUAGE , NLS_CHARACTERSET 확인
  select * from V$NLS_PARAMETERS;
서버의 NLS_CHARACTERSET과 sqlclient의 characterset을 일치시켜 준다.
  export NLS_LANG=AMERICAN_AMERICA.KO16KSC5601
   or
  export NLS_LANG=AMERICAN_AMERICA.UTF8


10. 테이블 목록
  select * from tab

'Computer > Database' 카테고리의 다른 글

MySQL 팁  (4) 2005.07.10
MS-SQL - ConnectionString 샘플  (14) 2005.07.10
MS-SQL - 패치및 서비스팩 적용에 따른 버전 정보  (6) 2005.07.10
데이터 베이스 잡담...  (4) 2003.05.23
두개 이상의 인스턴스 EM에 등록하기  (4) 2002.11.04
MS-SQL 기본 정리  (16) 2002.10.07
Posted by Gu Youn
,
C와 C++ name mangling 규칙이 다르므로 C++에서 C 함수를 사용하기 위해서는
아래처럼 extern "C" 를 붙여준다.

ex) extern "C" void cfunc(int);

함수가 여러개일 경우에는
extern "C"
{
   //함수들....
}
Posted by Gu Youn
,
프로그램 오류 처리 방법을 설명한다.

Use 에 SysUtils 추가 하고
아래처럼 작성한다. 상세한 내용은 Help 참고
검색 키워드 : Try...except,

1. try...finally
try
  //에러 없을때 하고 싶은 것들
finally
  //리소스 해제 등 꼭 처리해줘야 하는 것들
end;

2. try...except
try
 //에러 없을때 하고 싶은 것들
except on e : Exception do
 //에러 처리
else
 //except로 처리 되지 않은 exception 처리
end;
Posted by Gu Youn
,