본문 바로가기
반응형

IT-개발,DB729

[개발/MFC] MFC가 제공하는 List Class - CStringList ■ MFC가 제공하는 List Class - CStringList ※ MFC 가 제공하는 List Class - 양방향 포인터를 가지는 이중 연결 리스트(Doubly-Linked List) - 리스트의 처음 부분을 가리키는 포인터(Head) 와 끝 부분을 가리키는 포인터(Tail)가 있다. 따라서 어느 방향으로든 순환하는 것이 가능하다. MFC가 제공하는 List Class ① 템플릿 클래스 (Template Class) ② 비 템플릿 클래스 (Nontemplate Class) ① 템플릿 클래스 (Template Class) - afxtempl.h 헤더파일 필요. - 원하는 종류의 데이터 타입을 프로그래머가 결정 - 비 템플릿 클래스가 제공하는 모든 기능을 구현할 수 있기 때문에 템플릿 클래스 사용을 권.. 2011. 8. 1.
[개발/MFC] 프로세스가 살아있는지 검사, 프로세스 죽이기 프로세스가 살아있는지 검사, 프로세스 죽이기 프로세스가 살아있는지 검사 // uses 에 TlHelp32 추가 functionIsRunningProcess(constProcName: String) : Boolean; var Process32: TProcessEntry32; SHandle: THandle; Next: Boolean; begin Result:=False; Process32.dwSize:=SizeOf(TProcessEntry32); SHandle :=CreateToolHelp32Snapshot(TH32CS_SNAPPROCESS,0); // 프로세스 리스트를 돌면서 매개변수로 받은 이름과 같은 프로세스가 있을 경우 True를 반환하고 루프종료 ifProcess32First(SHandle, Pro.. 2011. 8. 1.
[개발/MFC] 동적으로 COM Server 등록하기 (DLL, OCX) [개발/MFC] 동적으로 COM Server 등록하기 (DLL, OCX) DLL 등을 등록하려면 regsvr32 DLL이름 으로 등록한다. (등록해제는 regsvr32 /u DLL이름) 동적으로 등록하는 방법이 있었다. RegisterComServer(DLL이름); ex) 프로젝트 파일(.dpr)에서 한다. programRegistComServer; uses Forms, ComObj, Main in'Main.pas'{Form1} {$R *.res} constDLL_FILE='xx.dll'; begin Application.Initialize; ifFileExists(DLL_FILE) then begin RegisterComServer(DLL_FILE); // DLL 등록 end else begin App.. 2011. 8. 1.
[개발/MFC] 바탕화면 바꾸기 procedure 바탕화면_바꾸기(이미지파일: String; 바둑판형식: Boolean); const 바탕화면_복구 = 29699; var Reg: TRegIniFile; 바탕화면_핸들: HWND; begin // 레지스트리에 바탕화면에 대한 항목 세팅 Reg := TRegIniFile.Create('Control Panel'); Reg.WriteString('desktop', 'Wallpaper', 이미지파일); if바둑판형식 thenReg.WriteString('desktop', 'TileWallpaper', '1') else Reg.WriteString('desktop', 'TileWallpaper', '0'); // 바탕화면 변경 메세지 보냄 바탕화면_핸들:=FindWindow('ExploreWC.. 2011. 8. 1.
[개발/MFC] regsvr32.exe 를 사용하지 않고 ActiveX DLL을 레지스트리에 등록하기 [개발/MFC] regsvr32.exe 를 사용하지 않고 ActiveX DLL을 레지스트리에 등록하기 activeX DLL 을 regsvr32를 사용하지 않고 등록하는 방법이 델파이로 된게 있어서 가져왔다. 직접 만들어서 해볼려고 하니 시간이 부족하다... Unit Unit1; Interface Uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; Type TForm1 = Class(TForm) btRegistryDll: TButton; btUnRegistryDll: TButton; Procedure btRegistryDllClick(Sender: TObject); Procedure btUnRegis.. 2011. 8. 1.
[개발/MFC] 현재 실행중인 익스플로러 인터페이스 받기 현재 실행중인 익스플로러 인터페이스 받기 참고하세요 HOWTO: Connecting to a Running Instance of Internet Explorer #import // Internet Explorer 4.0x #import // Internet Explorer 5 #import SHDocVw::IShellWindowsPtr m_spSHWinds; if ( S_OK == m_spSHWinds.CreateInstance(__uuidof(SHDocVw::ShellWindows))) { // 현재 실행중인 익스플로러의 숫자 long nCount = m_spSHWinds->GetCount(); IDispatchPtr spDisp; for (long i = 0; i Item(va); SHDocVw::I.. 2011. 8. 1.
반응형