Реклама на сайте Advertise with us

Как на сервере запустить EXE файл?

Расширенный поиск по форуму
 
Новая тема Новая тема   
Автор
Поиск в теме:



С нами с 17.04.06
Сообщения: 23

Ссылка на сообщениеДобавлено: 24/04/06 в 08:52       Ответить с цитатойцитата 

Подскажите, как из Perl запустить модуль, написанный на C++
Я делаю следующее:
Программка на C++
Код:
#include <iostream.h>

int main(){
   cout << "Hello world\n";
   return 0;
}

Создал файл hello.exe
Загрузил его в директорию cgi-bin на сервере
Присвоил атрибут 0755
В Perl использую оператор
Код:
my $ok=system ("hello.exe");
if($ok){print "<p>Ошибка $ok"}else{print "<p>OK};

В результате hello.exe не работает
Что я делаю не так?

0
 

Прожигатель жизни

С нами с 20.10.05
Сообщения: 942
Рейтинг: 638

Ссылка на сообщениеДобавлено: 24/04/06 в 10:14       Ответить с цитатойцитата 

А ОС на сервере какая?
Если *nix то понятное дело почему не запускается...

0
 



С нами с 17.04.06
Сообщения: 23

Ссылка на сообщениеДобавлено: 24/04/06 в 10:16       Ответить с цитатойцитата 


А если Unix, то что тогда делать?

0
 



С нами с 09.03.06
Сообщения: 772
Рейтинг: 143

Ссылка на сообщениеДобавлено: 24/04/06 в 10:21       Ответить с цитатойцитата 

Компилируй прогу прямо на сервере с помощью gcc. Всё должно заработать.

0
 



С нами с 17.04.06
Сообщения: 23

Ссылка на сообщениеДобавлено: 24/04/06 в 10:29       Ответить с цитатойцитата 


Подскажи как это.
Загружаю файл hello.cpp в директорию cgi-bin
А дальше что нужно сделать? Что и откуда нужно запустиь?

0
 

БешаныйСуслег

С нами с 16.06.04
Сообщения: 1322
Рейтинг: 1338

Ссылка на сообщениеДобавлено: 24/04/06 в 11:10       Ответить с цитатойцитата 

Код:

gcc -o hello hello.cpp

0
 

Прожигатель жизни

С нами с 20.10.05
Сообщения: 942
Рейтинг: 638

Ссылка на сообщениеДобавлено: 24/04/06 в 11:15       Ответить с цитатойцитата 

Вряд ли у тебя хватит прав запустить gcc на сервере...

0
 



С нами с 09.03.06
Сообщения: 772
Рейтинг: 143

Ссылка на сообщениеДобавлено: 24/04/06 в 11:19       Ответить с цитатойцитата 

Запускаешь shell. Заливаешь исходники на сервер в какую-нибудь отдельную директорию. Компилируешь "gcc -[нужные ключи] proga.cpp". Результат кладёшь в директорию cgi-bin. Хотя перед этим можно попробовать запустить твою прогу "hello world" из командной строки, всё равно ей CGI параметры не нужны.

0
 



С нами с 17.04.06
Сообщения: 23

Ссылка на сообщениеДобавлено: 24/04/06 в 11:19       Ответить с цитатойцитата 

ghood писал:
Код:

gcc -o hello hello.cpp

Я так и делаю, пишу
Код:
my $ok=system "gcc -o hello hello.cpp";
if(!$ok){print "<p>GCC OK"}else {print "<p>No gcc $ok"};

Завершается с кодом 256. Что это за код и где бы их посмтреть?
Ну, а если прав не хватает, то что делать?

kbot, а что значит "запускаешь shel"? Я для FTP использую WinCom, там есть командная строка, но ни одна команда типа gcc -o hello hello.cpp не проходит, система пишет "500 GCC not udestud"

0
 

Прожигатель жизни

С нами с 20.10.05
Сообщения: 942
Рейтинг: 638

Ссылка на сообщениеДобавлено: 24/04/06 в 11:32       Ответить с цитатойцитата 

Если у тебя только FTP доступ к серву, то откомпилировать ты точно ничего не сможешь...
Чтобы "Запустить shell" пользуйся прогой putty

0
 



С нами с 17.04.06
Сообщения: 23

Ссылка на сообщениеДобавлено: 24/04/06 в 11:50       Ответить с цитатойцитата 


Поставил putty. Там нужно указать HostName.
Допустим указываю ftp-хост - ftp.server.ru . А логин и пароль куда пихать? И еще там есть переключатели - telnet SSH Raw - какой устанавливать? Что там дальше будет, сеанс DOS с сервером установится?

0
 

Криптопохуист

С нами с 05.04.03
Сообщения: 17158
Рейтинг: 6019

Ссылка на сообщениеДобавлено: 24/04/06 в 11:54       Ответить с цитатойцитата 

AT писал:
В результате hello.exe не работает
Что я делаю не так?


Гыгыы icon_smile.gif ты еще спроси почему твой экзешник в броузере не запускается ) Потому что он не сделан для того чтобы запускаться в броузере (а так же под Юниксом icon_smile.gif )

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

Чтобы запустить бинарник на юниксе, его надо скомпилить на юниксе.

Посмотри че за система с помощью команды "uname -a", поставь такую же себе и скомпилируй. Делов-то...

0
 

Прожигатель жизни

С нами с 20.10.05
Сообщения: 942
Рейтинг: 638

Ссылка на сообщениеДобавлено: 24/04/06 в 11:55       Ответить с цитатойцитата 

Обычно SSH или telnet. Логин и пароль спрашивают после соединения.
Что за сервер хоть у тебя? Небось фри-хост какой-нить?

0
 



С нами с 17.04.06
Сообщения: 23

Ссылка на сообщениеДобавлено: 24/04/06 в 12:15       Ответить с цитатойцитата 


Да нет, нормальный платный хост.
При попытке соединения putty появляется окно DOS и висит некторое время. Никакого ввода параметров аторизации не предлагается. А потом отрубается.
Странно, что из программы на Perl не загружается этот компилятор. Может такое быть, что он не установлен?

0
 

Криптопохуист

С нами с 05.04.03
Сообщения: 17158
Рейтинг: 6019

Ссылка на сообщениеДобавлено: 24/04/06 в 12:40       Ответить с цитатойцитата 

AT писал:
При попытке соединения putty появляется окно DOS и висит некторое время.

icon_lol.gif
AT писал:
Никакого ввода параметров аторизации не предлагается. А потом отрубается.
Странно, что из программы на Perl не загружается этот компилятор. Может такое быть, что он не установлен?

У тебя файрвол на хосте, надо саппорт просить открыть SSH

0
 

старый зануда

С нами с 26.07.03
Сообщения: 3291
Рейтинг: 1361

Ссылка на сообщениеДобавлено: 24/04/06 в 13:07       Ответить с цитатойцитата 

Cначала выясни у саппорта хоста есть ли у тебя вообще доступ по ssh и будет ли доступ к gcc. Только тогда имеет смысл что-то делать, но имхо, лучше все-таки все отработать на локальной машине под той же операционкой, что и на хост-сервере. Только файлы на С++ надо компилировать вот так: gcc hello hello.cpp -lstdc++ или g++ hello hello.cpp, как пойдет icon_smile.gif
Только не понятно зачем тебе все это...

Всё для Iphone & Ipad

3
 



С нами с 17.04.06
Сообщения: 23

Ссылка на сообщениеДобавлено: 24/04/06 в 13:29       Ответить с цитатойцитата 

Pentarh писал:
icon_lol.gif
У тебя файрвол на хосте, надо саппорт просить открыть SSH

Ох.. Если ты имеешь ввиду мой комп, то фаэвол конечно есть, может быть он и мешает. Не знаю как его отключить. К примеру, при загрузке по FTP более 10 файлов за один раз, от отрубает FTP к чертовой матери. Только перезагрузкой системы можно все восстановить.
В общем, написал письмо хостеру - почему не получается компиляция из system "gcc -o hello hello.cpp" Подожду что ответит.
Цитата:
Только не понятно зачем тебе все это...

Хочу некоторые модули попробовать на C написать, чтоб быстрее обрабатывались большие циклы. А там видно будет. Но проблемку все-равно нужно как-то решать, не могу оставлять нерешенных задач.

0
 



С нами с 17.04.06
Сообщения: 23

Ссылка на сообщениеДобавлено: 24/04/06 в 13:59       Ответить с цитатойцитата 

М-да.. Теперь я начинаю понимать, почему все Сисадмины с такой ненавистью относятся к Windows. icon_sad.gif

0
 

Криптопохуист

С нами с 05.04.03
Сообщения: 17158
Рейтинг: 6019

Ссылка на сообщениеДобавлено: 24/04/06 в 14:40       Ответить с цитатойцитата 

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

А я теперь понимаю почему иногда сисадмины злятся на "непонятливых" юзеров icon_smile.gif



Виндовс и юникс - обе хороши для своего ряда задач. А плохо у тех, у кого руки кривые icon_smile.gif

0
 



С нами с 19.11.03
Сообщения: 3973
Рейтинг: 2362

Ссылка на сообщениеДобавлено: 24/04/06 в 15:00       Ответить с цитатойцитата 

Товарищ AT вам нужно книжечку для Чайников по интересующим темам , и уже некак не заниматься программированием icon_smile.gif , а тем более не спрашивать это тут.

0
 



С нами с 17.04.06
Сообщения: 23

Ссылка на сообщениеДобавлено: 24/04/06 в 17:52       Ответить с цитатойцитата 

xreload писал:
Товарищ AT вам нужно книжечку для Чайников по интересующим темам , и уже некак не заниматься программированием icon_smile.gif , а тем более не спрашивать это тут.

Ты хоть сам то понимаешь, что сказал? Для чего нужна книжечка, пусть даже для чайников, если "уже некак не заниматься программированием".. ??? icon_smile.gif icon_smile.gif Если не заниматься программированием, то и книжки "для чайников" читать не обязательно. В общем, в следующий подумай, прежде чем что-то сказать.
______________
А проблема решена!!! Решена после обращения к сисадмину.
Вот работающий код:
Компиляция
Код:
$ok=system "gcc -o hello.cgi hello.cpp -lstdc++";

А вот запуск программки. Оказалось, что надо указывать полный путь (может быть это особенность хоста?)
Код:
$ok=system ("/hosting/clients/server.ru/www/cgi-bin/hello.cgi");

В результате получаем
HELLO WORLD!!!!!!
Ну, а дальшее - дело техники. Теперь можно и в книжку заглянутьicon_smile.gif
Благодарю за помощь
з.ы. Linux все-таки поставлю на комп, теперь понятно для чего он нужен.

0
 



С нами с 19.11.03
Сообщения: 3973
Рейтинг: 2362

Ссылка на сообщениеДобавлено: 25/04/06 в 00:31       Ответить с цитатойцитата 

Да у тебя еще и с русским языком проблемы студент , в топку вообщем.
Что ты вообще на этой борде кстати делаешь я так и не понял ?

0
 
Новая тема Новая тема   

Текстовая реклама в форме ответа
Заголовок и до четырех строчек текста
Длина текста до 350 символов
Купить рекламу в этом месте!


Перейти:  



Спонсор раздела Стань спонсором этого раздела!

Реклама на сайте Advertise with us

Опросы

Рецепт новогоднего блюда 2022



Обсудите на форуме обсудить (11)
все опросы »