C cod39 program wysypuje się! proszę o pomoc

0

Cześć znalazłem taki programik w internecie niby tutorial jednak nie działa. Chce stworzyć program który mi narysuje code39. Prosze o pomoc w korekcie błędów. Przy kompilacji wyskakują takie błędy

Compiling and linking file: zadawanie.c
C:\DOCUMENTS AND SETTINGS\DELL\MOJE DOKUMENTY\PROGRAMOWANIE C\ZADAWANIE.C(19) : warning 301 - #Pragma 'hdrstop' is not known to the system
C:\DOCUMENTS AND SETTINGS\DELL\MOJE DOKUMENTY\PROGRAMOWANIE C\ZADAWANIE.C(3) : error 217 - 'TForm' is not the name of a class
C:\DOCUMENTS AND SETTINGS\DELL\MOJE DOKUMENTY\PROGRAMOWANIE C\ZADAWANIE.C(14) : warning 200 - Default int type assumed here
C:\DOCUMENTS AND SETTINGS\DELL\MOJE DOKUMENTY\PROGRAMOWANIE C\ZADAWANIE.C(14) : error 25 - Terminating semicolon missing
C:\DOCUMENTS AND SETTINGS\DELL\MOJE DOKUMENTY\PROGRAMOWANIE C\ZADAWANIE.C(21) : warning 200 - Default int type assumed here
C:\DOCUMENTS AND SETTINGS\DELL\MOJE DOKUMENTY\PROGRAMOWANIE C\ZADAWANIE.C(21) : error 192 - An object of type '<ptr>TForm1' cannot be assigned to an object of type 'int'
C:\DOCUMENTS AND SETTINGS\DELL\MOJE DOKUMENTY\PROGRAMOWANIE C\ZADAWANIE.C(22) : error 199 - 'WINAPI' found where a type specifier was expected (Perhaps you should #include <WINDOWS.H>)
C:\DOCUMENTS AND SETTINGS\DELL\MOJE DOKUMENTY\PROGRAMOWANIE C\ZADAWANIE.C(55) : error 589 - Identifier name missing in declaration
C:\DOCUMENTS AND SETTINGS\DELL\MOJE DOKUMENTY\PROGRAMOWANIE C\ZADAWANIE.C(109) : error 323 - 'Form1' has already been declared
C:\DOCUMENTS AND SETTINGS\DELL\MOJE DOKUMENTY\PROGRAMOWANIE C\ZADAWANIE.C(117) : error 79 - 'code39sign' has not been declared
C:\DOCUMENTS AND SETTINGS\DELL\MOJE DOKUMENTY\PROGRAMOWANIE C\ZADAWANIE.C(126) : error 313 - Function 'strlen' has not been declared (Perhaps you should #include <STRING.H>)
C:\DOCUMENTS AND SETTINGS\DELL\MOJE DOKUMENTY\PROGRAMOWANIE C\ZADAWANIE.C(137) : error 79 - 'clBlack' has not been declared
C:\DOCUMENTS AND SETTINGS\DELL\MOJE DOKUMENTY\PROGRAMOWANIE C\ZADAWANIE.C(148) : error 280 - 'Form1' is of type 'TForm1', which has not yet been defined, so reference to its members is illegal
C:\DOCUMENTS AND SETTINGS\DELL\MOJE DOKUMENTY\PROGRAMOWANIE C\ZADAWANIE.C(148) : error 118 - The lefthand argument of -> must be a pointer to a structure, not 'int'
C:\DOCUMENTS AND SETTINGS\DELL\MOJE DOKUMENTY\PROGRAMOWANIE C\ZADAWANIE.C(148) : fatal 233 - Compilation abandoned
Compilation failed.

</c`code>`

class TForm1 : public TForm
{
__published:	// IDE-managed Components
        TImage *Image1;
        TButton *Button1;
        TEdit *Kod;
        void __fastcall Button1Click(TObject *Sender);
private:	// User declarations
public:		// User declarations
        __fastcall TForm1(TComponent* Owner);
};
extern PACKAGE TForm1 *Form1;




#pragma hdrstop

USEFORM(Form1);
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
        try
        {
                 Application->Initialize();
                 Application->CreateForm(__classid(TForm1), &Form1);
                 Application->Run();
        }
        catch (Exception &exception)
        {
                 Application->ShowException(&exception);
        }
        catch (...)
        {
                 try
                 {
                         throw Exception("");
                 }
                 catch (Exception &exception)
                 {
                         Application->ShowException(&exception);
                 }
        }
        return 0;
}



char code39sign[43] = {
      '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
      'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J',
      'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T',
      'U', 'V', 'W', 'X', 'Y', 'Z', '-', '.', ' ', '$',
      '/', '+', '%'};

char code39bars[43][9] = {
        {'N', 'N', 'N', 'W', 'W', 'N', 'W', 'N', 'N'},
        {'W', 'N', 'N', 'W', 'N', 'N', 'N', 'N', 'W'},
        {'N', 'N', 'W', 'W', 'N', 'N', 'N', 'N', 'W'},
        {'W', 'N', 'W', 'W', 'N', 'N', 'N', 'N', 'N'},
        {'N', 'N', 'N', 'W', 'W', 'N', 'N', 'N', 'W'},
        {'W', 'N', 'N', 'W', 'W', 'N', 'N', 'N', 'N'},
        {'N', 'N', 'W', 'W', 'W', 'N', 'N', 'N', 'N'},
        {'N', 'N', 'N', 'W', 'N', 'N', 'W', 'N', 'W'},
        {'W', 'N', 'N', 'W', 'N', 'N', 'W', 'N', 'N'},
        {'N', 'N', 'W', 'W', 'N', 'N', 'W', 'N', 'N'},
        {'W', 'N', 'N', 'N', 'N', 'W', 'N', 'N', 'W'},
        {'N', 'N', 'W', 'N', 'N', 'W', 'N', 'N', 'W'},
        {'W', 'N', 'W', 'N', 'N', 'W', 'N', 'N', 'N'},
        {'N', 'N', 'N', 'N', 'W', 'W', 'N', 'N', 'W'},
        {'W', 'N', 'N', 'N', 'W', 'W', 'N', 'N', 'N'},
        {'N', 'N', 'W', 'N', 'W', 'W', 'N', 'N', 'N'},
        {'N', 'N', 'N', 'N', 'N', 'W', 'W', 'N', 'W'},
        {'W', 'N', 'N', 'N', 'N', 'W', 'W', 'N', 'N'},
        {'N', 'N', 'W', 'N', 'N', 'W', 'W', 'N', 'N'},
        {'N', 'N', 'N', 'N', 'W', 'W', 'W', 'N', 'N'},
        {'W', 'N', 'N', 'N', 'N', 'N', 'N', 'W', 'W'},
        {'N', 'N', 'W', 'N', 'N', 'N', 'N', 'W', 'W'},
        {'W', 'N', 'W', 'N', 'N', 'N', 'N', 'W', 'N'},
        {'N', 'N', 'N', 'N', 'W', 'N', 'N', 'W', 'W'},
        {'W', 'N', 'N', 'N', 'W', 'N', 'N', 'W', 'N'},
        {'N', 'N', 'W', 'N', 'W', 'N', 'N', 'W', 'N'},
        {'N', 'N', 'N', 'N', 'N', 'N', 'W', 'W', 'W'},
        {'W', 'N', 'N', 'N', 'N', 'N', 'W', 'W', 'N'},
        {'N', 'N', 'W', 'N', 'N', 'N', 'W', 'W', 'N'},
        {'N', 'N', 'N', 'N', 'W', 'N', 'W', 'W', 'N'},
        {'W', 'W', 'N', 'N', 'N', 'N', 'N', 'N', 'W'},
        {'N', 'W', 'W', 'N', 'N', 'N', 'N', 'N', 'W'},
        {'W', 'W', 'W', 'N', 'N', 'N', 'N', 'N', 'N'},
        {'N', 'W', 'N', 'N', 'W', 'N', 'N', 'N', 'W'},
        {'W', 'W', 'N', 'N', 'W', 'N', 'N', 'N', 'N'},
        {'N', 'W', 'W', 'N', 'W', 'N', 'N', 'N', 'N'},
        {'N', 'W', 'N', 'N', 'N', 'N', 'W', 'N', 'W'},
        {'W', 'W', 'N', 'N', 'N', 'N', 'W', 'N', 'N'},
        {'N', 'W', 'W', 'N', 'N', 'N', 'W', 'N', 'N'},
        {'N', 'W', 'N', 'W', 'N', 'W', 'N', 'N', 'N'},
        {'N', 'W', 'N', 'W', 'N', 'N', 'N', 'W', 'N'},
        {'N', 'W', 'N', 'N', 'N', 'W', 'N', 'W', 'N'},
        {'N', 'N', 'N', 'W', 'N', 'W', 'N', 'W', 'N'}
        };

char start_stop[9] = {
        'N', 'W', 'N', 'N', 'W', 'N', 'W', 'N', 'N'
        };

int wide_multiply = 2;

TForm1 *Form1;
int curentPos;


// returns 1 if letter is correct, 0 otherwise
int checkLetter(char ch)
{
        for (int i=0; i<43; i++)
                if (code39sign[i] == ch)
                        return 1;

        return 0;
}

// reurns 1 if txt is correct, 0 otherwise
int check(char *txt)
{
        for (unsigned int i=0; i<strlen(txt); i++)
                if (checkLetter(txt[i]) == 0)
                        return 0;

        return 1;
}

void drawSignBars(char bars[])
{
        int nextPos = 0;

        Form1->Image1->Canvas->Brush->Color = clBlack;

        //print bars
        for (int i=0; i<9; i++)
        {
                if (bars[i] == 'W')
                        nextPos = curentPos + 2*wide_multiply;
                else
                        nextPos = curentPos + 2;

                if ((i % 2) == 0)
                        Form1->Image1->Canvas->Rectangle(curentPos + 20, 10, nextPos + 20, 100);

                curentPos = nextPos;
        }

        curentPos += 2;
}

void drawBars(char *txt)
{
        curentPos = 0;
        Form1->Image1->Canvas->Brush->Color = clWhite;
        Form1->Image1->Canvas->Rectangle(0, 0, 441, 121);

        //print start character
        drawSignBars(start_stop);

        //print characters
        for (unsigned int i=0; i<strlen(txt); i++)
                for (int j=0; j<43; j++)
                        if (code39sign[j] == txt[i])
                        {
                                drawSignBars(code39bars[j]);
                                break;
                        }

        //Draw text
        Form1->Image1->Canvas->Font->Size = 10;
        Form1->Image1->Canvas->Brush->Color = clWhite;
        Form1->Image1->Canvas->Font->Color = clBlack;
        Form1->Image1->Canvas->TextOut(curentPos/2 + 20 - strlen(txt)*3, 100, txt);

        //print stop character
        drawSignBars(start_stop);
}

//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------


void __fastcall TForm1::Button1Click(TObject *Sender)
{
        if (check(Kod->Text.c_str()) == 0)
        {
                ShowMessage("Incorrect text");
                return;
        }

        drawBars(Kod->Text.c_str());
}
//---------------------------------------------------------------------------
0

1 możliwość: to kod wyłącznie pod buildera, a ty stosujesz inny kompilator!
2 możliwość: nie zrozumiałeś tutoriala i coś wyklikałeś (źle zastosowany copy paste)
3 możliwość 1+2 (na to stawiam)
4 brak danych by stwierdzić o co chodzi

1 użytkowników online, w tym zalogowanych: 0, gości: 1