Хелпикс

Главная

Контакты

Случайная статья





Ввод имени файла. С:\>asczvpsp txt.txt. Программа показывает как открыть файл, имя которого задано в ; качестве. gt;asczvpsp txt.txt. имя программы asczvpsp. txt.txt - файл в текущей директории. Программа определяет с параметрами она запущена или нет..



Ввод имени файла

 

Есть 2 способа:

  1. Файл задан в качестве параметра при запуске программы
  2. Программа запрашивает имя файла и пользователь вводит его с клавиатуры

 

Как открыть файл, имя которого задано в качестве параметра в строке запуска.

Пусть имя программы asczvpsp. Имя файла txt.txt - файл в текущей директории.

Запуск программы будет выполняться следующим образом:

 

С:\>asczvpsp txt.txt

Программа определяет с параметрами она запущена или нет.

Если с параметрами, то добавляет 0 в конец строки, т.е. вместо символа CR ( 0DH) записывает 0.

Таким образом, получаем ASCIIZ строку.

Затем находим начало строки с именем файла - пропускаем пробелы (их может быть больше одного), набранные между именем программы и именем файла.

Полученную строчку отдаем файловой функции open.

 

Буфер в PSP после ввода вышеуказанной строки выглядит следующим образом:

 

80h 81h 82h 83h 84h 85h 86h 87h 88h 89h
08h 20h 74h 78h 74h 2Eh 74h 78h 74h 0Dh

 

 

Буфер в PSP после получения ASCIIZ строки выглядит следующим образом:

 

80h 81h 82h 83h 84h 85h 86h 87h 88h 89h
08h 20h 74h 78h 74h 2Eh 74h 78h 74h 00h

 

 

На вход функции Open, посылаем адрес 82h.

 

 

;+--------------------------------------------------------------

; Программа показывает как открыть файл, имя которого задано в ; качестве

; параметра при запуске программы, например:

; >asczvpsp txt.txt

; имя программы asczvpsp

; txt.txt - файл в текущей директории

; Программа определяет с параметрами она запущена или нет.

; Если с параметрами, то добавляет 0 в конец строки

; т.е. вместо символа CR ( 0DH) записывает 0.

; Таким образом получаем ASCIIZ строку.

; Затем находим начало строки с именем файла, т.е.

; пропускаем пробелы, набранные между именем программы

; и именем файла.



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.