출처 : http://sfon.kr/M480/233
순정 롬(삼성에서 만든 공식 롬)은 안전성에는 더 나을지 모르겠지만, 실제 속도 면에서는 떨어진다. 그래서 M480 미라지 폰을 가지고 있는 사람이라면 누구나 롬 업을 시도를 하고 싶어한다.
롬업을 하고자 하는 분들의 편의를 위해 여기에서 롬업을 쉽게 하는 방법을 언급하고자 한다.
* 주의 : 롬업을 할 경우 모든 자료가 다 삭제가 되기 때문에, 반드시 백업을 해야 합니다.
...
출처 : http://sfon.kr/M480/233
순정 롬(삼성에서 만든 공식 롬)은 안전성에는 더 나을지 모르겠지만, 실제 속도 면에서는 떨어진다. 그래서 M480 미라지 폰을 가지고 있는 사람이라면 누구나 롬 업을 시도를 하고 싶어한다.
롬업을 하고자 하는 분들의 편의를 위해 여기에서 롬업을 쉽게 하는 방법을 언급하고자 한다.
* 주의 : 롬업을 할 경우 모든 자료가 다 삭제가 되기 때문에, 반드시 백업을 해야 합니다.
...
DataSet과 SqlCeResultSet 모두 데이터가 연결된 GUI의 데이터 소스로 쓰이거나 자료를 다루기에 적합하다. 하지만 비슷한 점은 그것뿐이다.
DataSet 객체의 기능은 매우 다양하고 DataColumn 객체의 컬렉션으로 이루어진 DataTable 객체에 DataRow 객체로 표현되는 데이터 레코드들을 저장할 수 있다.
DataSet은 열의 모든 값에 null이 저장될 수 없게 하거나 열의 모든 값이 유일한 값을 가지게 하는 것처럼 테이블에 저장한 자료에 제약을 걸 수도 있다.
외래 키와 같은 관계를 나타낼 수도 있다.
사실 DataSet은 관계형 데이터베이스와 매우 유사하다.
DataSet은 행이 데이터베이스에서 가져온 자료로 채워질 때 각 행의 값을 기억하는 기능을 가지고 있고, 행이 업데이트 된 다음에 새 값을 별도로(자체 내에) 저장할 수도 있다.
SqlCeResult는 이와 상당히 다르다. SqlCeResult는 자체적으로 값을 저장할 수 없으며, 데이터베이스로부터 직접 자료를 읽어오고 갱신하는 데 사용되는 가벼운 객체다.
윈도우 모바일 애플리케이션 개발가이드 P.144 그림 3-9는 이런 차이점을 보여준다.
DataSet의 경우는 닷넷 프레임워크로 작성된 분산 애플리케이션의 모습과 동일하다.
DataSet은 데이터베이스로부터 자료를 복사하거나 객체에 자료를 저장한 뒤에 데이터베이스 연결을 종료하기 위해 TableAdapter 객체를 사용하는 경우를 위해 설계됐다.
TableAdapter를 사용해서 객체(DataSet)를 어디로든 전송할 수 있다.
웹서비스나 닷넷 리모팅을 사용해서 원격 클라이언트로 보내거나 객체를 파일로 저장해서 전송할 수도 있다.(심각하게 생각할 것 없다. 구조상 그렇게 보내야 할 수도 있다.)
원격 클라이언트에서는 받은 자료를 변경할 수 있고, 변경된 자료를 다시 되돌려 보낼 수도 있다. 다시 자료에 접근하는 로직에 대한 이야기로 돌아가자.
DataSet의 DataTable 객체에서 변경된 행을 찾아내고 변경된 값을 데이터베이스에 기록하기 위해 TableAdapter 객체를 사용할 수 있다. 이런 갱신은 대개 낙관적 동시성(optimistic concurrency)이라 불리는 기술에 의해 보호된다.
갱신 로직이 DataSet을 갱신하지 않고 있는 동안에 다른 클라이언트로부터의 변경 내역을 체크하기 위해 DataSet에 저장된 원본 자료 값을 사용한다는 뜻이다. 다른 클라이언트부터 변경된 내용이 있다면 갱신된 내용이 겹쳐 쓰여지는 것을 막기 위해 갱신 동작이 실패할 것이다.
DataSet을 사용하는 것은 바람직한 선택이다. 웹서비스 호출로 원격 시스템에 자료를 전송하려 할 때도 DataSet은 역시 좋은 선택이다. 하지만 휴대용 기기처럼 메모리가 제한적인 디바이스에서 GUI에서 자료를 보여주거나 갱신하는 것이 전부라면 데이터베이스를 사용하면서 관계형 데이터베이스의 여러 특성을 지닌 DataSet 같은 무거운 객체를 사용하는 것은 낭비다.
이럴 경우엔 SqlCeResultSet이 제격이다. SqlCeResultSet은 데이터베이스에 자료를 요청하고 읽고 DataGrid와 같은 GUI 컨트롤에 연결하고 (소스 데이터가 단일 테이블인 경우) 갱신하는 데 사용할 수 있는 객체다. 호출된 서버 측 커서(cursor)를 사용해서 데이터베이스에 직접 작업이 가능하다(DataSet의 DataTable을 사용할 때는 클라이언트 측 커서를 사용한다.). DataSet의 고급 기능을 사용할 필요가 없다면 가능한 한 SqlCeResultSet을 사용해야 한다.
-- MOBILE Database 프로그래밍중 Foreign Key 설정에 대해
-- 물론 기본적인 SQL 구문일테지만…
/*
ON DELETE CASCADE :
-> 마스터 테이블(ProductCategory)의 레코드가 삭제되면 삭제된 레코드의 ProductCategoryID를 참조하는 차일드 테이블(Product)의 레코드도 같이 삭제하라.
ON UPDATE CASCADE :
-> 마스터 테이블(ProductCategory)의 ProductCategoryID가 새로운 값으로 바뀌면 모든 차일드 레코드 안의 ProductCategoryID 값이 그에 따라 자동으로 변경된다.
ON UPDATE NO ACTION :
-> 마스터 테이블(ProductCategory)의 변경사항에대해 아무런 액션이 일어나지 않도록 하는 옵션(기본값이다.)
*/
ALTER TABLE Product
ADD CONSTRAINT Product_ProductCategory_FK
FOREIGN KEY (ProductCategoryID) REFERENCES ProductCategory(ProductCategoryID)
ON DELETE CASCADE
ON UPDATE CASCADE
TABLE 구성시 데이터가 영문에 스페이스가 없거나 하는 경우 테이블이 뒤죽박죽 깨지기 마련인데~
이때 TABLE 태그의 style 속성을 추가하고 <table style=”table-layout:fixed”>
TD 태그의 style 속성에 word-break:break-all 값을 추가하면 된다.
<td style=”word-break:break-all”>
# word-break
|
TD 태그의 word-break 속성 이외에 word-wrap 이라는 속성도 있는데~
MSDN : http://msdn.microsoft.com
코드프로젝트 : http://www.codeproject.com
코드 예제
- http://www.microsoft.com/mspress/companion/9780735623583/
- http://www.acornpub.co.kr/book/windowsmobile
책 지원
- http://www.microsoft.com/learning/support/books/
프로그램
닷넷 컴팩트 프레임워크 : http://msdn.microsoft.com/netframework/downloads
SharpDevelop : http://www.sharpdevelop.net
-> http://wiki.sharpdevelop.net/default.aspx/SharpDevelop.CompactFramework2Development
컴포넌트
- http://www.microsoft.com/download/Browse.aspx?displaylang=en&categoryid=8
플랫폼 빌더(마이크로소프트 윈도우 임베디드 개발자 센터 웹사이트)
-> http://msdn.microsoft.com/embedded/develop.aspx
닷넷 컴팩트 프레임웍 2.0
- 새로운 특성
http://msdn2.microsoft.com/en-us/library/wslc3xeh.aspx
http://msdn2.microsoft.com/en-us/library/hycl8s6t.aspx
- API 레벨에서의 메소드 변경사항
http://compactframework2.net/compare
커뮤니티
MSDN 포럼 : http://forums.microsoft.com/MSDN/default.aspx?Forum-GroupID=11&SiteID=1
모바일 개발센터 : http://msdn.microsoft.com/mobility/community/newsgroups/default.aspx
모바일 클라이언트 소프트웨어 팩토리 : http://www.codeplex.com/smartclient
(Download : http://www.microsoft.com/downloads/details.aspx?FamilyId=3BE112CC-B2C1-4215-9330-9C8CF9BCC6FA&displaylang=en)
스마트 디바이스 프레임워크(SDF, Smart Device Framework)
포켓 PC와 스마트폰 플랫폼용 UI 가이드라인
- http://msdn.microsoft.com/mobility/windowsmobile/partners/mobile2market/participatevendors.aspx (링크이상 - http://msdn.microsoft.com/en-us/library/aa127185.aspx ??)
영리한 최소화?
윈도우 모바일 팀 블로그 : http://blogs.msdn.com/windowsmobile/archive/2005/10/05/The-Emperor-Has-No-Close.aspx
컨트롤 동작 예제
- http://msdn2.microsoft.com/en-us/library/ms172535.aspx
Notification(포켓 PC 전용)
- 예제 : http://msdn2.microsoft.com/en-us/library/ms172539.aspx
LogFont
- http://msdn2.microsoft.com/en-gb/library/microsoft.windowsce.forms.logfont.aspx
사용자 지정 컨트롤
- http://msdn2.microsoft.com/en-us/library/ms229644.aspx
하드웨어 키
- http://msdn2.microsoft.com/en-us/library/microsoft.windowsce.forms.hardwarebutton.aspx
InputModeEditor
우울합니다.
방금 엑스로드 고객센터에서 전화왔습니다.
"(입고후)일주일이 지났는데도 아무런 진행이 되지 않을 경우 고객(저)님이 반송을 요청하셔서 전화드렸습니다. 어느정도면 수리가능하고 수리비용을 알 수 없다면 반송해드릴까요?"
....
"아직도 비용하고 어느정도 시일이 걸리는지 알수 없나요?"
"기사님이 연락을 주셨다면 모르겠지만... 어쩌구..."
"네 반송해 주세요..."
택배비만 날렸네욤...
7/6 네비 택배 발송 -> 7/7 택배 도착 알림(택배사) -> 7/9 오전 A/S 확인 요청(비용,기간 등) -> 7/9 입고 확인 문자 받음 -> 7/17 지연발생으로 반송여부 확인 전화 받음...
어쩌겠어요...
엑스로드를 선택한 제 잘못인것을... ㅠㅠ
어머니 네비도 제가 엑스로드 사드렸는데... ㅠㅠ
이제 엑스로드 절대 비추할랍니다... 주변사람들 네비사려하면 뜯어 말리렵니다.
에구...
일단 제가 받아서 분해해서 GPS 배터리를 교체해 보려고 하는데요~
배터리만 교체해서 될 문제인지는 알 수가 없구요.
GPS 수신이 안되서 A/S를 보냈었거든요.
전에 분해를 시도하려다가 뭔가 걸리는 느낌이 들어서 A/S 센터로 보낸건데 말이죠~
참조할만한곳 있으면 알려주세요~
오마이 뉴스를 읽고...
현재 일련의 사건들을 접하며...
귀에걸면 귀거리 코에걸면 코거리.. 라더니
두가지 사건(?)으로본 검찰의 잣대...
기사 보기
댓글을 달아 주세요