|
0 / 0 / 0
Регистрация: 01.06.2008
Сообщений: 8
|
|
Переименовать файл01.06.2008, 11:44. Показов 6272. Ответов 4
Метки нет (Все метки)
Здравствуйте! Помогите пожалуйста написать программу. Пишу на masm611. Теория такая: в текущей директории есть файл other.dat его нужно переименовать my.dat! Если можно исходный код с комментариями. Заранее большое спасибо!!!!
0
|
|
| 01.06.2008, 11:44 | |
|
Ответы с готовыми решениями:
4
Переименовать файл Переименовать файл |
|
617 / 22 / 0
Регистрация: 30.09.2007
Сообщений: 357
|
|||||||||||||||||||||||||||||||
| 02.06.2008, 14:52 | |||||||||||||||||||||||||||||||
|
7.1. Первая программа
В качестве нашего первого примера посмотрим, насколько проще написать под Windows программу, которая загружает другую программу. В DOS (см. главу 4.10) нам приходилось изменять распределение памяти, заполнять специальный блок данных EPBВ и только затем вызывать DOS. Здесь же не только вся процедура сокращается до одного вызова функции, а еще оказывается, что можно точно так же загружать не только программы, но и документы, графические и текстовые файлы и даже почтовые и WWW-адреса — все, для чего в реестре Windows записано действие, выполняющееся при попытке открытия.
Прежде чем мы сможем скомпилировать winurl.asm, нужно создать файлы kernel32.inc и shell32.inc, в которые поместим директивы, описывающие вызываемые системные функции:
Кроме этого, все функции, работающие со строками (как, например, ShellExecute()), существуют в двух вариантах. Если строка рассматривается в обычном смысле, как набор символов ASCII, к имени функции добавляется «A» (ShellExecuteA()). Другой вариант функции, использующий строки в формате UNICODE (два байта на символ), заканчивается буквой «U». Во всех наших примерах будем использовать обычные ASCII-функции, но, если вам потребуется перекомпилировать программы на UNICODE, достаточно только поменять «А» на «U» во включаемых файлах. Итак, теперь, когда у нас есть все необходимые файлы, можно скомпилировать первую программу для Windows. Компиляция MASM:
Компиляция TASM:
Иногда вместе с дистрибутивами различных средств разработки для Windows идет файл windows.inc, в котором дано макроопределение Invoke или заменена макросом команда call так, что они принимают список аргументов, первым из которых идет имя вызываемой функции, а затем через запятую — все параметры. С использованием этих макроопределений наша программа выглядела бы так:
;----------------------------------------------------------------------------------- MoveFile The MoveFile function moves an existing file or a directory, including its children. To specify how to move the file, use the MoveFileEx function. BOOL MoveFile( LPCTSTR lpExistingFileName, LPCTSTR lpNewFileName ); Parameters lpExistingFileName [in] Pointer to a null-terminated string that names an existing file or directory. In the ANSI version of this function, the name is limited to MAX_PATH characters. To extend this limit to 32,767 wide characters, call the Unicode version of the function and prepend "\\?" to the path. For more information, see Naming a File. Windows Me/98/95: This string must not exceed MAX_PATH characters. lpNewFileName [in] Pointer to a null-terminated string that specifies the new name of a file or directory. The new name must not already exist. A new file may be on a different file system or drive. A new directory must be on the same drive. In the ANSI version of this function, the name is limited to MAX_PATH characters. To extend this limit to 32,767 wide characters, call the Unicode version of the function and prepend "\\?" to the path. For more information, see Naming a File. Windows Me/98/95: This string must not exceed MAX_PATH characters. Return Values If the function succeeds, the return value is nonzero. If the function fails, the return value is zero. To get extended error information, call GetLastError. Remarks The MoveFile function will move (rename) either a file or a directory (including its children) either in the same directory or across directories. The one caveat is that the MoveFile function will fail on directory moves when the destination is on a different volume. If a file is moved across volumes, MoveFile does not move the security descriptor with the file. The file will be assigned the default security descriptor in the destination directory. The MoveFile function coordinates its operation with the link tracking service, so link sources can be tracked as they are moved. Requirements Client Requires Windows XP, Windows 2000 Professional, Windows NT Workstation, Windows Me, Windows 98, or Windows 95. Server Requires Windows Server 2003, Windows 2000 Server, or Windows NT Server. Header Declared in Winbase.h; include Windows.h. Library Link to Kernel32.lib. DLL Requires Kernel32.dll. Unicode Implemented as MoveFileW (Unicode) and MoveFileA (ANSI). Note that Unicode support on Windows Me/98/95 requires Microsoft Layer for Unicode. Добавлено через 2 минуты Стати хватит этот "Дос" мучать юзай MASM32
0
|
|||||||||||||||||||||||||||||||
|
0 / 0 / 0
Регистрация: 01.06.2008
Сообщений: 8
|
|
| 02.06.2008, 16:04 [ТС] | |
|
Интересного много!! Но как это связано с моим вопросом я не поняла.
0
|
|
|
617 / 22 / 0
Регистрация: 30.09.2007
Сообщений: 357
|
|
| 02.06.2008, 16:18 | |
|
Здравствуйте! Помогите пожалуйста написать программу. Пишу на masm611. - DOS
файл other.dat его нужно переименовать my.dat - MoveFile
0
|
|
|
7 / 7 / 0
Регистрация: 20.08.2008
Сообщений: 44
|
||||||
| 20.08.2008, 16:20 | ||||||
|
хиа ит из
DS X = адрес старого ASCIIZ имени (путь/имя существующего файла)ES I = адрес нового ASCIIZ имени (новые путь/имя)Выход AX = код ошибки если CF установлен
0
|
||||||
| 20.08.2008, 16:20 | |
|
Помогаю со студенческими работами здесь
5
WP 8.1 переименовать файл Переименовать файл
Переименовать файл Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога
Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
|
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|