Войти

Показать полную графическую версию : SendMail.exe - перекомпилировать


Evgesha_572
25-06-2008, 14:26
Добрый день!
Есть исполняемый файлик , называется SendMail.exe, в котором прописан DNS-имя моего почтового сервера.
Сейчас встала необходимость изменить DNS-имя на внутренний IP адрес почтового сервера.
Подскажите пожалуйста решение данной проблемы (каким программами можно открыть данный файл и изменить конфигурацию его).
Спасибо!

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




#--=Use units=--
use MIME::QuotedPrint;
use MIME::Base64;
use Mail::Sendmail;

#--=Signal redefinition=--

#--=Var=--
#--=Subs=--

#--=Main program=--
die "Usage parameters is absent.\nUse:\n SendMail MailTo MailFrom AttachedFile\n" if $#ARGV ne 2;
%mail=(
from => $ARGV[1],
to => $ARGV[0],
subject => 'AutoSender',
smtp => 'xxx.xxx.ru'
);
$boundary = "====" . time() . "====";
$mail{'content-type'} = "multipart/mixed; boundary=\"$boundary\"";
$message = encode_qp('');
$file = $ARGV[2];
$name = ($file=~/\\(\w+\.\w+)$/?$1:$file);
open (F, $file) or die "Cannot read $file: $!";
binmode F; undef $/;
$mail{body} = encode_base64(<F>);
close F;

$boundary = '--'.$boundary;
$mail{body} = <<END_OF_BODY;
$boundary
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

$message
$boundary
Content-Type: application/octet-stream; name="$name"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="$name"

$mail{body}
$boundary--
END_OF_BODY

sendmail(%mail) || print "Error: $Mail::Sendmail::error\n";

mrcnn
26-06-2008, 15:04
Код на Perlе, и он не компилируется а интерпретируется. Хотя есть способы и из Perl скрипта получить exeшник. скрипт на Perl можно изменить в простом блокноте.

Не понял, как связан код и exe файл?

В exe файле если адрес хранится в строке или наборе строк, то любым редактором ресурсов можно подправить без заморочек с кодом.

Evgesha_572
26-06-2008, 15:07
mrcnn, ты можешь из предложенной мною срипта получить экзешник? но при этом изменить строчку smtp => 'xxx.xxx.ru' на нужную

Drongo
26-06-2008, 16:32
mrcnn, В exe файле если адрес хранится в строке или наборе строк »Я пробовал WinHex, но так и не нашёл нужной искомой строки. Можешь это сделать? Чтобы и я понял тоже как нужно. Буду признателен.

mrcnn
26-06-2008, 18:21
http://xpoint.ru/forums/programming/perl/nursery/thread/29665.xhtml

http://www.indigostar.com/perl2exe.htm

Редактор ресурсов != hex-редактор

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

Drongo
28-06-2008, 16:42
mrcnn, Редактор ресурсов != hex-редактор »А с каких пор WinHex был редактором ресурсов?! Я понимаю это выражение " != " - не равно на С++. :) Потому и спрашиваю, если конечно я правильно понял вашу мысль. :)




© OSzone.net 2001-2012