본문 바로가기

work/delphi

error : Incompatible types: "Cardinal" and "TSearchRec" (FindClose 사용 시) TSearchRec 로 선언한 변수를 FindClose 함수에 쓸때다음과 같은 에러가 발생하는 경우Incompatible types: "Cardinal" and "TSearchRec" 해결방법 :uses 절에 SysUtils 보다 앞에 Windows 를 사용하면 해결 FindFirst, FindNext, FindCloseSeems I've used the above routines with a TSearchRec several times before. I'm now having trouble getting FindClose(SomeSearchRec) to compile. The compile time error message is: Incompatible types: "Cardinal" and "TSea.. 더보기
[Delphi 6] Component 설치 방법 출처 : http://withwani.tistory.com/82 Delphi 6에서 컴포넌트를 설치하는 방법에 대해 개인적인 Tip을 공개합니다. 처음 배우며 알아낸 것을 적은 것임을 인지하시고 보아주시기 바랍니다. ■ 델파이6 컴포넌트 설치 - 2006-12-14 16:13:16 목요일 1. 델파이 컴포넌트 설치 방법 2. 설치시 참조할 컴포넌트 리스트 3. 예외 상황시 대처 방법 1. 델파이 컴포넌트 설치 방법 1) A방식 : 지정된 경로의 package 파일을 선택하여 더블클릭 ==> *.dpk (package)형식에 사용함 2) B방식 : Delphi6 메뉴의 Component -> Install Component -> Unit File Name 에서 Browse... 를 선택하여 *.pas 파일.. 더보기
[Delphi] MAC Address 확인 (cmd 명령 리턴값 받기) // 읽고 쓰기 파이프 핸들 type TPipeHandles=record hRead, hWrite: DWORD; end; // 실행한 도스 명령어의 결과값을 반환 function GetDosOutput(cmd: String): String; const BUFFER_SIZE=4096; // 넘겨받은 핸들을 닫아줌 ____________________________________________________ procedure ClosePipe(var Pipe: TPipeHandles); begin with Pipe do begin if hRead0 then CloseHandle(hRead); if hWrite0 then CloseHandle(hWrite); hRead:=0; hWrite:=0; end; en.. 더보기
Vista/Windows7 에서의 관리자 권한 상승 Vista 이상 운영체제에서는 하드디스크에 어떤 파일을 생성한다거나, 혹은 레지스트리를 조작하는등 시스템에 어떤 변화를 주는 행위를 하고자 할 때에는 관리자 권한으로 실행하지 않으면 권한 오류로 인해 프로그램 오류를 유발시킨다. 이때문에 프로그램을 실행할때 관리자 권한으로 실행하도록 유도해야 하는데, 기본적으로 프로그램은 일반 유저모드로 실행이 되기 때문에 프로그램을 사용하는 사용자에게 "관리자 권한"으로 실행할 것을 인지시켜주지 않으면 예기치 않은 오류를 발생시킬 수 있다. Vista 이상의 운영체제에서 프로그램을 관리자 권한으로 실행시키기 위해 프로그램 실행전에 사용자에게 묻게 하는 행위를 하도록 하는것은 생각보다 매우 간단하다. 프로젝트를 생성하게 되면 기본적으로 "프로젝트명.res" 파일이 생성이.. 더보기
최소화시 애니메션 되게하는법! 왜? 델파이로 만든 프로그램은 최소화 애니메이션이 안되는가? 한번은 심심해서 이 문제를 가지고 VCL소스를 보면서 연구를 해 보았죠 그래서 제가 나름대로 지은 결론입니다. 그리고 해결방법도 제시해 보 았습니다. 먼저 왜 안되는가를 따지기 전에 윈95는 언제 애니메이션이 발생하게 하는가를 따져볼 필요가 있습니다. ★ 윈도95는 핸들이 있는 윈도가 Minimize, Maxmize 혹은 Restore(보통상태) 될때 애니메이션이 발생하게 한다. 별로 특별한 내용이 아닌것 같지만 의미가 있습니다. 애니메이션이 되는 것은 폼이 아니라 핸들이 있는 윈도라는 것입니다. 즉 폼에 Panel을 하나 놓고 버튼도 하나 놓고 버튼의 OnClick에 이렇게 코딩해 보세요 ShowWindow( Panel1.Handle, SW_.. 더보기
Re:TeeChart TFastLineSeries Leak/Memory Increase Hello, Thank you for your assistance David. I am using the TeeChart component populated with multiple TFastLineSeries on two different forms for different purposes. I have adopted David’s recommendation (calling FreeAllSeries) for freeing the set of Series for both instances. I found that this change appears to have completely eliminated any growth in memory for one of the TeeCharts. However, th.. 더보기
델파이 개념 출처 : http://blog.naver.com/kimsoma/60013241839 이자료의 필자는 내가 아니라 웹 검색해서 찾아낸것입니다 -------------------------------------------------------------------------------- // 개발 분야 및 개발자의 분포 // 중소 규모의 벤처기업에서 펌웨어 제작을 위해 C나 어셈블리어, 퀵베이직등을 사용하여 프로그래밍을 하는 경우가 많았고, 특정 마이크로 칩을 사용한 프로그래밍에는 특정 회사의 PIC용 컴파일러를 사용되고 있다. C++ 빌더와 VC++는 주로 하드웨어의 고속 제어용 프로그램을 개발하는 데, 사용되고 있다. 데이타 베이스 관련 사무용 프로그램에는 델파이, 파워빌더, 비쥬얼 베이직 등을 사용하여.. 더보기
[델파이] 폼 화면 캡쳐하기 화면을 캡쳐해서 bmp 파일로 저장하는 코딩이다. 소스를 적당히 수정하면 화면내에서 특정부분을 캡쳐하는 코딩으로 일반화 할 수 있겠다. procedure TFPAT070M.CaptureForm; var Pt :TPoint; // 캡쳐할 화면의 Left, Top 좌표 DC :HDC; Bmp :TBitmap; begin // 폼전체를 하기 위해 (0, 0) 으로 설정하였다. Pt.x := 0; // x => 폼에서의 Left 값 Pt.y := 0; // y => 폼에서의 Top 값 // 폼의 좌표를 스크린 좌표로 변환한다. Pt := ClientToScreen(Pt); // 캡쳐할 비트맵 생성 Bmp := TBitMap.Create; try // 비트맵 크기 지정 => 폼전체를 하기위해 폼의 크기를 지정하였.. 더보기
Using Automation with Crystal Reports and Delphi 원문 : http://www.delphi3000.com/articles/article_2159.asp?SK= In order to use the automation features in Crystal Reports 8.0 and higher, you must first import the type libraries into Delphi. 1. From the Delphi IDE main menu, go to Project | Import Type Libary. 2. Highlight 'Crystal Report 8 Active X Designer Run Time Libary'. 3. In the Class Names box, change the following items (TReport and TDat.. 더보기