Mykn’s Blog

Just another WordPress.com weblog

Archive for the ‘Computer’ Category

Máy vi tính – điện tử – công nghệ

Keyboard shortcuts in Mozilla Firefox

Posted by mykn trên Tháng Năm 25, 2009

This is a list of keyboard shortcuts in Mozilla Firefox.

Command Shortcut
Navigation
Back Alt+Left Arrow
Backspace
Forward Alt+Right Arrow
Shift+Backspace
Home Alt+Home
Open File Ctrl+O
Reload F5
Ctrl +R
Reload (override cache) Ctrl+F5
Ctrl+Shift+R
Stop Esc
Current Page
Go to Bottom of Page End
Go to Top of Page Home
Move to Next Frame F6
Move to Previous Frame Shift+F6
Page Info
Page Source Ctrl+U
Print Ctrl+P
Save Page As Ctrl+S
Zoom In Ctrl++
Zoom Out Ctrl+
Zoom Reset Ctrl+0
Editing
Copy Ctrl+C
Cut Ctrl+X
Delete Delete
Paste Ctrl+V
Redo Ctrl+Y
Select All Ctrl+A
Undo Ctrl+Z
Search
Find Ctrl+F
Find Again F3
Ctrl+G
Find As You Type Link
Find As You Type Text /
Find Previous Shift+F3
Web Search Ctrl+K
Ctrl+E
Windows & Tabs (see Tabbed Browsing )
Close Tab Ctrl+W
Ctrl+F4
Close Window Ctrl+Shift+W
Alt+F4
Move Tab Left
(when tab is focused)
Ctrl+Left Arrow
Ctrl+Up Arrow
Move Tab Right
(when tab is focused)
Ctrl+Right Arrow
Ctrl+Down Arrow
Move Tab to Beginning
(when tab is focused)
Ctrl +Home
Move Tab to End
(when tab is focused)
Ctrl+End
New Tab Ctrl+T
New Window Ctrl+N
Next Tab Ctrl+Tab
Ctrl+Page Down
Open Address in New Tab
(from Location Bar or Search Bar)
Alt+Enter
Previous Tab Ctrl+Shift+Tab
Ctrl+Page Up
Undo Close Tab Ctrl+Shift+T
Select Tab (1 to 8) Ctrl+(1 to 8)
Select Last Tab Ctrl+9
Tools
Bookmark All Tabs Ctrl+Shift+D
Bookmark This Page Ctrl+D
Bookmarks Ctrl+B
Ctrl+I
Caret Browsing F7
Downloads Ctrl+J
History Ctrl+H
Clear Private Data Ctrl+Shift+Del
Error Console Ctrl+Shift+J
Miscellaneous
Complete .com Address Ctrl+Enter
Complete .net Address Shift+Enter
Complete .org Address Ctrl+Shift+Enter
Delete Selected Autocomplete Entry Del
Toggle Full Screen F11
Help F1
Select Location Bar Alt+D
F6
Ctrl+L
Select or Manage Search Engines
(when Search Bar is focused)
Alt+Up Arrow
Alt+Down Arrow
F4

Posted in Keyboard Shortcuts | Leave a Comment »

Don’t use ZF on IIS

Posted by mykn trên Tháng Năm 22, 2009

There are a few things going on here.

First, Windows I/O is not the fastest, which is especially problematic with the ViewRenderer, as quite a number of files are loaded by it.

Second, there’s a bottleneck in the PluginLoader which we’re addressing now (and you can test with the 1.7.0 preview release now available, or using svn trunk); in tests on *nix machines under load, we saw a 12.5% performance gain.

Third, you should be using an opcode cache; this will significantly speed up the application regardless of version.

Posted in Performance | Tagged: , , , , , | Leave a Comment »

Disable layout and view renderer in Zend Framework

Posted by mykn trên Tháng Năm 21, 2009

Just a quick tip: I’m working on a project using Zend Framework and needed to switch off layout and view renderer for a specific controller. This can be achieved by adding the following calls to the controller’s preDispatch() method:

public function preDispatch()
{
    $this->_helper->layout()->disableLayout();
    $this->_helper->viewRenderer->setNoRender(true);
}

Posted in Zend_Layout | Tagged: , , , , | Leave a Comment »

Docbook

Posted by mykn trên Tháng Năm 21, 2009

What is DocBook?

DocBook is a schema (available in several languages including RELAX NG, SGML and XML DTDs, and W3C XML Schema) maintained by the DocBook Technical Committee of OASIS. It is particularly well suited to books and papers about computer hardware and software (though it is by no means limited to these applications).

Because it is a large and robust schema, and because its main structures correspond to the general notion of what constitutes a “book,” DocBook has been adopted by a large and growing community of authors writing books of all kinds. DocBook is supported “out of the box” by a number of commercial tools, and there is rapidly expanding support for it in a number of free software environments. These features have combined to make DocBook a generally easy to understand, widely useful, and very popular schema. Dozens of organizations are using DocBook for millions of pages of documentation, in various print and online formats, worldwide.

View more

Posted in New KN | Tagged: | Leave a Comment »

Hướng dẫn cách ghost qua mạng trong DOS

Posted by mykn trên Tháng Năm 20, 2009

Chuẩn bị một Hiren boot 9.2(version nào cũng dc, ở đây tôi dùng version 9.2),1 usb có thể boot
Copy 2 file network.uha, uharcd.exe trong cd hiren boot ( BootCD) vào thư mục C:\NET ( tạo một thư mục có tên là NET trên C:\).
Chúng ta phải extract file Network.uha ra bằng cách dùng cộng cụ trong cd hiren là uharcd.exe.
Vào notepad tạo một file có nội dung như sau:
@echo off
uharcd.exe x -ttemp -y+ network.uha
Save với tên là: extract.bat (chú ý phần tên mở rộng là BAT). File extract.bat này phải nằm trong thư mục C:\NET.
Sau khi làm xong các bước trên, tiếp tục chúng ta chạy file extract.bat, để extract file network.uha vào thư mục temp.
Sau khi extract xong file network.uha, chúng ta copy hết tất cả các file trong thư mục temp ra C:\NET
Cần chú ý 2 file quan trọng đó là SCRIPT.BAT và STARTNET.BAT, mở 2 file này bằng notepad và tìm và thay thế hết “ %ramd%: “ thành A:\NET.
Sau khi thay đổi đường dẫn trong 2 file SCRIPT.BAT ,STARTNET.BAT. Khởi động PC, vào CMOS chỉnh boot từ CDROM, bỏ cdhiren boot vào và khởi dộng boot từ cdrom, Sau khi boot từ cdrom, màn hình boot của hiren hiện ra, chọn boot vào DOS , sao khi chạy xong, nó sẽ tạo một ổ đĩa ảo trên ram, có tên là “ R:\ “ .
Tại dấu nhắc lệnh R:\> gõ lệnh “ COPY R:\*.* C:\NET “ quá trình copy diễn ra, sao khi copy xong , khởi động lại vào window. Sao khi vào window, copy toàn bộ thư mục NET (C:\NET) vào USB.(nếu ko copy từ R:\ dc, có thể làm cách sau. Extract file Driver.Cap và tool.uha vào thư mục C:\NET)
Sau đó khởi động lại pc , khởi động PC cho boot từ USB.
Tại dấu nhắc lệnh gõ “ cd NET “
“A:\NET\ script.bat”
Quá trình boot vào mạng sẽ diễn ra, nên để chế độ mặc định, nếu trong mạng đã có một DHCP server (để nó cấp IP) nếu không có DHCP server, phải tự cấp IP cho nó. Quá trình cấp IP và nhận diện địa chỉ MAC.
Sau khi chạy xong, tại dấu nhắc A:\NET gõ “ NET VIEW
Hiễn thị tòan bộ các pc trong mạng, nếu server có share một thư mục có tên là DATA.
A:\net\net use Z: \\tenserver\DATA
Thông báo thực hiện thành công, như vậy bạn có thể chạy ghost dc rồi hehe
nên copy file ghost vào USB, trước khi copy thư mục C:\NET vào USB, phải đảm bảo USB có thể boot dc vào DOS ( để USB có thể boot dc vào DOS, phải format usb với tùy chọn “Creat a DOS bootable disk” )
hoangsv2212@yahoo.com

Posted in System | Tagged: , , | Leave a Comment »

Ghost qua mạng

Posted by mykn trên Tháng Năm 20, 2009

Bài ghost nhận mọi cấu hình khá hay nhưng mình không có điều kiện máy test thử. Hưởng ứng cái vụ ghost này, xin ủng hộ bài viết: Ghost qua mạng

Bài này có nhiều cách nhưng mình thích cách này…

Ở bài trước chúng ta đã tìm hiểu cách cài đặt Windows từ xa qua mạng LAN dùng RIS. Khuyết điểm của RIS mà chúng ta dễ nhận thấy là phải chờ khoảng 30 đến 60 phút mới cài xong, khó cấu hình, server phải dùng hệ điều hành 2K hoặc 2K3 và phải nâng cấp lên Domain. Chính vì lý do đó nên bài viết này sẽ hướng dẫn cách ghost và bung ghost qua mạng LAN (Theo mình thì có thể ghost qua đường truyền Internet! Mình chưa làm nhưng nhận thấy có thể làm được vì lúc đó ghost qua internet sẽ là sự kết hợp giữa bài này với truy cập file máy khác qua internet. Hẹn các bạn ở các bài kế tiếp sẽ hướng dẫn ghost qua mạng Internet tại vì cấu hình lúc đó khá nhiều và phức tạp).

Vấn đề là máy Client ban đầu chưa có hệ điều hành thì làm sao biết được máy nào đang share file ghost mà load về. Đến đây ta mới thấy được giá trị của đĩa boot Hiren. Trong boot Hiren có 1 số chương trình có thể cho ánh xạ thư mục share từ máy khác trên mạng thành 1 ổ đĩa trên máy mình từ môi trường DOS. Điều này tương tự như “map network drive” khi ta nhấp chuột phải vô file đã share vậy.

Cách thực hiện:

Trên Server:

Chỉ cần share thư mục dùng để chứa file ghost, nhớ để permission quyền Full Control.

Trên Client:

Dùng chương trình sau trong đĩa boot Hiren

Ta có thể ghost từ máy dùng IP tự cấu hình hoặc dùng DHCP. Ví dụ ở đây mình cấu hình địa chỉ IP card mạng của Client

Nhấn ESC để tiếp tục, đợi một chút có hộp thoại hiện ra hỏi có load Driver CD không, bạn chọn YES.

Sau khi có dấu nhắc hiện ra, bạn gỏ lệnh:

net use <tên ổ đĩa cần map> <đường dẫn UNC đến thư mục share>

Trong đó:

Tên ổ đĩa cần map: là 1 kí tự ổ đĩa bất kì không trùng với các partition trong máy.

Đường dẫn UNC đến thư mục share: ví dụ trên máy Server tên juniper, bạn share một thư mục có tên là thunghiem thì đường dẫn sẽ là \\juniper\thunghiem

Sau đó gỏ lệnh Ghost để vào chương trình Ghost rồi làm bình thường. Lúc này trên phần chọn ổ đĩa sẽ có thêm ổ X do ta mới map ở trên. Vậy là bạn đã truy xuất qua mạng từ môi trường DOS được rồi đó. Đến đây thì khỏi nói chắc bạn cũng biết làm thế nào rồi.

Chúc bạn thực hiện thành công!

Posted in System | Tagged: , , | Leave a Comment »

6 giai đoạn của một người học lập trình

Posted by mykn trên Tháng Năm 19, 2009

Để học bất cứ một ngôn ngữ lập trình nào những người mới bao giờ cũng phải trải qua 6 giai đoạn.

1. Quan niệm
2. Thử nghiệm
3. Trải nghiệm
4. Kiểm nghiệm
5. Chiêm nghiệm
6. Sáng tạo

Quan niệm
Hãy xác định nhiệm vụ học cho các bạn. Không có định hướng, không còn tầm nhìn bao quát về thế giới phần mềm và không có cá tính, bạn chắc rồi cũng rời bỏ sớm ngành phần mềm nếu không thì cũng chỉ là một coder hay tester ba phải, người mà lúc nào cũng chỉ được coi là một nhân vật bình thường về mọi mặt, không có sự nổi bật và luôn đứng đầu trong đề cử danh sách về hưu non.

Tiêu chuẩn số 1 của một nhà phát triển phần mềm giỏi là sự đề cao tự học. Trường lớp hay trung tâm không phải là nơi đáng tin cậy để học vì người giỏi ko bao giờ chịu mài đũng quần trên ghế bục giảng để giảng đi giảng lại một thứ kiến thức liên tục cũ đi sau vài tháng. Nếu người giỏi thích nói chuyện thì conference là chỗ của họ vì họ thích trao đổi với các industry expert chứ không phải là dọa dẫm học viên.

Diễn đàn này cũng có thể là nơi để học hỏi nhưng đừng nghĩ là người có hiểu biết sẽ trả lời bạn một cách tường tận và chi tiết như thể họ là ông nội của bạn vậy. Muốn họ trả lời hãy học cách hỏi, trước khi hỏi hãy search. Sau khi nhận được câu trả lời hãy search.

Thử nghiệm
PHP là một công nghệ bao gồm có 6 bộ phận:
+ Bộ thông dịch
+ Ngôn ngữ
+ Cấu trúc dữ liệu
+ Các thuật toán trên dữ liệu hay còn gọi là các API
+ Các công nghệ đi kèm hoặc có thể giao tiếp được với PHP.
+ Các best practice đặc thù của riêng công nghệ đó.

Hãy tập cài đặt bộ thông dịch PHP, Apache, MySQL và chạy triển khai các ứng dụng PHP có sẵn.
Hãy thử nghiệm ngôn ngữ PHP với các vòng lặp, điều kiện, in, nhúng HTML, làm quen function, method, class
Cấu trúc dữ liệu là một phần khác của PHP. Ở công nghệ này Hash, Array và Map đều được gộp vào kiểu array. Rất dễ chịu cho bạn khi bạn đã từng làm quen với các cấu trúc dữ liệu của C# hay Java.
Cấu trúc dữ liệu không phải là một cấu trúc chết. PHP cung cấp khoảng hơn 1000 function (API) xử lý nó. Array là một kiểu như vậy. DOM là một kiểu khác. Làm bài tập trên các API dạng này là một cách tốt để làm quen với ngôn ngữ và bộ thông dịch. Các bài tập có thể chỉ là in ra một cái resume, tạo một cái layout đơn giản nhất từ việc sử dụng include, tạo một form nhập liệu đơn giản, tạo một form upload đơn giản…

Tài liệu sách vở thì có rất nhiều. Bạn nên đọc các chương trong PHP Manual. Đọc các tutorial trên mạng và luyện tiếng Anh. Các ebook đáng chú ý:

++ Apress Beginning PHP and MySQL 5 From Novice to Professional 2nd Edition (2006)
++ Apress Beginning PHP and PostgreSQL E.Commerce (2006)
++ Prentice Hall PHP 5 Power Programming (2004)
++ O’reilly Programming PHP 2nd Edition (2006)

Các công nghệ đi kèm với PHP là một thế giới cực kì phức tạp. Bạn có thể sẽ làm quen với các công nghệ opcode hay biên dịch mã PHP ra mã nhị phân để chạy thay vì nhìn nó dưới dạng text. Nó là một extension nguồn mở của công nghệ PHP. Bạn cũng có thể quan tâm đến việc sử dụng PHP để giao tiếp với các hệ thống con trong Linux như shared memory, gettext, socket, stream… Socket và stream là các công cụ vạn năng để PHP giao tiếp với các hệ thống phần cứng và phần mềm. Bạn cũng có thể quan tâm đến sử dụng PHP và C trên cùng một file PHP thông thường hay nhúng mã dll của các thư viện trên Windows vào PHP và sử dụng lại. PHP làm việc này thông qua việc sử dụng một ext. mã nguồn mở do Wez viết có thể tải về PECL. Bạn cũng có thể quan tâm đến việc sử dụng PHP để viết các ứng dụng desktop mà bạn có lẽ vẫn dùng VB để viết bằng cách sử dụng thư viện GTK.

Tuy nhiên điều bạn có thể sẽ quan tâm hơn cả là liệu PHP được hỗ trợ như thế nào để giao tiếp với các hệ thống khác. PHP có thư viện để giao tiếp với Active Directory, LDAP, các hệ thống hỗ trợ SMTP/POP3/IMAP/FTP/SSL, SMS Gateway, GIS server, Router… PHP được Java hỗ trợ tốt để trở thành một công nghệ trên Java platform và nhờ đó bạn có thể gọi các gói Java để sử dụng lại hay sử dụng các application server của Java như Sun One Webserver, Glassfish application server thay cho Apache server hoặc sử dụng các dịch vụ Java khác như OpenSSO. JSON và XML được hỗ trợ buit-in trong PHP cũng là phần rất đáng tìm hiểu vì các nhà công nghiệp phần mềm ở các tổ chức chuẩn công nghiệp như OASIS, ECMA hay W3C sử dụng các gọi này để giúp PHP hỗ trợ kiến trúc Webservice/SOA, SDA, MDA (phần này do IBM đóng góp cho cộng đồng PHP)…..

Phần PHP giao tốt tốt nhất có lẽ là database. OCI do Oracle đóng góp, DB2 do IBM đóng góp, libmysql do MySQL AB đóng góp và pgsql do cộng đồng PostgreSQL đóng góp và luôn hỗ trợ các bản database mới nhất. Ngoài ra PHP có sẵn một database server SQLite nhúng đi kèm với mọi bản PHP 5.0+ có thể giúp bạn tiện trong việc xử lý các nhóm data nhỏ nhưng đủ mạnh mẽ như Access.

PHP là một công nghệ đặc biệt và nó có các đặc trưng riêng như share nothing. Điều này làm cho PHP có tính scalability rất tốt và được các mạng xã hội rất chuộng. Không phải ngẫu nhiên mà Tim Bray, giám đốc các công nghệ Web của Sun lại cho là PHP có tính scalable hơn Java trên tầng presentation (http://www.tbray.org/talks/php.de.pdf) trong khi từ trước đến nay họ vẫn tự hào là công nghệ Java cho họ thống trị thế giới web doanh nghiệp, các phần mềm ngân hàng và thị trường viễn thông, vượt trội cho với công nghệ .NET của Microsoft. Đặc điểm này của PHP cũng là tâm điểm tạo ra các best practice mà bạn cần khai thác khi lập trình với PHP.

Trải nghiệm
Là giai đoạn bạn bắt đầu quan tâm đến việc dùng PHP để code các ứng dụng sản xuất bằng việc tự tin sử dụng các API. Giai đoạn này hoàn toàn phù hợp với việc lấy một chứng chỉ Zend nếu bạn muốn. Tuy nhiên Zend chỉ chứng nhận bạn là có kĩ năng để nhớ API, một điều khá cần để code API với notepad Đặc trưng của giai đoạn này là thực hành để có các cảm nhận chung về kĩ năng code. Giai đoạn này sẽ đem lại cho bạn một niềm tự hào trẻ con nhưng rất cần thiết. Giai đoạn này bạn sẽ phải kết hợp PHP với CSS/XHTML, graphic design, SQL, web authoring, Javascript, web hosting, system scripting… Là một lập trình PHP, bạn tự biết mình phải đa tài hơn các lập trình viên ASP.NET, nơi tooling thống trị kĩ năng handcode, hơn Java, nơi mà kĩ năng viết business logic được chú trọng hơn

Kiểm nghiệm
Nếu như giai đoạn trải nghiệm là giai doạn code bung bét, bug tùm lum, bảo mật bằng không thì đây chính là lúc bạn quan tâm đến việc refactor lại code. Bạn có thể tạo ra nhiều function và class hơn trong một nỗ lực cố gắng làm cho chúng modular hơn. Bạn sẽ cố áp dụng các thư viện như PEAR hay Smarty, PHPSavant vào ứng dụng của bạn để làm cho cách code của bạn đi vào chiều hướng ổn định. Lúc này bạn đã thấy được sự cần thiết phải có một coding convention nhất quán ([url=http://pcdinh.googlepages.com/phpvietnamcodingstandards]Reference[/url). Bạn sẽ quan tâm đến bảo mật hơn. Giai đoạn này sẽ giúp bạn có một lối tư duy chín chắn hơn nhưng nhiều lo ngại hơn vì bạn cho rằng bạn vẫn chưa thực sự hiểu PHP.

Chiêm nghiệm
Đây là giai đoạn bạn đã tiến đến mức cao. Bạn đã nắm được bản chất của PHP. Bạn quan tâm đến cơ chế PHP vận hành ở mức compiler hơn. Bạn bắt đầu học UML, design pattern, tìm hiểu về các hệ thống lớn. Bạn đã vững vàng trong việc tạo ra các lớp và muốn tổ chức các lớp đó cho khoa học hơn. Bạn quan tâm đến các software engineering processes và tự hỏi làm sao để áp dụng XP, Scrum hay các agile methodology khác. Bạn sẽ quan tâm đến performance, object oriented engineering, database design, system architect, code review. Bạn sẽ bắt đầu chán Pear và ghét Smarty. Việc tương tác giữa PHP và các hệ thống khác như Python, Ruby, Jaav, Erlang .. trở nên quan trọng hơn với bạn lúc này vì cuối cùng thì bạn đã nhận ra PHP có nhiều điểm yếu nhưng không tới mức phải thay thế PHP bằng 1 giải pháp khác. Các công nghệ mã nguồn mở và tự do sử dụng phân phối như Java, Perl, Python, Ruby, JRuby, Groovy, Erlang, Lua… cho phép chúng tận dụng các thư viện của nhau cũng như các điểm mạnh riêng của nhau. Đó là thời gian bạn thấy sung sướng vì đã chọn 1 công nghệ nguồn mở như Java hay PHP hay Python.

Sáng tạo
Là giai đoạn cao nhất và cũng phức tạp nhất vì lúc này bạn đã hiểu công nghệ đến mức có thể triển khai các hệ thống lớn, customize và migrate các ứng dụng phức tạp. Có đủ tư duy và kiến trúc cũng như độ trải nghiệm thực tế để thiết kế hệ thống . Lúc này bạn đã có thể tự đặt cho mình mục tiêu làm các ứng dụng lớn với PHP kiểu như
+ Flickr: 60 000 LOC
+ Digg: 200 000 LOC
Bạn cũng có thể hoàn toàn tự tin dùng PHP để tạo ra các ứng dụng ERP, CRM, Forecast System vốn thường được code bằng Java, ASP.NET hay Delphi có truyền thống đắt đỏ, kén server, đòi hỏi nhiều tài nguyên. Lúc đó, PHP trong tay bạn đã vượt ra khỏi phạm vi của một công nghệ web vì bạn đã biết đủ PHP và mối quan hệ với các công nghệ bổ sung cũng như kinh nghiệm triển khai các công nghệ đó.

Bạn đột nhiên quan tâm nhiều đến các cuộc hội thảo. Bạn thấy kinh nghiệm của các industry expert thật cần thiết và gần gũi với khả năng của bạn. Có thể một lúc nào đó, bạn thấy mình gần như là một thought leader. Một lúc khác, bạn lại muốn nhập vai một C hacker.

Lúc này bạn đã lớn rồi. Ai dám khuyên bạn nữa chứ Cẩn thận, bạn có thể là một PHP Dictator đấy.

Tác giả: Phạm Công Định

Posted in Programmer-newbie | Tagged: , , , | Leave a Comment »

Hát karaoke trong Windows Media Player 10

Posted by mykn trên Tháng Tư 25, 2009

Khi sử dụng Windows Media Player hẳn bạn đã biết chức năng Lyrics giúp hiển thị lời bài hát. Tuy nhiên, WMP còn có thể hiển thị lời bài hát khớp với từng câu hát của ca sĩ nữa (giống như khi bạn hát karaoke vậy). Nếu bạn chưa cài Windows Media Player 10 thì hãy vào Website http://www.microsoft.com/windows/ windowsmedia/mp10/default.aspx tải miễn phí về sử dụng.

– Sau khi tải về và tiến hành cài đặt, bạn mở chương trình Windows Media Player 10 ra, vào menu Play > Captions and Subtitles > On if Available. Tiếp theo, mở bài hát muốn hiển thị lời, nhấp chuột phải vào tên bài hát trong Playlist, chọn Advanced Tag Editor. Trong hộp thoại xuất hiện, chọn tab Lyrics > nhấp chuột vào biểu tượng Synchronized Lyrics để bắt đầu soạn lời bài hát và cho chạy chữ.

– Trong hộp thoại Synchronized Lyrics, bạn nhấn nút Add (ở trên), tại Languages chọn Vietnamese [vi], Content type chọn Lyrics. Nhấn nút Add (ở dưới) để bắt đầu soạn thảo lời bài hát và hiệu chỉnh thời gian xuất hiện chữ. Khi nghe nhạc, bạn chú ý đến khoảng cách giữa các đoạn trong bài hát để khi chèn lời và hiệu chỉnh thời gian chính xác với từng câu hát của bài hát. Mỗi lần muốn chỉnh sửa, bạn nhấn vào nút Edit rồi tiến hành chỉnh sửa. Khi đã hoàn tất, bạn nhấn OK hai lần quay trở lại giao diện chính để bắt đầu thưởng thức.

Posted in Multimedia | Tagged: , , , | Leave a Comment »

Hello world!

Posted by mykn trên Tháng Tư 25, 2009

Welcome to WordPress.com. This is your first post. Edit or delete it and start blogging!

Posted in Computer | 1 Comment »