Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Problem z kodem, typy danych

Ostatnio zmodyfikowano 2013-03-10 11:16
Autor Wiadomość
Tivx
Temat założony przez niniejszego użytkownika
Problem z kodem, typy danych
» 2013-03-10 10:41:13
Juz raz pisałem na tym forum ale temat trafił do bezuzytecznych a ja nadal mam problem,
postaram się lepiej opisać mój problem
Załozenia:
program, ma otworzyć plik.txt i zapisać dane do tablicy  tylko, ze dane w plik.txt wygladają nast.
1000,VK_UP
3000,VK_DOWN
wiec musze najpierw rozdzielic separator(,) i zapisac do odpowiednich kolumn
następnie program wykonuje nacisniecia klawiszów w odpowiednich czasach
i mam problem z typami danych, CO NIE ZMIENIE TO JEST bład
daje cały kod:
C/C++
#include <windows.h>
#include <iostream>
#include <fstream>

char move( std::string time, std::string przycisk ) {
    keybd_event( przycisk, 0, 0, 0 ); // nacisniecie
    std::cout << "Wykonywanie ruchu!";
    Sleep( time );
    keybd_event( przycisk, 0, KEYEVENTF_KEYUP, 0 );
   
   
   
   
}
std::string magic( const std::string & str, const char ch, const unsigned int v )
{
    std::string ret = "";
    for( size_t i = 0, tmp = 0; i < str.size(); ++i ) {
        if( str[ i ] == ch ) {
            if( tmp > v ) break;
            else ++tmp;
           
        }
        else if( tmp == v ) ret += str[ i ];
       
    }
    return ret;
}

std::string tab[ 8 ][ 2 ];
void wczytaj()
{
    std::ifstream in( "plik.txt" );
    int licznik = 1;
    std::string wers[ 100 ];
   
    while( getline( in, wers[ licznik ] ) ) {
        tab[ 1 ][ 0 ] = magic( wers[ licznik ], ',', 0 );
        tab[ 1 ][ 1 ] = magic( wers[ licznik ], ',', 1 );
        licznik++;
    }
   
}

int main()
{
    HWND hWnd = GetActiveWindow();
   
   
    /*int tab[8][2] = {{500,VK_UP},{500,VK_UP},{500,VK_UP}, {500, VK_UP},{500,VK_UP},{200,VK_UP},{400,VK_UP}, {500, VK_UP}};*/
   
    std::cout << "TESCIK";
    Sleep( 5000 );
    int i;
    for( i = 0; i <= 10; i++ )
    {
       
        move( tab[ i ][ 0 ], tab[ i ][ 1 ] );
        std::cout << "RUCH";
       
    }
}


  C:\Documents and Settings\Administrator\Pulpit\BOT\Source\moje.cpp In function 'char move(std::string, std::string)':
6 29 C:\Documents and Settings\Administrator\Pulpit\BOT\Source\moje.cpp [Error] cannot convert 'std::string {aka std::basic_string<char>}' to 'BYTE {aka unsigned char}' for argument '1' to 'void keybd_event(BYTE, BYTE, DWORD, DWORD)'
8 13 C:\Documents and Settings\Administrator\Pulpit\BOT\Source\moje.cpp [Error] cannot convert 'std::string {aka std::basic_string<char>}' to 'DWORD {aka long unsigned int}' for argument '1' to 'void Sleep(DWORD)'
9 43 C:\Documents and Settings\Administrator\Pulpit\BOT\Source\moje.cpp [Error] cannot convert 'std::string {aka std::basic_string<char>}' to 'BYTE {aka unsigned char}' for argument '1' to 'void keybd_event(BYTE, BYTE, DWORD, DWORD)'

Jak mam to zrobic naprawde kombinuje juz ze 2 dni i nic ;/
CAŁY KOD JEST POSKLEJANY DOPIERO UCZE SIĘ C++ !!!
Mam zły typ danych wiem! Tylko jakikolwiek typ danych powoduje u mnie błąd! Kombinuje z tym od 2 dni prosze mnie przynajmniej jakos naprowadzic :(
P-78039
xevuel
» 2013-03-10 11:16:16
» KursyKurs C++ kurs
Posklejałeś kod, a nie masz pojęcia jak działają poszczególne części. Gdybyś przeczytał logi kompilatora ze zrozumieniem i znał podstawy C++, wiedziałbyś jak to poprawić. Chcesz się uczyć, pisz samemu kod, a nie kopiuj z internetu. Jeśli Twoim zamiarem jest napisanie bota, wiedz, że tego typu oprogramowanie jest tu zabronione. Zamykam.
P-78041
« 1 »
  Strona 1 z 1