며칠전 아는 사람의 몇가지 질문을 보고 적은 내용입니다.
시작할때 메인폼을 화면에 나타내지 않기.
1 2 3 4 5 6 |
begin Application.Initialize; Application.ShowMainForm:=False; Application.CreateForm(TForm1, Form1); Application.Run; end. |
부팅 오직 한번만 프로그램을 실행하기….
도대체 무엇 때문에 이런용도를 쓰는지 알수 없습니다만, 필요하대서 찾아 봤습니다.
1 2 3 4 5 6 7 8 9 10 |
procedure TForm1.FormShow(Sender: TObject); begin if GlobalFindAtom('THIS_IS_SOME_OBSCURE_TEXT')=0 then GlobalAddAtom('THIS_IS_SOME_OBSCURE_TEXT') else begin ShowMessage('한번만 실행됩니다. 다시 실행하시려면 재부팅후 사용해 주십시요.'); Close; end; end; |
현재 프로그램의 아이콘을 Tray Icon으로 가져오기…
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
uses ShellAPI; ... var MyIcon: TNOTIFYICONDATA; .... procedure TForm1.FormCreate(Sender: TObject); begin MyIcon.cbSize:=SizeOf(MyIcon); with MyIcon do begin Wnd:=Form1.Handle; uID:=0; uFlags:=NIF_ICON+NIF_TIP; hIcon:=CopyIcon(Application.Icon.Handle); end; Shell_NotifyIcon(NIM_ADD, @MyIcon); end; procedure TForm1.FormDestroy(Sender: TObject); begin Shell_NotifyIcon(NIM_DELETE, @MyIcon); end; |
최신 댓글