|
|
|
Mã hóa cơ
sở dữ liệu Visual Foxpro |
|
Đó hỏi: Xin e-CHÍP vui lòng mách giúp tôi cách
mã hóa bảng trong CSDL Visual Foxpro 6.0 (dạng BDF),
sao cho tập tin CSDL sau khi mã hóa chỉ có thể đọc
được bởi chính chương trình viết bằng Visual Foxpro.
Xin chân thành cảm ơn. |
|
<ngocthien@> |
|
Đây
trả lời: Bạn
phải biết một thuật toán mã hóa và giải mã dữ liệu
để từ đó dùng mã lệnh Visual Foxpro áp dụng cho ứng
dụng của mình. Sau đó, tùy mong muốn của bạn mà
chọn: mã hóa từng field hay mã hóa toàn bộ tập tin
.DBF.
Đoạn mã 1 trình bày hàm Cipher(<Chuỗi>, <Khóa>) dùng
để vừa mã hóa vừa giải mã một chuỗi ký tự. Tham số
đầu tiên bắt buộc phải có, là chuỗi ký tự cần mã
hóa, nếu bạn cần mã hóa một field kiểu dữ liệu
Numeric, thì phải chuyển thành Character trước khi
mã hóa, sau đó khi giải mã phải chuyển đổi kết quả
thành Numeric.
Ví dụ: Để mã hóa chuỗi: a = "chuong can chip", bạn
có thể dùng lệnh: a = Cipher(a, 1234). Sau đó, để
giải mã, bạn có thể cũng dùng lệnh như vậy: a =
Cipher(a, 1234). Con số 1234 trong ví dụ vừa nêu gọi
là khóa, bạn có thể dùng con số bất kỳ, nhưng phải
giống nhau lúc mã hóa và lúc giải mã.
Đoạn mã 2 trình bày hàm dùng để mã hóa (bằng cách sử
dụng hàm Cipher) các field kiểu Character và Memo
của một file .DBF đang mở. Tham số của hàm là bí
danh của vùng làm việc đang mở tập tin cần mã hóa.
Ví dụ:
USE NhanVien
=Cipher("NhanVien")
USE
Nếu muốn mã hóa toàn bộ tập tin để Visual Foxpro
không hiểu đó là tập tin .DBF nữa, thì phải viết
thêm hàm nữa. Bạn nên thử các đoạn mã 1 và 2 cho kỹ
trước khi sáng tạo theo nhu cầu của mình nhé. |
|
Đoạn
mã 1
FUNCTION Cipher
PARAMETER Txt, Rvalue, A, B
PUBLIC R && As Long
PUBLIC M && As Long
PUBLIC N && As Long
STORE 0 TO R, M, N
* Khoang bien thien cua cac so gia-ngau-nhien (luy
thua cua 2)
BigNum = 32768 && As Long
PRIVATE i, c, d
* So ngau nhien khoi dau (tuy chon)
IF TYPE('Rvalue') = 'N' && IsMissing(RValue)=False
R = Rvalue
ENDIF
* Tri khoi dau cho so nhan (tuy chon)
IF TYPE('A') = 'N' && IsMissing(A) = False
M = MOD((A * 4 + 1), BigNum)
ELSE
IF M = 0
M = 69
ENDIF
ENDIF
* Tri khoi dau cho so cong them (tuy chon)
IF TYPE('B') = 'N' && IsMissing(B) = False
N = MOD((B * 2 + 1), BigNum)
ELSE
IF N = 0
N = 47
ENDIF
ENDIF
* Xu ly chuoi
FOR i = 1 TO LEN(Txt)
c = ASC(SUBSTR(Txt, i, 1))
* Chi ma hoa cac ky tu in duoc. Cac ky tu dac biet:
!#$%&*(),... khong duoc ma hoa
DO CASE
CASE BETWEEN(c, 48, 57)
d = c - 48
CASE BETWEEN(c, 63, 90)
d = c - 53
CASE BETWEEN(c, 97, 122)
d = c - 59
OTHERWISE
d = -1
ENDCASE
* San sang ma hoa mot ky tu
IF d >= 0
* Ket sinh so gia-ngau-nhien ke tiep
R = MOD((R * M + N), BigNum)
* XOR ky tu can ma hoa voi cac bit cua so
gia-ngau-nhien
d = BITXOR(BITAND(R, 63), d)
* Dat ky tu tro lai trong khoang ky tu in duoc
DO CASE
CASE BETWEEN(d, 0, 9)
c = d + 48
CASE BETWEEN(d, 10, 37)
c = d + 53
CASE BETWEEN(d, 38, 63)
c = d + 59
ENDCASE
* Thay the ky tu dzin bang ket qua tinh duoc
IF AT("Visual FoxPro 05", VERS()) > 0 && VFP5.0
* Tren VFP5.0 co the dung ham STUFFC de su dung cac
chuoi chua ky tu 2-byte
Txt = STUFFC(Txt, i, 1, CHR(c))
ELSE
Txt = STUFF(Txt, i, 1, CHR(c)) && Tren VFP3.0 chi co
the dung ham STUFF
ENDIF
ENDIF
ENDFOR
RETURN Txt |
Đoạn mã 2
FUNCTION cDBFCipher
PARAMETERS cAliasName
LOCAL I, cTemp
IF NOT USED(cAliasName)
=MESSAGEBOX("Alias "+cAliasName+" not found")
RETURN .F.
ENDIF
SELE &cAliasName
FOR I=1 TO FCOUNT()
IF TYPE(FIELD(I)) $ "CM"
cTemp = FIELD(I)
REPLACE ALL &cTemp WITH Cipher(&cTemp) FOR NOT
DELETED()
ENDIF
ENDFOR
RETURN .T. |
|
CHƯƠNG CAN CHÍP |
|
Tạo liên
kết để download file |
|
Đó hỏi: Khi tôi vào trang Web và nhấp vào chữ
download thì sẽ xuất hiện 1 file để mình download
về. Cho tôi hỏi vậy họ post bằng cách nào để chữ
download nổi lên và nhâp vào có thể download được? |
|
<th5lehoangtuananh@> |
|
 |
|
Đây
trả lời: Việc
tạo liên kết (link) để tải (download) file rất đơn
giản, bạn chỉ cần dùng thẻ <A> với thuộc tính HREF
như thí dụ dưới đây.
<a title="Bam vao day de tai file"
href="../Softwares/2006/RongVang.rar">Download</a>
Trong đó: -
href="http://www.echip.com.vn/echiproot/Softwares/2006/RongVang.rar"
chỉ định đường dẫn (địa chỉ) đến file liên kết. -
Chữ Download (hay bất kỳ chữ nào) nằm giữa <<a
href="..”> và </A> sẽ hiển thị trong trang Web để
người xem bấm chuột vào khi muốn tải file
RongVang.rar. – Dòng văn bản giữa 2 dấu “ trong
thuộc tính title=”...” là thông báo sẽ hiển thị khi
người xem đưa chuột lên chữ Download. |
|
Bỏ khai
báo Proxy server trong Firefox |
|
Đó hỏi: Em đang dùng Firefox 2.0 để duyệt Web.
Bây giờ khi mở trình duyệt thì luôn luôn hiện thông
báo:
# Check the proxy settings to make sure that they
are correct.
# Contact your network administrator to make sure
the proxy server is working.
Do vậy, em không thể dùng Firefox để duyệt Web được.
Kính mong e-CHÍP hướng dẫn em cách
khắc phục. |
|
<drlavanphu@> |
|
 |
|
Đây
trả lời: Hiện
tượng này xuất hiện do bạn đã xác lập Proxy server
sai. Muốn khắc phục, bạn chạy Firefox > mở menu
Tools/ Options > Trong hộp thoại Options, chọn phần
Advanced > chọn bảng Network và bấm nút Settings
trong mục Connection > Chọn mục Direct connection to
the Internet để bỏ khai báo về Proxy server. |
|
Thiết lập
cách hiển thị mặc định của Folder trong Explorer |
|
Đó hỏi: Xin hỏi cách thiết lập để mỗi khi vào 1
folder của Windows XP thì các file và folder đều
hiện ở dạng view > list (khỏi phải chỉnh lại)? |
|
<thanhvictoriakyo@> |
|
 |
|
Đây
trả lời: Để xác
lập cho Windows luôn hiển thị Folder/File theo dạng
View bất kỳ, bạn chạy Windows Explorer > mở menu
View và chọn dạng hiển thị > mở menu Tools/ Folder
Options > chọn bảng View, bấm nút Apply to All
Folders (muốn phục hồi như cũ thì bấm nút Reset All
Folders). |
|
Ghost 11
hỗ trợ Vista và Windows 64 bit |
|
Đó hỏi: Tôi nghe nói đã có Symantec Ghost 11
nhưng không biết đây là phiên bản nâng cấp của Ghost
8.3/2003 hay của Drive Image (Ghost 9/10) và Norton
Save And Restore (Ghost 11). Xin e-CHÍP giải thích
và chỉ chỗ download. |
|
<nghoang@> |
|
 |
|
Đây
trả lời:
Cuối năm 2006,
hãng Symantec phát hành bộ phần mềm Symantec Ghost
Solution Suite 2.0 (http://www.symantec.com/enterprise/products/overview.jsp?pcid=1025&pvid=865_1)
hỗ trợ Vista và Windows 64 bit. Bộ phần mềm này bao
gồm Symantec DeployCenter và Symantec Ghost 11 là
bản nâng cấp và tương thích ngược với Ghost 8/2003.
Ghost 11 hỗ trợ Windows Vista/XP/2000/NT/Me/98,
Linux, OS/2; hỗ trợ mạng và ổ cứng có GUID Partition
Table (GPT); cho phép chỉnh sửa các file ảnh hệ
thống FAT/NTFS/Linux bằng Ghost Explorer; chỉnh sửa
Windows registry từ DOS hay WinPE bằng công cụ
GhRegEdt và GhRegEdit32.
Bạn có thể tải trọn bộ Symantec Ghost Solution Suite
2.0 (300MB) tại địa chỉ
http://tinyurl.com/2765q2 hay tải bộ rút gọn
Norton Ghost v11.0.0.1502 (chỉ có 4 file Ghost.exe,
Ghost32.exe, Ghostexp.exe, GhostSrv.exe – 9MB) tại
địa chỉ
http://tinyurl.com/2p8vmo. |
|
LÊ HOÀN |
|
[Đầu trang] |
|
|
|