Вопрос о создании файла протокола

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
M@SKIT
Новичок
Новичок
 
Сообщения: 42
Зарегистрирован: 10.04.2006 (Пн) 11:10
Откуда: Одесса

Вопрос о создании файла протокола

Сообщение M@SKIT » 05.05.2006 (Пт) 13:43

Только не ругайтесь пожалуйста!!! Сразу говорю искал!!!

Появилось время занятся VB. Сразу полез тренироваться с файлами. Немного не могу понять с записью в файл :oops: .

Наткнулся на такой листинг: "Использование файла с последовательным доступом для создания файла протокола"

Код: Выделить всё
Sub LogPrint(sMessage As String)
    Dim NFile As Integer
    NFile = FreeFile
    Open App.Path & "ErrorLog.TXT" For Append Shared As #NFile
    Print #NFile, Format$(Now, "mm-dd hh:mm:ss") & " - " & sMessage
    Close #NFile
End Sub


Внимание! Вопрос: Что такое FreeFile и зачем оно присваивается Nfile? Что такое вообще Shared.

Далее, что определяет #Номер_файла в операторе Print# или Write#. А то в книге не черта не написано.

Подскажите пожалуйста!

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 05.05.2006 (Пт) 13:47

Выброси эту книгу и купи нормальную. А то таким путём можно прийти к вопросам "Что делает оператор +".
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

uhm
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1597
Зарегистрирован: 02.12.2004 (Чт) 15:21

Сообщение uhm » 05.05.2006 (Пт) 13:48

Ты можешь писать в разные файлы, для этого и нужна переменная NFile - она определяет, в какой из открытых тобой файлов ты хочешь сделать запись. FreeFile - функция, которая возвращает свободный номер для файла. Shared - неэксклюзивный доступ к файлу.
Быть... или не быть. Вот. В чём вопрос?

uhm
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1597
Зарегистрирован: 02.12.2004 (Чт) 15:21

Сообщение uhm » 05.05.2006 (Пт) 13:48

ЗЫ А вообще, GSerg прав. Читай хелп :)
Быть... или не быть. Вот. В чём вопрос?

shady
Постоялец
Постоялец
 
Сообщения: 461
Зарегистрирован: 09.11.2005 (Ср) 11:03

Сообщение shady » 05.05.2006 (Пт) 13:50

я обычно вот так делаю:
Код: Выделить всё
    ' Открываем файл для последовательного чтения
    Open App.Path & "\sett.ini" For Input As #1
        nalp = Input(16, #1)
      ' Закрываем файл перед тем, как открыть его снова другим методом
    Close #1

    ' Открываем файл для последовательной записи.
    Open App.Path & "\sett.ini" For Output As #1
        Print #1, "123"
    ' Закрываем файл перед тем, как открыть его снова другим методом
    Close #1

shady
Постоялец
Постоялец
 
Сообщения: 461
Зарегистрирован: 09.11.2005 (Ср) 11:03

Сообщение shady » 05.05.2006 (Пт) 13:54

Далее, что определяет #Номер_файла в операторе Print# или Write#. А то в книге не черта не написано.

Подскажите пожалуйста!

#Номер_файла можно открыть сразу несколько файлов #1 #2...
и соответственно в какой именно файл записывать..

M@SKIT
Новичок
Новичок
 
Сообщения: 42
Зарегистрирован: 10.04.2006 (Пн) 11:10
Откуда: Одесса

Сообщение M@SKIT » 05.05.2006 (Пт) 14:03

О! Спасибо за разъяснения! А про Shared можно поподробнее!

Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 05.05.2006 (Пт) 14:18

shared - по-русски разделяемый, т.е. возможен множественный доступ (из разных процессов/программ)

M@SKIT
Новичок
Новичок
 
Сообщения: 42
Зарегистрирован: 10.04.2006 (Пн) 11:10
Откуда: Одесса

Сообщение M@SKIT » 05.05.2006 (Пт) 14:24

А-а-а! 8) Ясненько!!!


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот, SemrushBot и гости: 150

    TopList  
cron