PDA

View Full Version : Help me tí xíu về VC++...



Asker
12-09-2002, 22:14
Bởi vì chưa cài MSDN, nên tớ muốn hỏi các cậu 1 chút:

1. Cách sử dụng hàm ShellExecute ( hàm này có 6 đối) để mở 1 file ( có thể mở theo đường dẫn) hoặc chạy 1 trình ứng dụng như thế nào?

Hàm CreateProces và WinExec có mở file được ko hay chỉ chạy ứng dụng trong máy thôi?

2. Khi tớ viết lệnh tạo ra 1 file ( chỉ có tên, ko có đường dẫn, viết bằng lệnh của C++ thuần tuý dạng ofstream f("tênfile.*") ) thì khi chạy, file đó sẽ được tạo ra tại thư mục chứa file chạy *.exe của chương trình.
Làm thế nào để tạo ra 1 file tại một đường dẫn theo ý mình ( VD: C:\MyFolder\filename) nếu dùng lệnh của C++?

Cám ơn.

bpmtri
13-09-2002, 17:47
1. Cách sử dụng hàm ShellExecute: (nếu hỏng làm được, xin gừi mail cho tui bpmtri@yahoo.com)

- Để mở một file: (lưu ý là Windows sẽ dùng chương trình tương ứng với phần mở rộng của file bạn mở, VD .doc -> Word)

( handle là HWND của cửa sổ cha)

HINSTANCE rs = ShellExecute(handle, "open", "C:\\test\\filename.txt", NULL, NULL, SW_SHOWNORMAL);

-Để chạy một trình ứng dụng: (VD : C:\test\filename.exe và đặt thư mục hiện hành là c:\test)

HINSTANCE rs = ShellExecute(handle, "open", "C:\\test\\filename.exe", "/a /b /c...", "C:\\test", SW_SHOWNORMAL);

rs > 32 nếu thành công.

Hai hàm CreateProcess và WinExec chủ yếu dùng để chạy một ứng dụng khác, nhưng cũng có thể dùng để mở một file nào đó bằng cách truyền tham số là tên file bạn cần mở.

2. Sao bạn không thử làm như sau:

ofstream f("C:\\test\\huhu.txt"); ????