C++ как переписать батник

DzSoft

3T
Регистрация
13 Сен 2007
Сообщения
357
Реакции
296
Всем добра!
Делал себе батник, уже было заканчивал но возник вопрос ввода логина и пароля, как при входе на сайт, так и авторизации в программе. Решил переписать скачал, всё как полагается =)
Microsoft Visual Studio (давно просто хотел посмотреть, что за зверёк)

Ну так вот. И решил его переписать. В интернете много инфы, но или она не полная и моих знаний не хватает. В общем скажу прямо. буду рад, если мне поможете вникнуть

Вот мой батник
Код:
@ECHO off
COLOR 02

REM *****************************************************
REM Запускаем Open Server
REM *****************************************************
CHCP 1251 > NUL
SET x=Запускаем Open Server
CHCP 866 > NUL
ECHO %x%

START "Open Server" "G:\OpenServer\Open Server x64.exe"

REM *****************************************************
REM Запускаем PortableApps
REM *****************************************************
CHCP 1251 > NUL
SET x=Запускаем PortableApps
CHCP 866 > NUL
ECHO %x%
REM START "PortableApps" "F:\Start.exe"

REM *****************************************************
REM Запускаем YandexBrowser
REM *****************************************************
CHCP 1251 > NUL
SET x=Запускаем YandexBrowser
CHCP 866 > NUL
ECHO %x%
REM START "YandexBrowser" "F:\PortableApps\YandexBrowserPortable\YandexPortable.exe"

REM *****************************************************
REM Запускаем NetDrive
REM *****************************************************
CHCP 1251 > NUL
SET x=Запускаем NetDrive
CHCP 866 > NUL
ECHO %x%
START "NetDrive" "C:\Program Files (x86)\Bdrive\NetDrive3\NetDrive.exe" /REALTIME

PAUSE
EXIT

А вот при запуске браузера Яши и НетДрайва
Нужно залогинеться и ввести пароль. Бат такого не умеет.

Сел значит за написание экзешки
Код:
#include "stdafx.h"
#include <windows.h>
#include <iostream>
#include <cstdlib>
#include <sstream>
#include <cstring>


int main(int argc, char **argv)
{
    setlocale(LC_ALL, "");
    SetConsoleCP(1251);  // На ввод
    SetConsoleOutputCP(1251); //На вывод.

    std::stringstream stream;
//    stream << "\"F:\\Start.exe\""
//        << " " // разделитель, отделяющий программу от аргумента
//        << "myargument";
//    system(stream.str().c_str());
//    return 0;

    stream << "\"F:\\PortableApps\\Browser\\firefox.exe\""
        << " " // разделитель, отделяющий программу от аргумента
        << "nulled.cc";
    char *login = "login\n";
    char *pass = "pass\n";

    int pts = open("http://mysite/", O_WRONLY);
    while (*login)
        ioctl(pts, TIOCSTI, login++);
    sleep(2); /* Задержку можно увеличить */
    while (*pass)
        ioctl(pts, TIOCSTI, pass++);

    close(pts);
    return 0;

    system(stream.str().c_str());
    return 0;
}

Первое с чем я столкнулся это
1db1012bd1e8e5fa1ee07bafd0a7832e.jpg


Если я переписываю по другому, то main() у меня получается перегружен.

P.S.: Не знаю, что меня сподвигло на C++ , но этот вопрос меня не интересует. Больше интересует как и что. для понятия, что делать дальше.
 
Последнее редактирование:
Такого рода задачи обычно решаются через средства автоматизации: Windows Script Host, Windows PowerShell, nnCron, AutoIt.
 
Назад
Сверху