Вопросы с тегами [dos]

1

голосов
3

ответ
8.9k

Просмотры

Coloured output in Turbo C++

My compiler is Turbo C++ v3.0 with DOS v5.0 emulated in DOSBox v0.74 I use this because Turbo C++ is the compiler with which my highschool has chosen to teach the C++ programming language. It has been stressed that I use this compiler while coding my final term project. I'm running Windows 8.1 (64 bit) with Intel Core i5-3317U CPU @ 1.70GHz For the sake of liveliness and in tribute to popular culture, I want my output screens to have green text. The following is what seemed to work : #include #include void main(){ clrscr(); textcolor(2); // text set to green colour (conio.h function) cprintf("\n\t Hello World"); // cprintf from conio.h cout
MisterGeeky
1

голосов
1

ответ
49

Просмотры

-Сборочный Console Mode One Character

Здравствуйте, я новичок здесь, на форуме, и я начал короткое время, чтобы программировать на ассемблере, но я все еще новичок, и хотел бы сделать несколько вопросов. 1-и можно поставить фоновые изображения ?? 2-Можно ли настроить указатель курсора с изображением? 3-MS-DOS. ком файлы ,. программы еха запустить в сборочном производстве системы? Ну, моя цель состоит в том, чтобы создать системную подсказку, но я новичок в сборке, и я учусь еще и смешанные два кода, чтобы генерировать то, что мне нужно, но не понимаю, почему, когда я печатаю только и 1 символ Я попробовал несколько методов как использовать JMP или M УДАР инструкции и registers.If кто-нибудь знает, помогите мне спасибо. Мой код: DATA SEGMENT MESSAGE DB "ПОДСКАЖИТЕ>", "$" COMMAND DB? КОНЧАЕТСЯ сегмент кода START: ASSUME DS: DATA CS: КОД; ::::::: ПРЕДПОСЫЛКИ (ЦВЕТ "S / ИЗОБРАЖЕНИЯ) ::::::::: MOV AH, 00h; Установить режим видео MOV AL, 000h; Режим 3 (цвет текста) INT 10H MOV AX, 0600h; AH = 06 (прокрутка вверх окна), AL = 00 (все окно) MOV BH, 10000100b; оставил клев для фона (синего), правый клев на передний план (светло-серый) MOV CX, 0000h; СН = 00 (сверху), CL = 00 (слева) MOV DH, 50; DH = 19 (внизу), DL = 50 (справа) MOV DL, 50 INT 10h; ::::: КОНЕЦ ПРЕДПОСЫЛКИ ::::::::::::::::::::::: ; ::::::: POMPT ::::::::::: MOV AX, ДАННЫХ MOV DS, AX LEA DX, СООБЩЕНИЕ MOV AH, 9 INT 21H MOV AH, 1 INT 21H MOV КОМАНДА, AH MOV AH , 4CH INT 21H КОНЕЦ END START; ::::: END PROMPT ::::::: CL = 00 (слева) MOV DH, 50; DH = 19 (внизу), DL = 50 (справа) MOV DL, 50 INT 10h; ::::: КОНЕЦ ПРЕДПОСЫЛКИ ::::::::::::::::::::::: ; ::::::: POMPT ::::::::::: MOV AX, ДАННЫХ MOV DS, AX LEA DX, СООБЩЕНИЕ MOV AH, 9 INT 21H MOV AH, 1 INT 21H MOV КОМАНДА, AH MOV AH , 4CH INT 21H КОНЕЦ END START; ::::: END PROMPT ::::::: CL = 00 (слева) MOV DH, 50; DH = 19 (внизу), DL = 50 (справа) MOV DL, 50 INT 10h; ::::: КОНЕЦ ПРЕДПОСЫЛКИ ::::::::::::::::::::::: ; ::::::: POMPT ::::::::::: MOV AX, ДАННЫХ MOV DS, AX LEA DX, СООБЩЕНИЕ MOV AH, 9 INT 21H MOV AH, 1 INT 21H MOV КОМАНДА, AH MOV AH , 4CH INT 21H КОНЕЦ END START; ::::: END PROMPT :::::::
Michael Siernandes
1

голосов
0

ответ
155

Просмотры

Сборка x86 Как я ввода / вывода строки

Совершенно новый на ассемблере, пытаясь узнать. Я пытаюсь сделать программу, которая выводит сообщение, что я ввод. Вот мой код: .MODEL небольшого .stack 100h .data тзд дб 20 .Code старт: мы ах, @data мов DS, топор мы ах, 0AH мы ах, смещение тзд INT 21h Леа дй, сообщи мы ах, 09h конец INT 21h начать После того как я запустить эту программу и ввести строку он печатает случайные символы и такие кто-то может сказать мне, что я не так делаю? Спасибо
Quadro
1

голосов
0

ответ
40

Просмотры

DOS COMMAND.COM загрузки / Exec программы (INT 21h / ах = 4В) не сохраняет данные до возвращения программы?

Я читал очень классный пост «Как DOS загрузки программы в память?» Как DOS загрузить программу в память? чтобы пролить свет на сомнения в процессе загрузки и выполнения программы в DOS. Это ясно, как вода, но я до сих пор есть сомнения: После того, как COMMAND.COM издал (под названием) прерывания 21h INT, что происходит с «параметрами», такие как имя файла программы? Они не держали, пока вызываемая программа завершается (возвращает) или они немедленно отбрасывается после INT 21h называется? Я имею в виду, например, имя файла этой программы указываемого DS: DX, то есть «C: \ ДОМАШНЯЯ \ TEXT01.COM», не она сохраняется в памяти до выходов выполняются программы или она освобождается немедленно и что память повторно (перезаписываются )? Примечание: Я знаю, что регистры и указатели будут меняться, но то, что происходит с строки после того, как выполняется программа работает? Спасибо!
kanito73
1

голосов
2

ответ
712

Просмотры

Phar Lap Assembler: I Need information/documentation and binaries if possible

I've inherited a rather old big and complex codebase for a program originally targeted at MSDOS. It turns out that some sections of this program are written in an obscure dialect of x86 assembler called "Phar Lap assembler", after the company and product that produced the assembler program. I've done a fairly deep google search and I'm unable to find either the original assembler program, or any information or documentation about it. (Though I have found some rather frustrating pages on Experts Exchange of people asking similar questions). So basically, I won't be able to get this thing to compile until I can either find a copy of PharLap Assembler (386asm.exe), or find enough information about the dialect to translate it to a more "standard" MASM like dialect. Either that, or try to muscle through just figuring it out by reading it. Alternatively, if none of this is possible, then I just need some help with this problem, and I should at least be able to get one section of the program to compile. There's a struct declaration in a .c file that looks like this: //static struct bhash *bhash; typedef struct bhash_control { void *cachedata; Rgb3 *ctab; int rederr; int grnerr; int bluerr; ULONG drgb; // temp var used by dithering, blackbox to us here #ifdef SHOW_STATS int calls, hits1, hits2, fhits, misses; #endif } BhashCtl; BhashCtl bhashctl; // global so assembler code can see it. and then there's some assembler that looks like this, which is presumably trying to make the same type declaration so that some assembler code can use the same type: BhashCtl struct cachedata dd ? ; pointer to alloc'd cache data area ctab dd ? ; contains vb.pencel->cmap->ctab rederr dd ? ; error diffusion dithering variables... grnerr dd ? bluerr dd ? drgb dd ? ; rgb value with dithering rolled in ;calls dd ? ; cache stats... ;hits1 dd ? ; to use these, you also need to ;hits2 dd ? ; uncomment a few lines below. ;fhits dd ? ; search for 'bhashctl.' to find them. ;misses dd ? BhashCtl ends extern bhashctl:BhashCtl ; the one-and-only lives in bhash.c this compiles with an error on the last line which looks like this (watcom assembler): Error! E518: External definition different from previous one So basically, I think what this is saying is that the assembler version of this struct doesn't match the C version of this struct. I've tried a number of different combinations of WORD and DWORD in place of dd in the assembler, but I can't get past this little thing. Maybe if I could find a way to get these two declarations to match perfectly, my need for information about pharlap would be diminished. Also, if anyone can think of a better title for this sprawling question, I'm open to ideas. Edit: Okay it turns out I skimmed over some important info. This is a file originally written for a Phar Lap assembler (which I don't have), that I'm trying to assemble using the watcom assember (wasm). The problem with that particular error, it turns out, is it seems Phar Lap is case sensitive, while watcom isn't. So it sees bhashctl as the same as BhashCtl. Figured this out with the help of my brother in law. I never would have thought of case insensitivity being the cause of that one.
Breton
1

голосов
2

ответ
590

Просмотры

Lynx удаляет символы новой строки из post_data ввода

Я пытаюсь отправить файл в URL с помощью командной строки MS-DOS. Я использую браузер Lynx, чтобы сделать это. Я могу опубликовать свой файл просто отлично, но все символы новой строки удаляются Lynx до создания запроса POST. Можно ли разместить файл через командную строку, не имея символы новой строки удаляются? Команда, которую я бегу это: рысь -post_data http://www.myserver.com/myscript.pl <testfile.txt Входной файл testfile.txt, выглядит следующим образом: тест = Это тест .; --- Данные, которые на самом деле отправляется через провод выглядит следующим образом: тест = Thisisatest .;
Wes
1

голосов
1

ответ
1.1k

Просмотры

`Рег оглавление query` значения результата?

Рассмотрим следующий результат от гипотетической запроса рег: ..> рег запрос HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ MediaPlayer / х "Я становка Directory" HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ каталог установки Microsoft \ MediaPlayer REG_EXPAND_SZ% ProgramFiles% \ Windows Media Play эр Как Grep выходной, так что я могу назначить фактическое значение параметра (% ProgramFiles% \ ...) в переменную (или временный файл)?
Santa
1

голосов
4

ответ
4.7k

Просмотры

Open a csv file in DOS

Is it possible to open a csv file such as: a,b,c,d,e,f,g,h And have DOS read it in (in a batch file), check the data and then remove it from the file under a certain condition? Pseudo code: open csv file for each letter if letter is e remove e from csv file close and save csv file EDIT: If I change my data source from a csv to this: a b c d e f g h Then I can call this: rename file.txt file.bak for /f %%a in (file.bak) do ( set hmm=%%a if !hmm!==e set hmm=helloworld echo !hmm! >> file.txt) Although this will print out the original data after the new changes like so: a b c d helloworld f g h a b c d e f g h
ingh.am
1

голосов
2

ответ
771

Просмотры

копирование * .dat из разных каталогов в каталоге зеркала

У меня есть каталог со следующей структурой: C: \ directory1 \ sub1 \ sub2 \ sub3 \ somefilename.txt someotherfile.txt Внутри каждого суб * \ есть файлы .dat, которые мне нужно скопировать в другой каталог зеркалирования по пути директория имя, где они были найдены. Так что, если я нахожу C: \ directory1 \ sub2 \ file.dat Я хотел бы скопировать, что в C: \ зеркало \ sub2 \ file.dat и так далее. Я попробовал несколько комбинаций вещей, аналогичных для / R% SRC_DIR% %% е в (* .dat) сделать копию "%% F" % BACKUP_DIR% \ %% ~ Н.Ф. %% ~ XF (обратите внимание, что это только пример кода я играл с, я знаю, что это не работает) так или иначе, после попытки пару дней я до сих пор не знаю, как это сделать. Есть ли шанс помочь? Код ценится. Спасибо!
Mr Aleph
1

голосов
1

ответ
2.4k

Просмотры

Добавить дату метки в выходной файл отображения результатов Пинга имя хоста

Мне нужно, чтобы просмотреть результаты звона веб-сайта / имя хоста непрерывно. Так что я пытаюсь выводить результаты в текстовый файл. Я хочу, чтобы добавить дату и время штампы, как имя выходного файла. Для Eg: пинг google.com -t> datetimestamp.txt где, когда пинг было сделано datetimestamp = конкретная дата и время. Спасибо! Muddu
muddu83
1

голосов
2

ответ
527

Просмотры

Пакетная молния - нужно удалить старые файлы

У меня есть пакетный скрипт, который на самом деле делает то, что я хочу (Берет в количестве файлов и помещает их в том же каталоге, что они пришли в .bz2 файлов). Мне нужно немного помочь, хотя, потому что мне нужно удалить исходные файлы. Кроме того, когда размер входного становится слишком большим (не может дать точное число, вероятно, где-то около 40 или около того) пакетных аварий. Я пытался решить эту проблему сам, к сожалению, партия тарабарщина мне. Если это может удалить исходный файл, я мог бы справиться с текущим размером входного сигнала. Любая помощь, что кто-нибудь может дать мне было бы весьма признателен. Вот мой текущий код: @ECHO Off: Запуск Если [% 1 == [Goto: EOF Pushd% ~ pd1 "C: \ Program Files \ 7-Zip \ 7z.exe" у -tbzip2% ~ nx1.bz2% 1 Сдвиг Popd Goto Start Я хотел бы также отметить, что я не оригинальный автор этого кода, он был размещен на форуме.
Andrew
1

голосов
2

ответ
1.5k

Просмотры

Устраните USB букву диска в пакетном файле на любом хост-компьютере

Я посмотрел на возможные решения для моего вопроса, но я боюсь, что мой уровень знаний не позволяет мне правильно задать вопрос. Мой USB диск называется CRUISER, и у меня есть пара приложений, которые я хотел бежать, через пакетный файл на хост-компьютере. Так как я понятия не имею, что буква диска будет, как я могу разрешить диск по имени в пакетном файле? Вот что у меня в текущей стороне хоста пакетного файла. (Как вы можете видеть на REM и паузы заявления, я тестировал ....) REM Пуск Программы Переносные и Регистрация Shield Сюита кд C: \ Documents и Settings \% USERNAME% \ Local Settings \ Application Data \ Temp \ SignupShield \ дель signupshieldportable.exe REM REM реж пауза кд \% CRUISER% ​​REM REM реж пауза начать StartPortableApps.exe кд PortableApps REM REM реж пауза начать бэр паузу signupShieldPortable.exe Все, что я хочу сделать, это подключить диск на моем хосте запустите хост на основе пакетного файл, и он найти свой CRUISER диск, независимо от буквенных и запустить два приложения. Я знаю, что могу поставить пакетный файл на диске USB и запустить его оттуда, как я это сделал. Теперь это просто вызов мне нужно решить! Спасибо за помощь
John
1

голосов
2

ответ
228

Просмотры

Informix 3,30 для DOS

Вы знаете, где я могу скачать Informix 3.30 для DOS? У меня есть система, разработанная в Informix 3.30 для старой машины и хочу перенести его теперь на компьютер. Спасибо, Херардо.
Gerardo
1

голосов
2

ответ
1.2k

Просмотры

«Установка / р MyVar =

У меня есть небольшой Win7 дос партию, и я задаюсь вопросом, как сделать это правильно. Вот то, что я: @echo OFF @FOR %% D IN (* .sqlite) DO (sqlite3 %% D "Прагма integrity_check;"> %% тип D.check %% D.check комплект / р CHECK = <%% D.check дель %% D.check эхо «% ПРОВЕРКА%») Я бы ожидать, что ПРОВЕРКИ устанавливаются в результате SQLITE продукции. Хотя «тип» показывает ожидаемый результат, ПРОВЕРЬТЕ пуст! И я не понимаю, что я делаю неправильно. Я также попробовал без использования tmpfile FOR / F «токенов = *» %% я в ( «sqlite3 %% D„Прагма integrity_check;“») сделать SET CHECK = %% я, но это тоже не работает ... Я «d признателен за любую помощь / подсказки. Tnx заранее, Роберт
Enkidu
1

голосов
1

ответ
518

Просмотры

Эхо новой строки в гриме сценарии

У меня есть правило грима для компиляции .c файлов в моем проекте, который выглядит следующим образом # По умолчанию правила для строительных R90 (avr8) / R82 (AVR32) объектные файлы, из .c файлов. % $ (OBJ_EXTENSION):.% .C @echo Компиляция $ (@:.. $ (OBJ_EXTENSION) = с) до $ @ в связи с изменением $? ... Теперь в конце этого я хочу новую строку, чтобы красиво отделить выход из компиляции каждого файла. Я видел, как вы можете повторить перевод строки в пакетных файлах? и подобные темы, и все они, кажется, предлагают эхо. Но на моей машине эхо. Результаты в process_begin: (. NULL, эхо, ...) CreateProcess не удалось. Что я не получаю?
jokki
1

голосов
2

ответ
6k

Просмотры

Пакетный скрипт для скрытия значков рабочего стола

Я пытаюсь сделать скрипт, который скрывает некоторые значки на рабочем столе. Когда я запускаю его построчно в команде ПРОМТ он работает, но когда я бегу * .bat файл в CMD он говорит: «attributesi было неожиданным в это время.» Вот код: установить адрес = file.ext набор атрибутов = ATTRIB% адрес% для / F "токенов = *" % я в ( "% атрибуты%") делать множество вар =% я устанавливаю переменная =% Var: =% если% вар: ~ 1,1% == Н (Attrib -H% адрес%) остальное (Attrib + Н% адрес%)
yonutix
1

голосов
2

ответ
6.1k

Просмотры

Если коротко, то BIOS против DOS [закрыт]

Что главное различие между Basic Input Output System [BIOS] и операционной системы Disk [DOS]? Оба приложения, которые имеют прерывание, я действительно очень смущен! Перед вниз голосования, я Google на этот вопрос и не нашли ответа, пожалуйста, ответьте мне, как я действительно забочусь об изучении разницы.
Ahmed Ghoneim
1

голосов
2

ответ
1.1k

Просмотры

Сборка 16-битный код сборки с открытой ошибкой Watcom (найдено несколько исходных адресов)

Я пытаюсь скомпилировать 16-разрядную сборку фрагмент кода из книги руткит арсенала в открытом Watcom IDE. Это дает ошибку «несколько стартовых адресов найден». Имея очень ограниченное количество сборочного знаний я не смог разобраться. Это код: CSEG СЕГМЕНТНАЯ BYTE ОБЩЕСТВЕННОЕ 'КОД' Предположим, CS: CSEG, DS: CSEG, СС: CSEG ORG 100H _here: СПМ _Главная JMP _overData _buffer DB 512 DUP ( 'W') _terminator DB 'Z' _index DW 0H _oldISR DD 0H _chkISR DD 0h _overData: _getBufferAddr: STI MOV DX, CS LEA DI, _buffer ИРЭТ _hookBIOS: PUSH AX PUSH BX PUSHF ВЫЗОВ CS: _oldISR MOV AH, 01H PUSHF ВЫЗОВ CS: _chkISR CLI PUSH DS PUSH CS POP DS JZ _hb_Exit LEA BX , _buffer PUSH SI MOV SI, СЛОВО ПТР [_index] MOV DS: [BX + SI], AL INC SI MOV WORD PTR [_index], С. И. POP SI _hb_Exit: POP DS POP AX POP BX STI IRET _install: LEA DX,
user1831704
1

голосов
1

ответ
1.9k

Просмотры

ClassNotFoundException при запуске моего апплета

Я столкнулся некоторые проблемы, чтобы запустить апплет с помощью Appletviewer командной строки в MS-DOS. это мое дерево проекта: Проект | ___ Классы | | ___ орг | | ___ тест | | ___ Test.class | | __Src | ___ орг | ___ тест | ___ Test.java Вот Test.java исходный файл: пакет org.test; импорт java.applet.Applet; / ** / общественного класса Test распространяется Applet {общественного недействительными инициализации () {} общественного недействительными начало () {} остановка общественного недействительными () {} общественного недействительными уничтожить () {}} Я прочитал в статье, что Appletviewer нужно только файл, в котором есть апплет тег внутри него, так что он будет разобрать этот файл для извлечения тега. Это то, что я сделал с комментировал строки в исходном файле выше. Исходный файл компилируется без каких-либо ошибок. Тогда я пытаюсь запустить его. 662) Я думаю, что ошибка происходит из первой строки моего исходного файла Java, потому что когда я удалить его, все работает отлично. Но я просто не знаю, почему ... Может кто-нибудь объяснить мне, пожалуйста?
Patrick B.
1

голосов
1

ответ
1.7k

Просмотры

Пакетный файл для удаления определенной строки из нескольких файлов на несколько папок

У меня есть папка с большим количеством вложенных папок каждая из которых содержит десятки .MHT файлов разной длины. Мне нужна помощь в создании пакетного сценария отфильтровывать эту определенную строку: «» Я могу надстройка строка HTML в файл перед добавлением его к концу. Это то, что я до сих пор: SETLOCAL enabledelayedexpansion для / г %% а в (* .mht) сделать (для / ф «пропустить = 11» %% б в (%% а) делать (если %% б ==» "дель %% б) эхо„вещи, чтобы добавить“>> %% следующий эхо„“>> %% а) есть ли способ, чтобы исправить мой текущий сценарий или, возможно, любой из вас знает, какой-либо простой способ сделать это? Примечание: Я пытался копировать все, кроме нежелательной строки в временный файл, но первые 11 строк содержат специальные символы, напр: | ,. :
user1978045
1

голосов
1

ответ
76

Просмотры

Как использовать отлаживает ДОС, чтобы найти программы прерывания

Как найти все прерывания, вызываемые программой дос с помощью DEBUG в командной строке. Я знаю, что это, вероятно, имеет что-то сделать с помощью функции поиска, но всякий раз, когда я пытаюсь что-то вроде -s 100: FFFF (который я думаю, Отыскивает весь сегмент памяти для «INT») Но когда я вручную дизассемблировать через тот же сегмент с командой ˙U Я могу видеть INT / прерывания вызывается.
Austin Davis
1

голосов
2

ответ
5.8k

Просмотры

Программирование Сборка I / O

Я узнал немного ассемблерного кода, а также узнали, что is't, что много хороших учебников по Интернету для этого. Мне было интересно об отправке сигналов с определенным в devicesex. параллельные порты, USB (возможно) мне было интересно, есть ли какой-либо код любой желающий может поделиться привести меня в правильном направлении. И в-случае, если вы не знаете, по сигналу я имею в виду рассылку voltage.So, чтобы подвести итог, я хотел бы знать, как взаимодействовать с определенными портами с assemblyI я в настоящее время с помощью DosBox для запуска сборки, и с помощью плоской ассемблеру программы. Все это работает на оконном 8.Thanks заранее, 36redsoxfan
36redsoxfan
1

голосов
1

ответ
235

Просмотры

Установите запас в печати GW-BASIC

Я использую GW-BASIC язык и мне нужен вывод на печать в центре страницы, прямо сейчас он начинается с левым верхней частью страницы формата А4, могу я попытался установить поле с помощью предпочтений принтера, но есть нет такой опции. Может кто-нибудь сказать мне, как установить его для печати в центре страницы?
MZH
1

голосов
1

ответ
8k

Просмотры

Как использовать MS-DOS Команды вырезать из бумаги с помощью команд ESC / POS?

У меня есть простое требование печати текстовых файлов из Windows (MS-DOS). Давайте предположим, что мой обычный текстовый файл находится на «C: \ Temp» папку. С другой стороны, у меня есть чековый принтер EPSON TM88V. Я могу пожать руку с чековым принтером, подключенным к USB и возможности печатать его под командой: C: \ Temp> PRINT / D: \ WORKSTATION \ EPSONTM-T88V C: \ Temp \ HelloWorld.txt Хотя это печать; но это не разрезая бумагу. Мне нужно вставить эти команды ESC / POS в моем текстовом файле и передать его на принтер так, чтобы отрезать бумагу, как только он закончит печать мой текстовый файл. Цените, вы помогаете в этом отношении, как я прошел через сайты, как «http://nicholas.piasecki.name/blog/wp-content/uploads/2009/12/ESC-POS-Command-Guide.pdf» «HTTP: //www.delfi.
user2209085
1

голосов
1

ответ
319

Просмотры

BIOS INT 10h обслуживание 0 и EGA режим

Я потратил много времени, пытаясь выяснить, что происходит, когда один называет BIOS INT 10, обслуживание 0, чтобы установить режим видео. Можно ли выполнить эти действия вручную, используя EGA порты? Я нашел в документации из разных источников, но не смогли найти то, что просто устанавливает особый режим. Я начинаю вещь, что «режим видео» не только значение регистра, это куча настроек в EGA. Чтобы было ясно, я упражняюсь с текстовыми режимами только (0,1,2,3 и 7) под DOSBox и QEMU.
Rast
1

голосов
1

ответ
429

Просмотры

Получить Случайный порядок файлов в Dos для командования

Вот DOS FOR / R папка %% е в (*) .filetype DO то, что я хотел бы достичь, когда каждый раз, когда запускаю это, в случайном порядке файл будет кормить на что-то из цикла FOR
Eric Yin
1

голосов
2

ответ
120

Просмотры

Добавление ECHO в текстовый файл и лимит до 30 дней

Я провел сегодня утром соскабливать Google, и превратившись пустыми руками пришли сюда, чтобы найти свой ответ. И вы, ребята, всегда поставляют удивительности. В конце пакетного файла, я хочу, чтобы добавить дату / время, чтобы текстовый файл. Это будет служить в качестве простого журнала истории файла. Та часть легко. Код: ECHO% DATE: ~ 10,4 %% DATE: ~ 4,2 %% DATE: ~ 7,2%% TIME% Process Complete >> C: \ Установка \ ~ AcctRefreshLog.txt Выход: 20130624 11:51: 32,45 Process Complete Теперь я хочу, чтобы ограничить это до 30 дней истории. Это то, что я пришел к вам, чтобы найти. Я думал о создании отдельных файлов с указанием даты / времени в имени файла в папке, и вставки команды, чтобы удалить все файлы старше 30 дней, но босс хочет небольшой след, один файл для использования. Любые мысли или идеи?
MaxKorban
1

голосов
1

ответ
614

Просмотры

Отсутствует выход при перенаправлении STDOUT в файл

У меня есть пакетный файл, в котором я выполняющийся мой C ++ приложения. Казнь что-то вроде аргументов program.exe> ​​log.log 2> & 1 Она работает хорошо, но есть вход, который отсутствует из файла журнала и CMD окно. Когда я удалить перенаправление, недостающие журналы в CMD окно выполнения. Кроме того, если я запустить программу в Visual Studio, не хватает вывода в окне выполнения. Сообщения, которые я замечаю не хватает в этом случае являются простыми Е () заявления, но я подозреваю, что могут быть и другие сообщения отсутствуют тоже (это большая система предприятия). Это кажется довольно странным, любые идеи? Благодарю.
Basil
1

голосов
1

ответ
149

Просмотры

Я хотел запустить DOS ЦМД, чтобы скопировать файл ех из другой директории, а затем запустить исполняемый файл, используя подстановочный, но он не работает

Вот CMD, в котором он делает копию файла, но не выполняет его впоследствии: копировать / V / г "\\ кардинальнозначного 9547e3 \ Активного Производство \ Isotrac Online * .exe" % TMP% TMP% \ Isotrac онлайн * .exe
Drew
1

голосов
1

ответ
177

Просмотры

Запись под курсором в сборке x86 с видео карты памяти

Я пишу простое приложение, которое пытается использовать видео отображенных памяти (начиная с адресом 0B800). По большей части я могу написать непосредственно в эту память и символы появляются мгновенно на экране, но я считаю, если я пытаюсь писать прямо под курсором, что я когда-либо пытался писать не прилипает. Это можно обойти? Как я могу писать прямо под курсором? В настоящее время использовать что-то вроде этого, чтобы записать в память: мы слова PTR ES: [DI], BX, где BX имеет атрибуты и характер, я хочу написать.
Twiltie
1

голосов
2

ответ
2.2k

Просмотры

How Can I use the Ah 02h , INT 16h interrupt to check three control keys?

I want to write a program which ends by pressing three keys: caps lock, nom lock and left shift. Can I use the AH=02h , INT 16h to check if they have been pressed together or not? What other interrupts can I use? Curious :) Here is my code, but I'm not share about how this interrupt works: TITLE 'PressKeys' ;key program ;----------------------------------------------------------------------------------- ;DATA SEGMENT DASEG SEGMENT PARA PUBLIC 'data' CHECK DB 01100010b;The number which is used to check the control keys ;in the INT 16H (caps lock,nom lock,left shoft) MESG DB 'FINISH $';Massage to say finish DASEG ENDS ;-------------------------------------------------------------------------------------- ;CODE SEGMENT COSEG SEGMENT PARA PUBLIC 'code' ASSUME CS:COSEG, DS:DASEG, ES:NOTHING, SS:NOTHING MAIN: MOV AX,DASEG MOV DS,AX ;Check if the caps and nom and left shift keys has been pressed KLOOP: MOV AH,02H INT 16H TEST AL,CHECK Jnz PRESSED ;If the keys has been pressed finish the programm JMP KLOOP PRESSED:;PRINT MESSAGE LEA DX,MESG MOV AH,09H INT 21H ;GET BACK TO OS MOV AX,4C00H INT 21H COSEG ENDS ;------------------------------------------------------------------------------ ;END OF PROGRAMM END MAIN
Sparrow7000
1

голосов
2

ответ
303

Просмотры

загрузка файла из MS-DOS пакетного файла

Недавно я был в создании игр в MS-DOS пакетного сценария. Я работал, как создать файл для сохранения, но я не могу показаться, чтобы выяснить, как загрузить эти данные. Я знаю, как сделать это в современных окнах 7 пакетных файлы:: нагрузка <NAME.FILETYPE (установка / р ПЕРЕМЕННЫЙ = установить / р ПЕРЕМЕННЫЙ = установить / р ПЕРЕМЕННЫЙ = :: и так далее) Но так как фактический MS-DOS (I» м с помощью v6.22, если это меняет что-либо) не имеет / р, так что не представляется возможным. Итак, мой вопрос, есть ли способ сделать это без использования / р?
stenstorp
1

голосов
1

ответ
194

Просмотры

GetAsyncKeyState () для MS DOS

Я сделал небольшую игру для Windows, который использует GetAsyncKeyState (). Теперь я хочу, чтобы скомпилировать игру для MS DOS, но я не могу найти альтернативу для этой функции. Геч () и kbhit () слишком медленно для обработки нажатий клавиш. Основная цель состоит в обработке нажатий клавиш со скоростью света, или, по крайней мере нравится со скоростью GetAsyncKeyState (). Заранее спасибо.
user3496846
1

голосов
2

ответ
507

Просмотры

окна CMD (гауптвахта) DOSKEY, как скопировать текущий каталог в буфер обмена, вставляться перед на «CD»?

Это нормально, чтобы сделать это в командной строке: C: \ Users \ ken.chen> эхо | установить / р = кд% кд% | клип C: \ Users \ ken.chen> CD C: \ Users \ ken.chen C: \ Users \ ken.chen \ орехи \ ноты> эхо | установить / р = CD% кд% | клип C: \ Users \ ken.chen \ орехов \ примечаниями> кд C: \ Users \ ken.chen \ орехов \ примечания но variabe% кд% всегда мой домашний каталог, если добавить Doskey куб.см к моей инициализации пакетного файла: Doskey куб.см = эхо ^ | установить / р = кд% кд% ^ | клип C: \ Users \ ken.chen \ орехи \ примечание> куб.см C: \ Users \ ken.chen \ орехов \ примечаниями> CD C: \ Users \ ken.chen, как это исправить? или мне нужно, чтобы записать его в отдельный пакетный файл?
metaphy
1

голосов
1

ответ
147

Просмотры

Пакетный файл справки: создана новая папка с именем файла PDF, нужно передать другой файл в новую папку, которая имеет другое имя

Я работаю на пакетный файл, который создает новую папку, используя имя существующего PDF файла, а затем копирует файл PDF, а также файл «STP» в новую папку. Возникли проблемы копирования файлов «STP», которые имеют немного другое имя во вновь созданную папку ж / имя PDF. Файлы: File001.pdf, File001.stp, File002.pdf, File002_RA_V9.stp Мой скрипт создает папку с именем после того, как файл PDF, а затем передает копию PDF и соответствующий STP-файл в новую папку ... но я не может придумать способ, чтобы скопировать File002_RA_V9.stp в папку File002. Вот мой сценарий: @ECHO OFF SET / P todir = Пожалуйста Drap и падение каталог назначения: для / ж %% ф в ( 'реж * .pdf / б') сделать мкр% todir% \ %% ~ Н.Ф. и хсору %% е% todir% \ %% ~ Н.Ф. для / е %% е в ( 'реж * .stp / б') сделать хсору %% F% todir% \ %% ~ Н.Ф. Спасибо за вашу помощь!
Tim Miller
1

голосов
1

ответ
140

Просмотры

Github: Отклонить фиксации, содержащих символы новой строки DOS

Есть ли способ для GitHub, чтобы полностью отказаться от фиксации, если DOS символы новой строки в любом из файлов? (Я знаю, что интерфейс GitHub имеет настройки, чтобы убедиться, что символы перевода строки DOS не совершаются, но в том случае, если этот параметр не включен, я хотел бы страховку.)
hlin117
1

голосов
1

ответ
2.5k

Просмотры

Программа для поиска НОД в x86 ассемблере

EDIT: код теперь работает, спасибо за помощь. это может быть не очень, но это работает, я должен написать программу, которая находит НОД двух чисел, подсказка читается как это. «Вы должны написать программу, содержащей функцию, которая будет оценивать наибольшие общие функции делителей с помощью алгоритма Евклида, определяются следующим образом: НОД (а, 0) = НОД (а, Ь) = НОД (b, мода б) б> 0 Ваша функция для вычисления НОД (а, б) рекурсивно и возвращает значение в ах Input функции должны быть выполнены путем нажатия значения а и Ь в стек Ваша главная программа:.. распечатайте описание программы на экране отображается запрос на экране принимает значения а и Ь с клавиатуры (используйте процедуру DEC_IN вы написали ранее.) передать значения а и Ь к функции печати из стоимости НОД (а, прочитать значение в Ье мы [IntX], BX мы ах, 9; печать быстрое мов Dx, PROMPT2 INT 21h вызов dec_in; прочитать значение в Ье мы [Инта], BX называть calc_GCD мов BX, [НОД] мы ах, 9; печать выхода этикетки мы ах, prompt3 INT 21h вызов dec_out; отобразить значение в ОМ (GCD) dec_in:; сохранить регистры нажмите ах толчок дх исключающие Ьй, BX; BX держит НАКОПЛЕННЫЕ входные мы ах, 1; прочитать обугленного кп INT 21h; читать в аль while1: КСС аль, 0Dh; символ = CR? JE Финис; если да, то мы сделали нажимной топор; сохранить считанный символ мов топор, 10; набор для умножения MUL BX; дх: ах прочитать значение в Ье мы [Инта], BX называть calc_GCD мов BX, [НОД] мы ах, 9; печать выхода этикетки мы ах, prompt3 INT 21h вызов dec_out; отобразить значение в ОМ (GCD) dec_in:; сохранить регистры нажмите ах толчок дх исключающие Ьй, BX; BX держит НАКОПЛЕННЫЕ входные мы ах, 1; прочитать обугленного кп INT 21h; читать в аль while1: КСС аль, 0Dh; символ = CR? JE Финис; если да, то мы сделали нажимной топор; сохранить считанный символ мов топор, 10; набор для умножения MUL BX; дх: ах прочитать значение в Ье мы [Инта], BX называть calc_GCD мов BX, [НОД] мы ах, 9; печать выхода этикетки мы ах, prompt3 INT 21h вызов dec_out; отобразить значение в ОМ (GCD) dec_in:; сохранить регистры нажмите ах толчок дх исключающие Ьй, BX; BX держит НАКОПЛЕННЫЕ входные мы ах, 1; прочитать обугленного кп INT 21h; читать в аль while1: КСС аль, 0Dh; символ = CR? JE Финис; если да, то мы сделали нажимной топор; сохранить считанный символ мов топор, 10; набор для умножения MUL BX; дх: ах BX держит НАКОПЛЕННЫЕ входные мы ах, 1; прочитать обугленного кп INT 21h; читать в аль while1: КСС аль, 0Dh; символ = CR? JE Финис; если да, то мы сделали нажимной топор; сохранить считанный символ мов топор, 10; набор для умножения MUL BX; дх: ах BX держит НАКОПЛЕННЫЕ входные мы ах, 1; прочитать обугленного кп INT 21h; читать в аль while1: КСС аль, 0Dh; символ = CR? JE Финис; если да, то мы сделали нажимной топор; сохранить считанный символ мов топор, 10; набор для умножения MUL BX; дх: ах
Herebutnot
1

голосов
2

ответ
2.2k

Просмотры

как принимать входные данные с большим (многоразрядным) числами

Как принимать входные данные с большим числом затем сравнить его, например, мы ах, 01h INT 21h я хочу, чтобы принять более одного символов и переместить этот номер в Аль доступ к порту в моргнув во главе с входом примера пользователя пользователь хочет к типу 32, но один символ был мы бл, аль задержки: мы CTR, «0» мов ал, бли мы ого, 100 пропуска: х: мы ал, 00000000b мов ого, 378h из дх, ал петли X Z: мы алы, бл мы де, 378h из дх, ал петли г вкл Ctr Cmp CTR, '8' Дж выхода JMP пропустить выход: Mov ах, 4ch INT 21h End старт
silaunos pavlos
1

голосов
2

ответ
822

Просмотры

Как найти длину строки, а затем использовать эту длину, чтобы запустить функцию Loop с использованием ого?

msg2 INT 21h мы BX, -1; стартовое место -1 loopas: LODSB; получает символ вкл BX; ++ КСС Al, 13, проверяет, является ли это конец JZ выход CMP аль, 48; проверки, если меньше 0 ДБ loopas CMP аль, 57; проверяет, является ли более чем на 9 JA loopas мы ах, Ьй, если строка заканчивается мы ой, 10 вызов printina мы ах, 2; печатает новые линию мов Д.Л., 32 INT 21h JMP loopas printina ргос рядом; печатает место skloop: XOR дх, дх ДИВ сх толкать дх КСС топор, 0 JE отменить вызов skloop отменить: поп дх pdig: добавить Д.Л., 30h КСС Д.Л., 39ч JLE PCH добавить Аl, 7 РСН: мов ах, 2 INT 21h RET; возвращается в цикл printina ENDP выхода: мы ах, 4c00h, выход INT конец 21h начать Так как же я получаю строку «eilute» длину, а затем использовать сй, чтобы сохранить длину и вместо того, чтобы использовать цикл, как добавляя +1 каждый раз, когда до него доходит до конца, он использует длину строк и функцию Loop? 2 INT 21h RET; возвращается в цикл printina ENDP выхода: мы ах, 4c00h, выход INT конец 21h начать Так как же я получаю строку «eilute» длину, а затем использовать сй, чтобы сохранить длину и вместо того, чтобы использовать цикл, как добавляя +1 каждый раз, когда до него доходит до конца, он использует длину строк и функцию Loop? 2 INT 21h RET; возвращается в цикл printina ENDP выхода: мы ах, 4c00h, выход INT конец 21h начать Так как же я получаю строку «eilute» длину, а затем использовать сй, чтобы сохранить длину и вместо того, чтобы использовать цикл, как добавляя +1 каждый раз, когда до него доходит до конца, он использует длину строк и функцию Loop?
Johnie78
1

голосов
1

ответ
221

Просмотры

Функция Putch в ассемблере через стек

Я делаю программу на языке ассемблера, в котором я пытаюсь отобразить символ на консоли, нажав на символ в стеку. Я использую службы № 2 от прерывания 21H для печати символа. Когда я запустить программу, символ отображается на консоли, но проблема в том, что он отображает бесконечное число раз на консоли. Я не использую никаких циклов, так что не знаю, почему это напечатано бесконечное число раз на консоли. Помощь необходима, чтобы выяснить проблему. Я использую EMU8086. .MODEL небольшой .data st1 дБ "А", '$' .Code главных прока мы AX, @ данные MOV DS, AX AX мов, смещение st1 нажимного AX вызова Putch Putch процедурного рядом мов BP, SP мов DX, [BP +- ] мы AH, 2 INT 21H RET Putch ENDP мы AH, 4CH INT 21H конец главных
Yousaf

Просмотр дополнительных вопросов