요즘 운전하다가 짜증나는 경우..  
암 치료, 비용은? 기간은?  
장례식에 대해 미리 알아우어여 할 것들.  
아이폰4 출시가 기약없이 연기(?)되면서..  
참을 인(忍)자를 세기면.. 손해.  
한국/부산에 스타 게이트가 있다는거 아세요?  
블루투스 이어셋 개조기 - like Sony VH300  
현재 방안 온도 27도~ --;  
아이폰을 다른 스마트 폰과 비교한다면 이렇습니다.  
카테고리
전체 (502)
궁시렁 궁시렁 (367)
튜닝/자작 (37)
읽을거리(펌) (71)
갤러리 (15)
트랙백 (7)
스크랩(비공개) (0)
이런 사업은.. (4)
방문 흔적을 남기신 분들

튜닝/자작 :: 바탕 화면에서 아웃룩의 일정을 보자 - DeskAgenda.3076
사용자 삽입 이미지

작은 자작 유틸입니다.

역시나 필요해서 만든 프로그램인데 회사와 연계된 일부 기능을 제외하고 공개를 합니다.
제목에서 보듯이 아웃룩의 일정을 바탕 화면에서 볼수 있는 프로그램입니다.

비슷한 프로그램인 DeskTask 를 사용해봤는데 기능이 마음에 들지 않아 아예 만들었습니다.

첨부된 그림에서 왼쪽이 DeskTask 오른쪽이 DeskAgenda 입니다.
일부러 화려한 배경에 임의의 자료를 넣어서 비교를 해보겠습니다.

1. 글자 테두리 기능
글자에 테두리가 없으면 왼쪽에서 보듯이 바탕 화면 색과 같을 경우 내용 파악이 안됩니다.

2. 지난 일정, 오늘, 앞으로의 일정에 대한 구분이 되지 않는다.
DeskTask 는 모두 단색이라 구분이 쉽게 되지 않습니다.
DeskAgenda 는 지난 일정, 오늘 해당하는 일정, 앞으로의 일정에 대해 각각 색상 지정이 가능합니다.
특히 오늘 해당되는 일정은 앞에 체크 표시가 나타납니다.

3. 연속된 일정의 경우 표기가 안되는 문제
2007년 4월 6일부터 2008년 1월 31일까지 xxxx 라는 일정을 넣어두었는데 DeskTask 는 표기오늘 날짜에 여러 날이라는 표기만 됩니다.
DeskAgenda 는 여러 날인 경우 제목에 해당 시작일, 종료일이 표기 됩니다.

4. 시각 부분을 제외했습니다.
하루 종이, 여러 날, 또는 특정 시간 표시가 개인적으로는 의미가 없어서 제외하였습니다.

5. 자동 정렬 (임의 정렬은 현재 안됩니다.)
데이터를 갱신하고 나면 자동으로 화면 우측 가운데 나타나도록 되어있습니다.

6. 할일(Todo) 항목이 빠짐
거의 쓰지 않아 제외하였습니다.

7. 아웃룩 링크 기능이 빠짐
DeskTask는 일정 항목을 더블클릭하면 해당 일정 내용이 아웃룩이 실행되며 보입니다만
저는 아직 구현을 하지 못했습니다. ^^;;

개인적으로 필요한 기능 위주로 만들었습니다.
혹시나 기능이 필요하신 분은 리플 달아주세요.
능력이 되면 버전 업을 하면서 넣어보겠습니다.

http://www.dudals.net/out_link/DeskAgenda.zip
2008/01/21 18:10 2008/01/21 18:10
태그 ::
[자작,]와 관련된 글
트랙백 0, 댓글 13개가 달렸습니다.


받은 트랙백 트랙백 주소 :: http://www.dudals.net/trackback/2943 - 주소를 클릭하시면 자동으로 복사가 됩니다.
트랙백 RSS :: http://www.dudals.net/rss/trackback/2943
트랙백 ATOM :: http://www.dudals.net/atom/trackback/2943
달린 댓글
  1. 2008/01/26 20:30 비밀방문자  댓글주소  수정/삭제  댓글쓰기
    관리자만 볼 수 있는 댓글입니다.
  2. 2008/01/27 20:37 dudals  댓글주소  수정/삭제  댓글쓰기
    to-do 기능을 원하시는 분들이 몇분 계시는군요. ^^
    이 기능을 한번 넣어봐야겠습니다.
    적어주신 기능에 대해서는 제가 업그레이드시에 참고하겠습니다. ^^
  3. 2008/02/28 11:10 이영호  댓글주소  수정/삭제  댓글쓰기
    오늘 일정 앞에 붙는 체크표시가 폰트를 다른걸로 설정하면 아주 이상하게 보이는 경우가 많습니다. 차라리 다른걸로 바꾸시던지 아니면 없애는 편이 좋을듯 보입니다. 멋진프로그램 감사합니다. PDA쓰는데 아웃룩과 연동해 노트북에 띄워두었습니다. 매우 편리하네요.
  4. 2008/03/02 11:50 dudals  댓글주소  수정/삭제  댓글쓰기
    네.. 이영호님 의견을 적용하도록 하겠습니다.
    현재 속도면이나 기능면에서 다시 작업을 하고 있습니다. 그래서 공개하는데 시간이 좀 걸리네요. ^_^
  5. 2008/03/11 23:23 민호  댓글주소  수정/삭제  댓글쓰기
    좋은 유틸 감사합니다 잘쓸께요
  6. 2009/04/09 15:30 김민우  댓글주소  수정/삭제  댓글쓰기
    감사합니다. 이런 프로그램이 너무 필요해서 검색했는데
    바로 뜨더군요 . 잘쓰겠습니다.
  7. 2009/06/07 02:17 이영호  댓글주소  수정/삭제  댓글쓰기
    deskagenda 잘쓰고 있습니다.
    그런데, 구글 사이드바를 띄우니까 일정이 사이드바 뒤로 숨어버리네요.
    변경한 위치가 기억이 안되는 것 같습니다.
    방법이 없을까요?
    정말 편리한 유틸인데...
    돈 주고도 살 것 같아요...
  8. 2009/08/18 14:54 비밀방문자  댓글주소  수정/삭제  댓글쓰기
    관리자만 볼 수 있는 댓글입니다.
    • 2009/08/21 17:50 dudals  댓글주소  수정/삭제
      개발툴은 델파이가 맞구요.. ^^
      아웃룩 핸들링은 msdn 을 통해서 자료를 찾았습니다.
      델마당에 보시면 관련 자료가 있기는 한데 응용을 하려면 msdn 을 참고하시는게 좋아요.

      아웃룩 일정을 가져오는 코드는 아래와 같습니다.

      outlook := CreateOLEObject('Outlook.Application');
      ns := outlook.GetNamespace('MAPI');
      folder := GetCalendarFolder(ns.Folders);

      ApptItems := ns.Folders('개인 폴더').Folders('일정').Items;

      MemoOutlook.lines.add(inttostr(folder.Items.count));
      MemoOutlook.lines.add(inttostr(ApptItems.count));

      if not VarIsNull(folder) then
      begin
      MakeOutLookData;

      MemoOutlook.Lines.Text := OutLookData.Text;

      MemoDebug.lines.add(inttostr(WebBoardData.Count));

      for WebBoardCount := 0 to WebBoardData.Count - 1 do
      begin

      LabelMsg.Caption := Caption;
      Application.ProcessMessages;

      TempList.CommaText := WebBoardData[WebBoardCount];

      Title := TempList[0];
      StartDate := StrToDate(TempList[1]); // + ' 00:00.00');
      EndDate := StrToDate(TempList[2]); // + ' 00:00.00');

      if OutLookData.Indexof(WebBoardData[WebBoardCount]) = -1 then
      begin
      MemoAdd.lines.add('추가 : ' + WebBoardData[WebBoardCount]);
      NewCount := NewCount + 1;

      Application.ProcessMessages;
      appointment := ApptItems.Add(olAppointmentItem);
      appointment.Subject := Title; // 'new appointment';
      appointment.Start := StartDate; // Now();

      if StartDate <> EndDate then
      appointment.End := EndDate + 1; //+ (60 / 86400) // Now() + 10; {10 days for execution}
      appointment.ReminderMinutesBeforeStart := 0;
      appointment.ReminderSet := 0; // or 1
      appointment.Importance := olImportanceHigh;
      appointment.AllDayEvent := 1; {all day event}
      appointment.Save;
      end
      else
      begin
      MemoDebug.lines.add('있음 : ' + WebBoardData[WebBoardCount]);
      end;
      Caption := '전체 ' + IntToStr(WebBoardData.Count) + ' / 추가 ' + IntToStr(NewCount);
      end;
      end;
  9. 2009/08/31 18:35 그리섬  댓글주소  수정/삭제  댓글쓰기
    개발자님 글 잘읽고갑니다..^^
    혹시 아웃룩의 주소록을 핸들링하는 방법을 알고 계신지요..? 아무것도 모르는 초보가 그것을 짜야 하는데.. 도저히 방법을 찾을 수 없어서 이렇게 글 남깁니다..^^;; 자료가 있는 곳이나 예제 혹은 참고할 문서가 있는 곳이라도 알고 계시면 조언 좀 부탁드릴게요.. 감사합니다..^^
  10. 2009/12/14 14:33 류근철  댓글주소  수정/삭제  댓글쓰기
    감사하게 잘 사용하고 있는데요,

    위치가 저장되면 참 좋을것 같습니다.

    리프레시 되면 위치가 계속 되돌아 갑니다.
    • 2009/12/22 19:49 dudals  댓글주소  수정/삭제
      위치와 관련된 부분을 옵션에 넣어야 할것 같네요..
      이와 관련된 부분에 대해 작업 후에 공개하겠습니다. ^^
      프로그램을 유용하게 사용해주셔서 감사합니다.
[로그인][오픈아이디란?]








최근 트랙백

최근 댓글

최근 읽힌 게시물

태그


copyright(c) 2001-2008 www.dudals.net all rights reserved.
Designed by dudals at 2008.10.17.60.198.822978    Powered by Textcube 1.7.6 :Staccato
free counters