VicoTas
Câu hỏi
Uk uklight
26/04/2013 21:36

Làm gì để chương trình con nhận giá trị của biến?

Trong Visual Foxpro, làm thế nào để các chương trình con có thể nhận giá trị của biến được khai báo ngay khi đăng nhập vào chương trình chính?

Tôi có viết một phần mềm phục vụ công tác bằng VFP6 và đặt toàn bộ trong thư mục "...\\GmPro\\*.*" trên USB 2.0 . Khi gắn USB vào CPU của tôi thì USB được nhận là ổ đĩa và do đó các file của chương trình được truy xuất theo đường dẫn là "G\\GmPro\\*.*" .

Vấn đề đặt ra : Khi gắn USB vào các CPU khác (có cài VFP6) thì USB có thể nhận tên là ổ đĩa khác (ví dụ : E/ F /K /...) . Lúc đó chương trình chạy đương nhiên sẽ gặp lỗi (vì nó không tìm thấy files cần thiết trên ).

Tôi có ý định khắc phục bằng cách : Ngay từ khi đăng nhập chương trình , chương trình chính có nhiệm vụ phát hiện tên ổ đĩa có chương trình chính đang chạy (Dùng hàm SYS(16,0) để phát hiện tên thủ tục đang chạy =>Suy ra ổ đĩa hiện hành) và ghi vào biến có tê ;n là 'SysPath' . Việc truy xuất files trong các chương trình con sau này được thực hiện thông qua biến 'SysPath'.

Ý định này tôi đã thực hiện thành công hoàn toàn đối với Foxpro for window (theo đó biến khai báo trong chương trình CHA thì tiếp tục tồn tại có thể sử dụng trong các chương trình CON, CHÁU, CHẮT... )
Tuy nhiên, đối với VFP6 thì các chương trình được gọi (con) không nhận ra biến đã được đã khai báo trong chương trình chính (cha) ? Lỗi do đâu? cách làm để có thể thực hiện được ý tưởng trên như thế nào?

Rất mong được các bậc tiền bối chỉ giáo!

Danh sách câu trả lời (1)
avatar ZiMaNo1 26/04/2013 21:36
Nếu VFP không hỗ trợ truyền giá trị của biến từ chương trình mẹ đến chương trình con thì bạn có thể sử dụng một cách rất "nông dân" mà tôi vẫn thường làm:

Sau khi sử dụng chương trình mẹ sử dụng hàm hệ thống để lấy giá trị của biến Syspath mà bạn cần, bạn hãy sử dụng thêm một thủ tục ghi cái biến đó ra đĩa cứng (vào folder phổ thông nào đó mà máy nào cũng phải có, ví dụ như C:\ hay System32 chẳng hạn...) rồi chương trình con có nhiệm vụ load cái file đó để lấy giá trị biến... thế là OK?
Trả lời câu hỏi
Tải lại mã
Câu hỏi lĩnh vực Lập trình
NgocUk Lập trình web bị lỗi?

Đăng lúc: 21:36 - 26/04/2013 trong Lập trình

NgocUk Tạo đồng hồ đếm ngược bằng Visual Basic?

Đăng lúc: 21:36 - 26/04/2013 trong Lập trình

Vinh Trong Visual C++ 6.0 làm thế nào hiển thị được tiếng Việt trong các menu và dialog tự tạo?

Đăng lúc: 21:36 - 26/04/2013 trong Lập trình

lighting Giúp mình mã giả kiểm tra số nguyên tố?

Đăng lúc: 21:36 - 26/04/2013 trong Lập trình

Đức Vân Giúp mình lập chương trình này với?

Đăng lúc: 21:36 - 26/04/2013 trong Lập trình

NgocUk Ai giúp mình học Pascal 7.0 với?

Đăng lúc: 21:36 - 26/04/2013 trong Lập trình

Hin Cho em hỏi các bác ai biết lập trình tìm số hoàn hảo. Chỉ dùm em với?

Đăng lúc: 21:36 - 26/04/2013 trong Lập trình

Củ Chuối Cố định layout khi tràn Text ?

Đăng lúc: 21:36 - 26/04/2013 trong Lập trình

Vinh Anh chị 3C làm ơn cho em hỏi về cách tạo file PDF tiếng việt với PHP với được không ạ?

Đăng lúc: 21:36 - 26/04/2013 trong Lập trình

NgocUk Làm ơn chỉ cho em cách cài đặt UML Linux với được không?

Đăng lúc: 21:36 - 26/04/2013 trong Lập trình

lighting Các anh chị làm ơn có thể hướng dẫn em cách tạo đĩa tự cài đặt Windown XP với được không ạ? Em xin cảm ơn.

Đăng lúc: 21:35 - 26/04/2013 trong Lập trình

Nguyễn Văn Siêu Bài tập Pascal giải giúp mình với . Gấp Gấp

Đăng lúc: 21:35 - 26/04/2013 trong Lập trình

Đức Vân Hiện dung lượng và tốc độ khi upload dữ liệu?

Đăng lúc: 21:35 - 26/04/2013 trong Lập trình

Lê Thị Hoa Hồng Giải hộ tớ bài lập trình này với các bạn ơi

Đăng lúc: 21:35 - 26/04/2013 trong Lập trình

vietnamconnection Nhập vào một mảng n số nguyên tìm số min

Đăng lúc: 21:35 - 26/04/2013 trong Lập trình

Vinh Bác nào từng lắp đặt Patch Panel chỉ em một cái. Chi tiết càng tốt. Em đọc hướng dẫn cứ rối tinh lên?

Đăng lúc: 21:35 - 26/04/2013 trong Lập trình

nophoto Tại sao lại gọi là "lập trình đồ họa"?

Đăng lúc: 21:35 - 26/04/2013 trong Lập trình

Link Trong mạng LAN thì làm sao để tạo được một thông báo đến các máy tính? không sử dụng chat.

Đăng lúc: 21:35 - 26/04/2013 trong Lập trình

Hương nLite là phần mềm gì vậy ạ ??

Đăng lúc: 17:22 - 26/06/2013 trong Lập trình

nophoto Giúp em làm 1 trang web cá nhân?

Đăng lúc: 21:35 - 26/04/2013 trong Lập trình

Rao vặt Siêu Vip