Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» Необходимо консольную утилиту для Windows

Автор: exMIB
Дата сообщения: 30.10.2003 22:04
Необходимо консольную утилиту для Windows, чтобы принятый ею параметр она сохраняла в простой файл TXT

Дополнительные требования:

1) размер файла - значения не имеет
2) ОС Windows 95/98, NT/2000/XP
3) относительно скрытный запуск - без появления (даже временно) иконок на панели задач и без открытия перед глазами любых окон
4) не плохо, скомпилированный EXE, но необязательно
5) прога должна понимать в параметрах, которые будут ей передаваться знаки "запятая", "-" и "+"
6) желательно выполняться в таком виде proga.exe [параметр] [диск:\путь\файл.txt]
7) в созданном файле txt, ничего лишнего, кроме переданного параметра, быть не должно
8) если будет создаваться новый файл с именем, которое уже есть, то новый файл должен полностью перезаписать существующий, а не добавлять просто новые строки в существующем (это в основном бат-файлов касается)

Желательно с исходником

Можно на Pascal, Delphi или средствами ОС
Автор: vu1tur
Дата сообщения: 30.10.2003 22:17
exMIB

Цитата:
Кто сможет написать?

Написал. Куда слать?
Автор: odl455
Дата сообщения: 30.10.2003 22:19
echo params > file.txt
Автор: vu1tur
Дата сообщения: 30.10.2003 22:20
сказал бы хоть что нужно...
Автор: odl455
Дата сообщения: 30.10.2003 22:24
vu1tur


Цитата:
сказал бы хоть что нужно...


Это вопрос или что?


Добавлено
Если вопрос то непонятно тогда как ты сначала сделал и уже готов слать а теперь спрашиваешь что нужно
Автор: vu1tur
Дата сообщения: 30.10.2003 22:28
odl455
а шуток без смайликов мы уже не понимаем
Автор: odl455
Дата сообщения: 30.10.2003 22:33
vu1tur

Было бы прикольно если бы ты отослал и написал что отослал. А потом бы exMIB
допытывался куда ты послал Не забудь в следующий раз
Автор: exMIB
Дата сообщения: 30.10.2003 23:58
vu1tur
Да, очень смешно
odl455
Уважаю, за то что понятливый

Просто спешил и сам вопрос запостил в описание к теме и не подумал, что его здесь видно не будет

Добавлено
Шапку поправил
Автор: vu1tur
Дата сообщения: 31.10.2003 00:04
exMIB
a.bat:

Код:
echo %1 >%2
Автор: ShIvADeSt
Дата сообщения: 31.10.2003 00:12
exMIB

закомпиляй в дельфи.

program Txt;

uses Windows;

{$APPTYPE CONSOLE}

var
Par:string;
F1:TextFile;
begin
Par:=ParamStr(1);
AssignFile(F1,'File.txt');
rewrite(F1);
writeln(F1,Par);
CloseFile(F1);
end.

вроде должно работать. Пусть другие посмотрят поправят если есть ошибки

Автор: vu1tur
Дата сообщения: 31.10.2003 00:14
ShIvADeSt
лол, и зачем это? моя "программа" занимает 11 байт
твоя же... да еще и в дельфях... ой ...
Автор: ShIvADeSt
Дата сообщения: 31.10.2003 06:18
vu1tur

Цитата:
лол, и зачем это? моя "программа" занимает 11 байт
твоя же... да еще и в дельфях... ой ...

Ну а моя занимает 16 кб, а если UPX то 9 кб. Я же не говорил, что использую форму. Ты внимательно посмотри

Цитата:
uses Windows;

Где нибудь видно Forms? . Я стараюсь писать такие вещи исключительно на АПИ. Вывод: Дельфи это не обязательно большая программа, это ИДЕ. А вот что ты в ней применяешь это другое дело.
Автор: roma
Дата сообщения: 31.10.2003 06:54
ShIvADeSt
скажи для тебя что 11 БАЙТ и 9 КИЛОБАЙТ цифры одного порядка?
при этом твоя прога под дос например работать явно не будет...
vu1tur
браво...
Автор: Tropin
Дата сообщения: 31.10.2003 07:38
ShIvADeSt
Вопрос, а нафига
Код: uses Windows;
Автор: Sleepwalker
Дата сообщения: 31.10.2003 08:17
Спорщики
у приведеных примеров есть один недостаток (правда, это условие не оговорено в задании, что странно). Файл-то каждый раз заново создается. причем в случае с батником это никак не устраняется.
Автор: UncoNNecteD
Дата сообщения: 31.10.2003 08:23
Sleepwalker
почему?
сделай так -

echo %1 >buffer.dat
copy buffer.dat+%2

ну или в этом роде чтото.
Автор: Tropin
Дата сообщения: 31.10.2003 09:55
UncoNNecteD
тогда уж так
Код: echo %1 >>%2
Автор: f_serg
Дата сообщения: 31.10.2003 13:18
Tropin
Не, у UncoNNecteD-да новые строки в начало файла вставляются.
Автор: vu1tur
Дата сообщения: 31.10.2003 13:21

Цитата:
тогда уж так
Код:echo %1 >>%2

именно.
ShIvADeSt

Цитата:
Я стараюсь писать такие вещи исключительно на АПИ

А я стараюсь юзать ОС. Там много чего уже написано за тебя
Автор: exMIB
Дата сообщения: 31.10.2003 17:20
vu1tur
Tropin
Хорошо, так мне подходит:

Код: echo %1>>%2
Автор: woffer
Дата сообщения: 31.10.2003 22:46

Цитата:
у приведеных примеров есть один недостаток (правда, это условие не оговорено в задании, что странно). Файл-то каждый раз заново создается. причем в случае с батником это никак не устраняется

устраняется, exist - проверка сущ-я(cинаксис не помню). хотя, нет, помню

Код: if exist d goto 2
echo file not found
:2
Автор: vu1tur
Дата сообщения: 31.10.2003 23:01
exMIB

Цитата:
Батник не понимает запятых

a.bat "1234,4123" 1.txt

правда в 1.txt будут кавычки с этим батником.

Цитата:
Теперь как такой батник запихать в EXE, а то виндовс для батников экраны открывает, а надо скрытно

скрытно.. хм... а зачем?
Автор: UncoNNecteD
Дата сообщения: 01.11.2003 04:18
если пихать в exe то лучше юзать ассемблер и писать все на нем
ну или на другом языке, повыше левелом.
Прелесть бата в том что он бат!
По пункту 1 - можно запускать из ехе WinExec'ом с 0й видимостью.
По 2 - вариантов нет пока.

Автор: exMIB
Дата сообщения: 01.11.2003 23:48
vu1tur

Цитата:
скрытно.. хм... а зачем?

Ну так как это должно происходить автоматически в заданное время, то чтобы не мелькали перед глазами открывающиеся окна
Автор: ShIvADeSt
Дата сообщения: 03.11.2003 00:33

Цитата:
Ну так как это должно происходить автоматически в заданное время, то чтобы не мелькали перед глазами открывающиеся окна

А что ярлык никак нельзя создать? По моему это для тебя больше подойдет. Кстати, чтобы строки добавлялсь в старый файл в моем коде надо просто изменить Rewrite на Append и ввести проверку на существование файла. И еще, если надо чтобы прога работала под ДОСОМ напиши ее на Pascal и скомпилируй в EXE размер 2 кб (кто меньше, толдько чур asm не использовать). . Это по поводу размеров проги и работы под ДОС. И еще если твоя прога официально работает, а не как шпион какой то запихай ее в каконибудь шедулер и не мучайся.
Автор: vu1tur
Дата сообщения: 03.11.2003 00:39
exMIB

Цитата:
Ну так как это должно происходить автоматически в заданное время, то чтобы не мелькали перед глазами открывающиеся окна

оно че у тя каждую минуту будет выполнятся?
Автор: Sleepwalker
Дата сообщения: 03.11.2003 09:07
кстати, а всякие там знаки препинания... паскаль их нормально отрабатывает, или тоже есть проблемы?
Автор: UncoNNecteD
Дата сообщения: 03.11.2003 14:28
Как напишешь так и обрабатывает.
Автор: exMIB
Дата сообщения: 03.11.2003 14:56
Размер файла - значения не имеет
ОС - только Windows
Запуск - скрытно, не в смысле как шпион, а чтобы не появлялись иконки на панели задач, и окна как при запуске батника, идеально как службу запустить, но можно попробовать с помощью спец.программ EXE-шник в службу отправить
Автор: UncoNNecteD
Дата сообщения: 03.11.2003 17:18
Дык, что вызывает то этот модуль? Что передает ему параметр?
Как ты сделаешь службой если тебе надо в командной строке ему передавать...
Ниче не пойму.

Страницы: 12

Предыдущая тема: VB: Написание программы для работы с MySQL-базой


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.