Skip to content
Tháng Mười Hai 5, 2010 / anhhnt

Crossover office – Office 2007 trên ubuntu

 

Crossover là bộ phần mềm của codeweaver, có chức năng tương tự như wine, nhưng khác nhau ở chỗ bộ này hỗ trợ tốt hơn cho các sản phẩm của Microsoft, và để sở hữu được codeweaver, bạn phải bỏ tiền ra ( từ  35 tới 70$ cho 1 sản phẩm). Bộ sản phẩm này gồm có :

– Crossover office linux

– Crossover game linux

– Crossover office mac

– Crossover game mac

Mỗi phần mềm sẽ hỗ trợ 1 số lượng nhất định các phần mềm, các phần mềm không được hỗ trợ có thể cài và chạy được hoặc không tùy vào may mắn.

Như đã nói trên, để có được những phần mềm này cần bỏ ra 1 số tiền, tuy nhiên, do may mắn tôi đã có được bộ cài đăt crossover office 9.0 cho linux, pre-compile cho debian. Với gói này, việc cài đặt hết sức đơn giản và dễ dàng. Sau khi cài đặt, bạn có thể cài các bộ office của MS tùy thích, và có thể quên đi Open office.

Đã test trên Ubuntu 10.10

Nếu bạn nào vẫn giữ triết lý “free software” và ” no pirate software ” thì có thể bỏ qua phần mềm này

Link download:

http://www.mediafire.com/download.php?vynkkxiz87fz842

Advertisements
Tháng Mười Một 9, 2010 / anhhnt

Windows live Writer: viết blog cực cool

Hot smile Hot smile Hot smile Hot smile

image

Chắc hẳn các bạn đọc bài này đã không ít hơn 1 lần viết blog. Blog thì đủ kiểu, yahoo, blogspot, wordpress …. Nhưng nói chung thì mấy cái WYSIWYG chạy trên nền HTML không thể đáp ứng nổi cái nhu cầu về tốc độ xử lý và nhiều điểm khác. Bạn ước gì có 1 công cụ viết blog giống như là soạn văn bản trên MS Word vây.

Tình cờ tôi phát hiện ra công cụ này, và có đôi chút thay đổi suy nghĩ về các công cụ của MS.

Windows Live Writer.

Đây là công cụ dùng để viết và đăng blog lên, hỗ trợ rất nhiều các trang blog khác nhau.

image

Tất cả mọi việc phải làm là khai báo blog của bạn, nhập user name và password vào để WLW quản lý giúp bạn.

Mỗi khi cần tạo entry mới, chỉ ấn ấn New (Ctrl+N), một trang mới sẽ mở ra.

Ngoài ra, WLW còn giúp bạn insert hình ảnh, emoticon dễ dàng.

Để có công cụ này, bạn phải có windows 7.

Start menu, gõ vào ô tìm kiếm “Windows live”, nếu gói windows live đã được cài trong máy bạn, thì bạn sẽ thấy ngay windows live writer. Nếu không, sẽ có hướng dẫn step by step giúp bạn tải về và cài gói Windows Live vào máy bạn. Đơn giản hơn, có thể vào link này

http://explore.live.com/windows-live-essentials?os=other

Để tải bản cài đặt Windows Live.

Nếu bạn là 1 blogger, hãy bắt tay vào thử đi nào.

Enjoy!. Chúng may mắn và thành công

Tháng Mười Một 8, 2010 / anhhnt

[Mobifone] SMS thông báo khi có email

sms-0

Một dịch vụ giá trị gia tăng mới của mobifone sao?

Ồ không phảiSmile with tongue out, đây chỉ là 1 mẹo nhỏ, giúp các bạn tiết kiệm thời gian check mail. Nó gần giống như công nghệ Push email. Chỉ khác là SMS thông báo cho bạn biết về thông tin người gửi, subject, còn Push email chuyển nguyên vẹn bức thư đến điện thoại của bạn. Và dĩ nhiên điểm khác nhau cơ bản là : Muốn dùng push email, bạn phải trả tiền cho nhà mạng, không ít thì nhiều, không cách này hay cách khác. Còn với mẹo này -  hoàn toàn miễn phí. Và nếu như điện thoại của bạn có không hỗ trợ Push email ( các dòng điện thoại tính năng thấp ), thì SMS vẫn làm việc, và bạn vẫn có thông báo khi có email tới.

Để sử dụng tính năng này, bạn cần phải có :

1. Điện thoại di động – loại nào cũng được, miễn là hỗ trợ SMS (99.9%)

2. Sim thuê bao Mobifone còn hoạt động ít nhất 1 chiều

3. 1 mail box  mà bạn dùng để nhận mail ( tốt nhất là gmail)

Để làm điều này, bạn phải tạo 1 tài khoản trên mobifone portal

http://www.mobifone.com.vn/web/vn/users/activePin.jsp

Với hướng dẫn tiếng Việt của mobifone, khá dễ dàng để có 1 tài khoản.

Bạn login vào với số điện thoại tương ứng.

Vào menu Tiện ích online –> Thư điện tử.

Đây chính là hộp thư tương ứng với số điện thoại của bạn.

Vào mục Thiết lập. Ấn vào ô Email alert.

Tick vào dấu “ Nhận tin nhắn khi có email mới”. Bên dưới là các bộ lọc tương ứng để lọc email. Nếu bạn không cần có thể bỏ qua bước này.

Ấn lưu và thoát ra. Bạn cũng có thể dạo 1 vòng để xem qua các tính năng trong mail box của mobifone.

Vào email của bạn, tìm tới mục setting –> Forwarding. Ở mục này, bạn thiết lập sao cho khi có email tới thì nó sẽ forward 1 bản vào hộp mail: <số điện thoại của bạn >@mobifone.com

Như vậy, mỗi khi bạn nhận được mail, có 1 bản được forward tới mail box của mobifone và mobifone sẽ thông báo cho bạn bằng SMS

Sau vài tháng (có khi vài năm) hộp mail của mobifone sẽ đầy, khi đó bạn cần empty để tiếp tục nhận được mail mới.

Như vậy, bạn đã làm chủ được công nghệ SMS alert. Rất tiện dụng và hoàn toàn miễn phí.

Chúc thành côngWinking smile

Tháng Mười Một 8, 2010 / anhhnt

Đưa vào hoạt động trang chia sẻ ebook: http://tinyurl.com/online-ebook

ebook

 

Trang được thiết kế đơn giản bằng Google spreadsheet, các bạn muốn tìm ebook nào, có thể vào menu Edit –> Find and Replace và tìm theo tên, tác giả, nhà xuất bản, năm xuất bản, ISBN mà mình muốn.

File tải về từ host mediafire.com có thể là file gốc, file nén, file bất kỳ nào đó, có hoặc không có password

– nếu là file rar. bạn giải nén bình thường, nếu có password thì sẽ là anhhnt

– Nếu là file ra_, bạn đổi thành rar và làm như bước trên

 

Địa chỉ : http://tinyurl.com/online-ebook . Sách sẽ được cập nhật thường xuyên

Tháng Chín 8, 2010 / anhhnt

[Ebook]Cryptography and Network Security Principles and Practices, 4th Ed – William Stallings

Cryptography and Network Security Principles and Practices, 4th Ed – William Stallings

1 quyển sách rất hay cho những người mới bước vào lĩnh vực hệ thống mạng và bảo mật

Sách số hoàn toàn, không phải scan

Link megashare

http://share.megaplus.vn/dl.php/2326201

Tháng Chín 8, 2010 / anhhnt

[Ebook] :PIC Microcontroller – An Introduction to Software and Hardware Interfacing

Rất cần thiết cho những ai đang học về PIC 18F

Sách scan, nhưng rất rõ ràng, và text có thể copy được.

Link download:

Megashare:

http://megashare.vn/dl.php/2326107

Mega 1280

http://mega.1280.com/file/QRG9JIH1AG/

Mediafire:

http://www.mediafire.com/?fqohoeipnzk9fg4

Tháng Bảy 15, 2010 / anhhnt

Xác định và chuyển hướng người dùng di động duyệt web

Trong 1 lần giải quyết vấn đề duyệt web di động cho website http://buonmathuot.biz. Mình tình cờ phát hiện được kĩ thuật này, nhận thấy đây là 1 kỹ thuật đơn giản nhưng khá hữu dụng, nên đăng lên đây giới thiệu lại

Nguồn :http://nhanweb.com/2010/05/mobile-detect-thiet-bi-di-dong-duyet-web/

Thiết bị di động ngày càng phổ biến, Internet không còn là độc quyền của PC và các trình duyệt web trên PC nữa mà đã trở nên dễ dàng hơn bao giờ hết với các trình duyệt web di động. Bài viết này, NhanWeb chia sẻ với các bạn cách lập trình xác định thiết bị đầu cuối (thiết bị duyệt web) để tìm kiếm phiên bản thích hợp cho thiết bị này.

1 Vấn đề của các forum hiện nay là ngày càng nhiều người muốn theo dõi tin tức liên tục, ngay cả khi họ không ngồi trước máy tính. Các thiết bị di động ngày nay hỗ trợ đầy đủ HTML, WAP, các phương thức kết nối 3G, GPRS, wifi, nhưng  vấn đề là 1 số thiết bị có bộ nhớ hoặc màn hình quá nhỏ, không hỗ trợ trình bày 1 nội dung HTML quá lớn, hoặc browser không hỗ trợ ajax, javascript, khiến nội dung không thể hiện chính xác. Vì vậy, quản trị cần đưa ra 2 phiên bản cho website của mình, 1 phiên bản dành cho di động, và 1 phiên bản cho PC. Trang web của mình hiện có 2 phiên bản là :

http://mobi.buonmathuot.biz : dành cho di động

http://buonmathuot.biz : phiên bản thông thường cho pc

Tuy nhiên, cần phải phát hiện khi nào người dùng di động và dùng PC, đó là vấn đề chính của article này.

Đây là mã PHP cho ý tưởng trên:

<?
 
//****************************************************************************************
// Vui long khong xoa dong nay
// Xac dinh thiet bi di dong va PC
// Author: Nguyen Duy Nhan
// Website: wwww.nhanweb.com - www.vnwebmaster.com
// Email: contact@vnwebmaster.com
//****************************************************************************************/
 
 
//Configuration
global $userBrowser;
global $userAccept;
 
 
//Mang xac dinh cac thiet bi di dong
$mobiidentity = array('wapbrowser','up.browser','up/4','mib','cellphone','go.web',
                     'nokia','panasonic','wap','wml-browser','wml','samsung'
                     );
 
//Mang xac dinh trinh duyet web thong thuong
$pcidentity = array(
		'mozilla','gecko','opera','omniweb','msie','konqueror','safari',
		'netpositive' ,'lynx' ,'elinks' ,'links' ,'w3m' ,'webtv' ,'amaya' ,
		'dillo' ,'ibrowse' ,'icab' ,'crazy browser' ,'internet explorer' 
		);
 
$pspidentity= array('PlayStation Portable');
$iPhoneidentity= array('iphone');
 
 
$linkformobile = "http://mobi.buonmathuot.biz";
$linkforweb = "http://buonmathuot.biz";
 
// chuyen AGENT ve lower case
$userBrowser = strtolower($_SERVER['HTTP_USER_AGENT']); 
// chuyen HTTP_ACCEPT ve lower case
$userAccept= strtolower($_SERVER['HTTP_ACCEPT']);
 
 
if (stristr($userAccept,'wml')) {
	$driver = "WML";	
}else{
	//check cho thiet bi di dong thong thuong
	if(check_identity($userBrowser, $mobiidentity))
		$driver = "WML";
	elseif(check_identity($userBrowser, $pcidentity))
		$driver = "PC";
	elseif(check_identity($userBrowser, $pspidentity))
		$driver = "WML";// Co the define lai 1 gia tri khac de sau nay xu ly
	elseif(check_identity($userBrowser, $iPhoneidentity))
		$driver = "WML";// Co the define lai 1 gia tri khac de sau nay xu ly
	else //Khong tim thay thi mac dinh la thiet bi di dong luon ^_^
		$driver = "WML";
}
 
//Ok ! Sau khi xac dinh thiet bi xong roi thi redirect ve cho thich hop cua no
 
switch ($driver){
  case 'PC':
    header("Location: ".$linkforweb);
    exit;
  case 'WML':
    header("Location: ".$linkformobile);
  exit;
  }
 
 
function check_identity($userBrowser, $identity){
	foreach($identity as $value){
		if(stristr($userBrowser, $value)){
			//Tim thay browser
			return true;
		}
	}
	//Khong tim thay
	return false;
}
?>

Lý giải một tí

Trong đoạn code trên chúng ta sẽ dựa vào 2 giá trị được server trả về là HTTP_USER_AGENT và HTTP_ACCEPT để tìm hiểu browser mà người dùng duyệt web. Qua đó, xác định được các browser nào là browser giành cho di động cũng như loại browser của nó. Dựa vào đó, chuyển hướng đến trang thích hợp (hoặc bạn có thể làm gì cũng được sau khi xác định được loại thiết bị đúng không ?)

Trong đoạn code trên, mình check tổng cộng 4 loại thiết bị bao gồm Mobile, Computer, Play Station, Iphone. Nếu bạn không thích check cái nào thì bỏ bớt nếu thích.

Hàm check_identity() được sử dụng để tìm kiếm trong chuỗi $_SERVER[‘HTTP_USER_AGENT’] các giá trị được nói đến trong mảng từ khóa giúp xác định thiết bị. Nếu từ khóa tồn tại trong chuỗi này thì thiết bị được định dạng tương ứng là thiết bị thuộc loại đó. Mảng từ khóa này các bạn có thể bổ sung tùy ý.

Phần còn lại chắc không cần phải giải thích nữa


<?
 
//****************************************************************************************
// Vui long khong xoa dong nay
// Xac dinh thiet bi di dong va PC
// Author: Nguyen Duy Nhan
// Website: wwww.nhanweb.com - www.vnwebmaster.com
// Email: contact@vnwebmaster.com
//****************************************************************************************/
 
 
//Configuration
global $userBrowser;
global $userAccept;
 
 
//Mang xac dinh cac thiet bi di dong
$mobiidentity = array('wapbrowser','up.browser','up/4','mib','cellphone','go.web',
                     'nokia','panasonic','wap','wml-browser','wml','samsung'
                     );
 
//Mang xac dinh trinh duyet web thong thuong
$pcidentity = array(
		'mozilla','gecko','opera','omniweb','msie','konqueror','safari',
		'netpositive' ,'lynx' ,'elinks' ,'links' ,'w3m' ,'webtv' ,'amaya' ,
		'dillo' ,'ibrowse' ,'icab' ,'crazy browser' ,'internet explorer' 
		);
 
$pspidentity= array('PlayStation Portable');
$iPhoneidentity= array('iphone');
 
 
$linkformobile = "http://mobi.timviecnhanh.com";
$linkforweb = "http://timviecnhanh.com";
 
// chuyen AGENT ve lower case
$userBrowser = strtolower($_SERVER['HTTP_USER_AGENT']); 
// chuyen HTTP_ACCEPT ve lower case
$userAccept= strtolower($_SERVER['HTTP_ACCEPT']);
 
 
if (stristr($userAccept,'wml')) {
	$driver = "WML";	
}else{
	//check cho thiet bi di dong thong thuong
	if(check_identity($userBrowser, $mobiidentity))
		$driver = "WML";
	elseif(check_identity($userBrowser, $pcidentity))
		$driver = "PC";
	elseif(check_identity($userBrowser, $pspidentity))
		$driver = "WML";// Co the define lai 1 gia tri khac de sau nay xu ly
	elseif(check_identity($userBrowser, $iPhoneidentity))
		$driver = "WML";// Co the define lai 1 gia tri khac de sau nay xu ly
	else //Khong tim thay thi mac dinh la thiet bi di dong luon ^_^
		$driver = "WML";
}
 
//Ok ! Sau khi xac dinh thiet bi xong roi thi redirect ve cho thich hop cua no
 
switch ($driver){
  case 'PC':
    header("Location: ".$linkforweb);
    exit;
  case 'WML':
    header("Location: ".$linkformobile);
  exit;
  }
 
 
function check_identity($userBrowser, $identity){
	foreach($identity as $value){
		if(stristr($userBrowser, $value)){
			//Tim thay browser
			return true;
		}
	}
	//Khong tim thay
	return false;
}
?>