Screen 클래스를 이용하면 해상도를 이용하여 뭔가를 해야 할 때에 더욱 편리하게 할 수 있다.

예를 들어 현재 해상도를 받아오려면

Screen.PrimaryScreen.Bounds.Width
Screen.PrimaryScreen.Bounds.Height

를 이용하면 된다.

이것뿐만 아니라 여러 메소드들이 있으므로 이들을 응용하면 더욱 깔끔한 프로그램이 되지 않을까 생각해본다.

// 출처 : 데브펌
Posted by 병아리
이 글 다음부터 OnTime폴더에 올라오는 포스트들은 새 로그 형식을 따름과 동시에 버전도 새로 정하였음을 의미한다.

'Projects > C# - OnTime' 카테고리의 다른 글

OnTime v1.1.5  (1) 2008.02.18
OnTime v1.02.4  (2) 2008.02.01
OnTime v1.02.3  (0) 2008.01.31
Posted by 병아리

2008/02/17 (1.0.0)
- AutoLog 완성
- 첫 프로젝트와 이전 프로젝트를 구분하여 알맞은 로그 작성을 도와줌
- 이전 프로젝트의 경우 알아서 버전 정보와 프로그램 이름을 추적하고, 오늘 날짜와 버전업 인덱스 자동 생성

추가할 예정인 기능
- 아직은 계획 없음

'Projects > C# - AutoLog' 카테고리의 다른 글

AutoLog v1.0.1  (0) 2008.02.18
Posted by 병아리

### 1.02.4 버전 - 2008/02/01
===== 추가된 기능:
* 없음

===== 발견된 버그:
* (해결)재생이 되지 않음 -> 초기에 경로지정

===== 추가할 기능:
* 레지스트리 지우기(ini)

* 수면 모드

* 소리 크기

* 음원 선택

* 글꼴 및 폼 색상 설정

* 로그 어플에 올리기

* 자석 폼

* 평균 cpu점유율 낮을 때 잡일하기(대충 구현은 해봤지만 쓸모가 없을듯) //듀얼은 test되지않음

* 영어 지원

'Projects > C# - OnTime' 카테고리의 다른 글

OnTime에 새 로그 형식 적용  (0) 2008.02.17
OnTime v1.02.3  (0) 2008.01.31
OnTime v1.02.2  (0) 2008.01.04
Posted by 병아리

### 1.02.3 버전 - 2008/01/31
===== 추가된 기능:
* 윈도우 시작시 켜기/끄기

===== 발견된 버그:
* (해결)최소화 사용시 사라지듯 없어지던 현상 -> visible에 windowstate추가

===== 추가할 기능:
* 레지스트리 지우기(ini)

* 수면 모드

* 소리 크기

* 음원 선택

* 글꼴 및 폼 색상 설정

* 로그 어플에 올리기

* 자석 폼

* 평균 cpu점유율 낮을 때 잡일하기(대충 구현은 해봤지만 쓸모가 없을듯) //듀얼은 test되지않음

* 영어 지원

'Projects > C# - OnTime' 카테고리의 다른 글

OnTime v1.02.4  (2) 2008.02.01
OnTime v1.02.2  (0) 2008.01.04
OnTime v1.2.1  (0) 2007.12.31
Posted by 병아리

프로그램의 각종 설정값을 저장하는 방법은 많겠지만(레지 xml등등) 많이쓰이는 ini를 잘 몰랐는데 매번 찾아보기 귀찮아서 퍼와봤다.

1. 클래스
using System;
using System.Text;
using System.Runtime.InteropServices;

namespace Win32Tool
{
    public class IniControl
    {
        [DllImport("kernel32")]
        public static extern bool WritePrivateProfileString(string lpAppName, string lpKeyName, string lpString, string lpFileName);
        [DllImport("kernel32")]
        public static extern uint GetPrivateProfileInt(string lpAppName, string lpKeyName, int nDefault, string lpFileName);
        [DllImport("kernel32")]
        public static extern int GetPrivateProfileString(string lpAppName, string lpKeyName, string lpDefault, StringBuilder lpReturnedString, int nSize, string lpFileName);
    }
}
 
2. 사용예

string inifile = Environment.SystemDirectory + "\\Test.ini";
StringBuilder result = new StringBuilder( 512 );
Win32Tool.IniControl.GetPrivateProfileString( "색션", "키1", "error", result, 512, inifile );
Console.WriteLine( result.ToString() );
uint result2 = Win32Tool.IniControl.GetPrivateProfileInt( "색션", "키2", 0, inifile );
Console.WriteLine( Convert.ToString( result2 ) );
Win32Tool.IniControl.WritePrivateProfileString( "색션", "키3", "설정할값", inifile );

// 출처 : 데브펌

Posted by 병아리
이 글보다는 현재 실행중인 프로그램의 절대경로 받아오기 in C# 를 참고하기를 추천합니다!

1. 확장자를 제외한 프로세스 이름 가져오기
System.Diagnostics.Process currentProcess = System.Diagnostics.Process.GetCurrentProcess();
String s = currentProcess.ProcessName;

2. 현재 실행되고 있는 프로그램 디렉토리
String strFolder = System.IO.Directory.GetCurrentDirectory();

이 둘을 합치면 완전체는

System.IO.Directory.GetCurrentDirectory() + "\\" + this.currentProcess.ProcessName + ".exe"

// 출처 : 데브펌
Posted by 병아리
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

이 안에 문자열로 프로그램 이름과 경로 설정
Posted by 병아리


### 1.02.2 버전 - 2008/01/04
===== 추가된 기능:
* 없음

===== 발견된 버그:
* (해결)알림재생 1시간 전으로 됨 -> 수정

===== 추가할 기능:
* 윈도우 시작시 켜기

* 레지스트리 지우기

* 수면 모드

* 소리 크기

* 음원 선택

* 글꼴 및 폼 색상 설정

* 로그 어플에 올리기

* 자석 폼

* 평균 cpu점유율 낮을 때 잡일하기(대충 구현은 해봤지만 쓸모가 없을듯) //듀얼은 test되지않음

* 영어 지원

//에휴 바보-_-

'Projects > C# - OnTime' 카테고리의 다른 글

OnTime v1.02.3  (0) 2008.01.31
OnTime v1.2.1  (0) 2007.12.31
OnTime v1.2  (5) 2007.12.28
Posted by 병아리

OnTime v1.2.1

Projects/C# - OnTime 2007. 12. 31. 11:30

### 1.2.1 버전 - 2007/12/31
===== 추가된 기능:
* 없음

===== 발견된 버그:
* (해결)메인 폼 항상 위일때 설정 폼 포커스 못 잡음(1.2) -> 설정에 메인 따라하기

* (해결)한번 재생 후 path 잃어버려서 재생실패(1.2) -> hour랑 알람경로 동시에
  (특수한 test환경이 아닌 평상시에는 문제될게 없을듯)

* (수정)sync 되지 않음(1.2) -> 롤백(sync삭제)

===== 추가할 기능:
* 윈도우 시작시 켜기

* 레지스트리 지우기

* 수면 모드

* 소리 크기

* 음원 선택

* 글꼴 및 폼 색상 설정

* 로그 어플에 올리기

* 자석 폼

* 평균 cpu점유율 낮을 때 잡일하기(대충 구현은 해봤지만 쓸모가 없을듯) //듀얼은 test되지않음

* 영어 지원

'Projects > C# - OnTime' 카테고리의 다른 글

OnTime v1.02.2  (0) 2008.01.04
OnTime v1.2  (5) 2007.12.28
OnTime v1.1  (4) 2007.12.07
Posted by 병아리

사이드바 열기