stdin, stdout, stderr

Тема в разделе "WASM.BEGINNERS", создана пользователем Semiono, 11 мар 2009.

  1. Semiono

    Semiono Member

    Публикаций:
    0
    Регистрация:
    27 ноя 2005
    Сообщения:
    793
    Хочу передавать параметры в программу, как это обычно в консольных прогах бывает.
    Это подходит? -> msdn.microsoft.com/en-us/library/c565h7xx(VS.80,printer).aspx
    Можно ли в проге зарезервировать переменные типа var1 db ? var2 db ?
    Чтобы потом их заполнить из консоли юзером?
    Хотя ini-файлом влияние из вне тоже пойдёт как вариант...
     
  2. stellaco

    stellaco New Member

    Публикаций:
    0
    Регистрация:
    11 дек 2008
    Сообщения:
    193
    BSS сегмент чтоли?.. если правильно всё понял..то можно
     
  3. Semiono

    Semiono Member

    Публикаций:
    0
    Регистрация:
    27 ноя 2005
    Сообщения:
    793
    Хочу зделать примитивный тулс zzzz.exe с функцией FileCopy, но чтоб оно слушало ввод в консоли...
    Типа # zzzz.exe /src C:\file.exe /tar D:\file.exe

    просто я к вводу консоли не знаю с какого края подойти, на msdn лазил там, толь sdin, толь буффер обмена, не знаю где что читать... хорошоб пример был наглядный :dntknw:
     
  4. Phantom_84

    Phantom_84 New Member

    Публикаций:
    0
    Регистрация:
    6 июн 2007
    Сообщения:
    820
    Это называется строкой параметров или командной строкой. Непосредственного отношения к консольным приложениям не имеет, т.к. строка параметров может быть и у GUI-приложений.
    Наводка: msdn GetCommandLine
     
  5. Semiono

    Semiono Member

    Публикаций:
    0
    Регистрация:
    27 ноя 2005
    Сообщения:
    793
    +1

    Process and Thread Functions - отличный топик на msdn! :)
     
  6. Phantom_84

    Phantom_84 New Member

    Публикаций:
    0
    Регистрация:
    6 июн 2007
    Сообщения:
    820
    Непонятно излагаешь. Но ответ однозначный - да. Можно организовать и диалоговый режим в консольном приложении, и естественно выделить нужные данные из строки параметров. Конкретно для копирования с ini-файлом работать нет никакого смысла. Ты что предполагаешь, что пользователь будет прописывать основные параметры копирования в отдельном файле, прежде чем запутить саму процедуру копирования?
     
  7. Semiono

    Semiono Member

    Публикаций:
    0
    Регистрация:
    27 ноя 2005
    Сообщения:
    793
    я для начала только хочу научиться как это работает, а по ходу появятся идеи как это лучше реализовать. хочу собрать для начала все функции работы с файлами (не особо навороченные, без всяких крипто- итп.) и диалог наладить через GetCommandLine (Thnx!). Однако через скрипт тоже может пригодиться, так как я пока "исследую" сами функции и пока ограничиваюсь наивными примерами, походу я в фасм тоже не гуру :lol:

    Забавно, но я почти ничего не нагуглил из того что хочется, никаких кусков исходников на тему. Вывод таков, что это реально пробел в програмировании под windows на хотябы даже masm32 ;-
     
  8. MSoft

    MSoft New Member

    Публикаций:
    0
    Регистрация:
    16 дек 2006
    Сообщения:
    2.854
    Если тебе нужно общение через ком. строку, то тебе нужна только одна функция - GetCommandLine. А дальше ты уже сам парсишь строку, разбиваешь ее на части, выделяешь переменные и т.д.
    Но, как я понял, общение должно быть интерактивным? Тогда тебе нужна консоль. Для создания консоли или изначально компилируешь файл как консольный, или вызываешь AllocConsole (вроде бы так - влом в справочник смотреть). Потом через GetStdHandle узнаешь нужный тебе хендл чтения/записи. Просто запись и чтение можно делать с пом. WriteFile/ReadFile с соответствующими хендлами. Для вывода русского языка строку сначала надо обработать CharToOem. Ну а когда надумаешь рюшечки рисовать, то в мсдн есть все нужное описание
     
  9. Phantom_84

    Phantom_84 New Member

    Публикаций:
    0
    Регистрация:
    6 июн 2007
    Сообщения:
    820
    Этого не может быть, так как практически все полноценные программы работают с файлами, из них как минимум половина обрабатывает строку параметров (хотя по идее должны все). Другое дело, что сейчас на ассемблере этого почти никто не пишет. Чем Си не устраивает? Хотя отчасти я тебя понимаю... При правильном подходе на ассемблере под Windows писать не намного сложнее, чем на высокоуровневом языке. А fasm позволяет почти на 100% контроллировать содержимое создаваемых exe-шников. Хотя при правильной настройке интегрированной среды и использовании гибких в плане настройки компиляторов этим можно управлять и здесь.

    Edited: to Semiono
     
  10. Semiono

    Semiono Member

    Публикаций:
    0
    Регистрация:
    27 ноя 2005
    Сообщения:
    793
    CharToOem Ок! Но я люблю Eng, тем более в таких спесцифических вещах :)
    Phantom_84, угу вкуснее фасма нету ничего! Как вспомнишь этот бегемот VC Studio, страшно!
    Много хламу на винте = хлам в голове ))) fasm можно носить с собой хоть на флопе и везде кодить, кодить, кодить...
     
  11. MSoft

    MSoft New Member

    Публикаций:
    0
    Регистрация:
    16 дек 2006
    Сообщения:
    2.854
    меня так умиляют подобные заявления про компилятор на дискете, благодаря которому кодить хоть в зимбабве можно. А редактор с подсветкой синтаксиса тоже на дискетке тягаете? Отладчик, ида, мсдн (ну в крайнем случае сдк)? Или вы такие гуру, что и без этого кодить можно? А если есть флешка на 4Гб, то пофиг на размеры компилятора.

    Нет, я не выступаю против фасма, но такой аргумент в его пользу имхо смешон


    Great: Редактор с подстветкой синтаксиса можно найти небольшой. Отладчик - ollydbg, тоже помещается легко. IDA аналогично. MSDN есть в инете, на крайний слчай есть файл win32api.hlp который весит около пяти мегабайт с основными нужными функциями, а вообще это помнить надо, сдк хидеры и либы весят немного.
    А вообще непонятно, что вы так взъелись на вполне себе безобидный пост. Никто там не призывал шеллкодировать с флешками в зубах и слюнями изо рта.
    Писать отдельным постом не стал - мое сообщение, как и твое к теме не относится.
     
  12. Semiono

    Semiono Member

    Публикаций:
    0
    Регистрация:
    27 ноя 2005
    Сообщения:
    793
    Я только сказал что визуал студио огромен по сравнению с фасм, а польза где-то примерно одна, как мне кажется.
    фасм подсветка синтакса? мне его IDE нравиться, зачем ещё что-то...
    ollydbg тоже микроскопический, а IDA я не юзаю, я неврубаюсь в него :)
    EmEditor ещё труъ! )

    Great: А фотошоп огромный по сравнению с пеинтом. Такой же аргумент. И хватит оффтопить.
     
  13. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    Тебе еще может потребоваться CommandLineToArgvW
     
  14. MSoft

    MSoft New Member

    Публикаций:
    0
    Регистрация:
    16 дек 2006
    Сообщения:
    2.854
    ну это уже определенно не размер дискетки :)
    хм... не думал, что это так выглядит. Это самый обычный пост. Эмоций в нем не больше, чем в сливном бочке :) Ладно, в след. раз поставлю побольше смайликов :) Просто очень часто выбор между фасмом и всем другим объясняют исключительно влезаемостью файлов на дискету и больше ничем. Мне показалось, что это из того же разряда пост - вот и решил _совершенно_спокойно_ прокомментировать :)
    ну тогда его (как и это сообщение) можно удалить :) И вообще, я тоже хочу красный шрифт :)
     
  15. n1kt0

    n1kt0 Забанен

    Публикаций:
    0
    Регистрация:
    18 июл 2007
    Сообщения:
    160
    36мб весит справочник по апи, радасм - около 30мб, фасм+масм+тасм=~50mb
    короче описывать не буду, но весит всё добро вместе с тузлами мониторинга и ПЕ и и и
    короче на одну флешку 4 гб влезет запросто еще и на гавномузыку останется
     
  16. Phantom_84

    Phantom_84 New Member

    Публикаций:
    0
    Регистрация:
    6 июн 2007
    Сообщения:
    820
    +1
    А мы его порежем и на несколько дискет запишем, а если после негде будет собрать, можно хексредактором просматривать :)
    А аФтАр вроде не против оффтопа, тем более вопрос вроде совместными усилиями разрешили, так что можно теперь и поговорить о наболевшем :)
     
  17. Semiono

    Semiono Member

    Публикаций:
    0
    Регистрация:
    27 ноя 2005
    Сообщения:
    793
    Самое полезное это когда примерчеги бывають! Пусть даже офтопичные. Хотя никто не рискует спускаться с высот, потому флудим. Это только к Great не относиться! Он мне один раз целое приложение написал! Попробую оправдывать оказанное мну высокое доверие...

    Не всётаки доскажу! Когда про размер дискетки идёт речь, на самом деле конечно не в байтах дело,
    а в эстетическом удовольствии. Меня напрягает когда у мну много контента неподконтрольного мне,
    когда я не понимаю что и зачем, и как оказывается что доки апдейты сорсы итп. просто разгребать бывает влом...
    может это и не важно....

    ЗЫ Мне понравилось топег для студентов, раньше я не заглядывал, а там много для меня кажись!