Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB6 > Операции с файлами


Автор: DrNemo 29.1.2006, 19:28
есть несколько вопросов:
1. Как открыть файл в приложении к которому он приписан: т.е. *.doc - в Word; *.txt в Блакноте и т.д.
2. Как удалить файл
3. Переименовать
4. надо создать файл, например Word, но так чтобы он создался в нужном месте, с нужным именим и сразу же открылся для редактирования в Word-е

Зарание спасибо, да и если можно, то с примерами

Автор: cardinal 29.1.2006, 19:54
Модератор: Пожалуйста, один топик - один вопрос.

А по поводу первого вопроса:
http://forum.vingrad.ru/index.php?showtopic=80319
http://forum.vingrad.ru/index.php?showtopic=37828
http://forum.vingrad.ru/index.php?showtopic=15514
http://forum.vingrad.ru/index.php?showtopic=12057
и т.д.
ну то есть понял, что поиск надо использовать, да?

Автор: DrNemo 29.1.2006, 22:02
проблема: при открытии файла:
Код

Shell "c:\Program Files\Microsoft Office\Office\WINWORD.EXE " + pOpen 'pOpen - содержит полный путь к файлу

он выдает ошибку о неверном пути, если в адрессе есть пробелы: т.е. если путь:
Код

 e:\Новая папка\файл.doc
- он ищет файл по адресу
Код

e:\Новая.doc
Если пробелов нет то все работает, как исправить этот баг?

Автор: Exception 29.1.2006, 22:56
1. Так не выйдет открыть именно вордовский в ворде, а рисунок в пэйнте. ShellExecute + поиск тебе в руки.
2.
Код
Kill "e:\file"

3. Вроде бы
Код
Rename "e:\old", "e:\new"

4. Не понял вопроса.
Добавлено @ 23:01
3. Правильно
Код
Name "e:\old", "e:\new"

Автор: СВА 30.1.2006, 06:26
если тебе нужно создать документ Office то сначала получаешь объект например Excel

Объявляешь переменную AppExcel

Код


     Set AppExcel = CreateObject("Excel.Application")


или для Word

Код

Set AppWord = CreateObject("Word.Application")


незабудь ее сделать видимой

Код

AppExcel.Visible = True



Дальше работаешь с AppExcel на VBA Получая практически все свойства и методы, Если не знаешь как то открой Excel и запиши макрос создания документа, открой редактор VBA и просто перед каждой строчкой кода добавь переменную AppWord ,AppExcel

вот тебе пример создания документ Word

Код

Set AppWord = CreateObject("Word.Application")
'новый документ
AppWord.Documents.Add Template:="Normal", NewTemplate:=False, DocumentType:=0
' Изменям место дислокации файла
  AppWord.ChangeFileOpenDirectory "C:\Documents and Settings\N\Рабочий стол\"

'сохраняем новй документ
    AppWord.SaveAs FileName:="Doc1.doc", FileFormat:=wdFormatDocument, _
        LockComments:=False, Password:="", AddToRecentFiles:=True, WritePassword _
        :="", ReadOnlyRecommended:=False, EmbedTrueTypeFonts:=False, _
        SaveNativePictureFormat:=False, SaveFormsData:=False, SaveAsAOCELetter:= _
        False




Автор: Exception 30.1.2006, 17:35
СВА, это про конкретный файл. А ему нужно в зависимости от выбора.

Автор: kulibin 30.1.2006, 23:35
Цитата(Exception @ 30.1.2006, 17:35 Найти цитируемый пост)

это про конкретный файл. А ему нужно в зависимости от выбора.


однако это открыть можно "неконкретный" файл - а создать можно только конкретный smile - нельзя же создать файл не зная какого он должен при этом быть типа smile - а зная нужно выбрать каким приложением его создавать


Автор: СВА 31.1.2006, 05:59
Покрайней мере этим способом можно создать любой документ из MS Office

Автор: kulibin 31.1.2006, 11:24
Цитата(СВА @ 31.1.2006, 05:59 Найти цитируемый пост)

Покрайней мере этим способом можно создать любой документ из MS Office

Ну да - я же об этом и говорил
А если просто открыть нужно - то это
Код

Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long


Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)