unbekannter Typname "AnsiString"



  • Hallo zusammen

    Ich arbeite mit RAD Studio Tokyo 10.2.2. In einem Projekt kennte er auf einmal keine Datentypen mehr Wenn ich die Unit kompiliere kommt 66 mal den identische Fehler

    [bcc64 Fehler] medium_unt.h(12): unbekannter Typname 'AnsiString'
    
    //---------------------------------------------------------------------------
    
    #ifndef medium_untH
    #define medium_untH
    //---------------------------------------------------------------------------
    #include <vector>
    //---------------------------------------------------------------------------
    class Media
    {
    	private:
    		int n_key{0};
    		AnsiString str_name{""};
    		AnsiString str_autor{""};
    		int n_ort_fk{0};
    		AnsiString str_ortname;
    		std::vector<AnsiString> str_beschreibung;
    		AnsiString str_jahr{""};
    		int n_typ_fk{0};
    		int n_kat_fk{0};
    		AnsiString str_typname;
    		AnsiString str_katname;
    		AnsiString str_auslei{""};
    		TDate dat_datum{"01.01.2000"};
    		std::vector<AnsiString> str_wort;
    		AnsiString str_isbn{""};
    		int n_tage{0};
    	public:
    		int __fastcall get_key( void );
    		void __fastcall set_key( int );
    		AnsiString __fastcall get_titel( void );
    		void __fastcall set_titel( AnsiString );
    		AnsiString __fastcall get_jahr( void );
    		void __fastcall set_jahr( AnsiString );
    		int __fastcall get_ortfk( void );
    		void __fastcall set_ortfk( int );
    		std::vector<AnsiString> __fastcall get_beschrieb( void );
    		void __fastcall set_beschrieb( std::vector<AnsiString> );
    		int __fastcall get_typfk( void );
    		void __fastcall set_typfk( int );
    		int __fastcall get_kategoriefk( void );
    		void __fastcall set_kategoriefk( int );
    		AnsiString __fastcall get_auslei( void );
    		void __fastcall set_auslei( AnsiString );
    		TDate __fastcall get_datum( void );
    		void __fastcall set_datum( TDate );
    		AnsiString __fastcall get_autor( void );
    		void __fastcall set_autor( AnsiString );
    		std::vector<AnsiString> __fastcall get_stichworte( void );
    		void __fastcall set_stichworte( std::vector<AnsiString> );
    		AnsiString __fastcall get_typname( void );
    		void __fastcall set_typname( AnsiString );
    		AnsiString __fastcall get_katname( void );
    		void __fastcall set_katname( AnsiString );
    		AnsiString __fastcall get_standortname( void );
    		void __fastcall set_standortname( AnsiString );
    		AnsiString __fastcall get_isbn( void );
    		void __fastcall set_isbn( AnsiString );
    		int __fastcall get_tage( void );
    		void __fastcall set_tage( int );
    };
    
    #endif
    
    //---------------------------------------------------------------------------
    
    #pragma hdrstop
    
    #include "medium_unt.h"
    #include "medium_db.h"
    //---------------------------------------------------------------------------
    #pragma package(smart_init)
    
    /*****************************************************************************
    Datum : 10. Oktober 2013                  letzte änderung : 10. Oktober 2013
    Parameter :
    Rückgabe : Schlüssel des Multimedia
    Beschreibung :
     Giebt den Schlüssel des Multimediaobjekt zurück
    Änderung :
    *****************************************************************************/
    int __fastcall Media::get_key( void )
    {
    	return n_key;
    }
    
    /*****************************************************************************
    Datum : 10. Oktober 2013                  letzte änderung : 10. Oktober 2013
    Parameter : Schlüssel des Multimedia
    Rückgabe :
    Beschreibung :
     Setzt den Schlüssel des Multimediaobjekts
    Änderung :
    *****************************************************************************/
    void __fastcall Media::set_key( int n_pk )
    {
    	if( n_pk > 0 )
    	{
    		n_key = n_pk;
    	}
    	else
    	{
        throw Exception("Ungültiger Schlüssel");
    	}
    }
    
    /*****************************************************************************
    Datum : 10. Oktober 2013                   letzte änderung : 10. Oktober 2013
    Parameter :
    Rückgabe : Titel des Multimedias
    Beschreibung :
     Giebt den Titel des Multimedia aus
    Änderung :
    *****************************************************************************/
    AnsiString __fastcall Media::get_titel( void )
    {
    	return str_name;
    }
    
    /*****************************************************************************
    Datum : 10. Oktober 2013                   letzte änderung : 10. Oktober 2013
    Parameter : Titel des Multimedia
    Rückgabe :
    Beschreibung :
     Setzt den Titel des Multimedias
    Änderung :
    *****************************************************************************/
    void __fastcall Media::set_titel( AnsiString str_titel )
    {
    	int n_lang = str_titel.Length();
    	if( n_lang <= 200)
    	{
    		str_name = str_titel;
    	}
    	else
    	{
    		throw Exception("Titel ist zu lang. Es sind Maximal 200 Zeichen möglich");
      }
    }
    
    /*****************************************************************************
    Datum : 10. Oktober 2013                   letzte änderung : 10. Oktober 2013
    Parameter :
    Rückgabe : Jahrzahl in Text
    Beschreibung :
     Giebt die Jahrzahl zurück
    Änderung :
    *****************************************************************************/
    AnsiString __fastcall Media::get_jahr( void )
    {
    	return str_jahr;
    }
    
    /*****************************************************************************
    Datum : 10. Oktober 2013                   letzte änderung : 10. Oktober 2013
    Parameter : Jahrzahl als Text
    Rückgabe :
    Beschreibung :
     Setzt die Jahrzahl
    Änderung :
    *****************************************************************************/
    void __fastcall Media::set_jahr( AnsiString str_j)
    {
    	int n_lang = str_j.Length();
    	if( n_lang <= 30 )
    	{
    		str_jahr = str_j;
    	}
    	else
    	{
        throw Exception("Es sind maximal 30 Zeichen möglich");
      }
    }
    
    /*****************************************************************************
    Datum : 10. Oktober 2013                  letzte änderung : 10. Oktober 2013
    Parameter :
    Rückgabe : Schlüssel des Standortes
    Beschreibung :
     Giebt den Schlüssel des Standortes zurück
    Änderung :
    *****************************************************************************/
    int __fastcall Media::get_ortfk( void )
    {
    	return n_ort_fk;
    }
    
    /*****************************************************************************
    Datum : 10. Oktober 2013                  letzte änderung : 10. Oktober 2013
    Parameter : Schlüssel des Standortes
    Rückgabe :
    Beschreibung :
     Setzt den Schlüssel des Standortes
    Änderung :
    *****************************************************************************/
    void __fastcall Media::set_ortfk( int n_ort )
    {
    	if( n_ort > 0 )
    	{
    		n_ort_fk = n_ort;
    	}
    	else
    	{
    		throw Exception("Schlüssel für Ort ist ungültig");
      }
    }
    
    /*****************************************************************************
    Datum : 10. Oktober 2013                  letzte änderung : 10. Oktober 2013
    Parameter :
    Rückgabe : Beschreibung des Multimedia
    Beschreibung :
     Giebt den Beschrieb des Multimedia zurück
    Änderung :
    *****************************************************************************/
    std::vector<AnsiString> __fastcall Media::get_beschrieb( void )
    {
    	return str_beschreibung;
    }
    
    /*****************************************************************************
    Datum : 10. Oktober 2013                  letzte änderung : 10. Oktober 2013
    Parameter : Beschreibung des Multimedia
    Rückgabe :
    Beschreibung :
     Setzt den Beschrieb des Multimedias
    Änderung :
    *****************************************************************************/
    void __fastcall Media::set_beschrieb( std::vector<AnsiString> str_text )
    {
    	try
    	{
    		str_beschreibung = str_text;
    	}
    	catch( Exception &e )
    	{
    		throw Exception(e.Message + ". Der Beschrieb kann nicht übernommen werden");
      }
    }
    
    /*****************************************************************************
    Datum : 10. Oktober 2013                  letzte änderung : 10. Oktober 2013
    Parameter :
    Rückgabe : Typschlüssel
    Beschreibung :
     Giebt den Schlüssel des Typs zurück
    Änderung :
    *****************************************************************************/
    int __fastcall Media::get_typfk( void )
    {
    	return n_typ_fk;
    }
    
    /*****************************************************************************
    Datum : 10. Oktober 2013                  letzte änderung : 10. Oktober 2013
    Parameter : Typschlüssel
    Rückgabe :
    Beschreibung :
     Setzt den Typschlüssel
    Änderung :
    *****************************************************************************/
    void __fastcall Media::set_typfk( int n_typ )
    {
    	if( n_typ > 0 )
    	{
    		n_typ_fk = n_typ;
    	}
    	else
    	{
        throw Exception("Schlüssel für Typ ist ungültig");
      }
    }
    
    /*****************************************************************************
    Datum : 10. Oktober 2013                  letzte änderung : 10. Oktober 2013
    Parameter :
    Rückgabe : Kategorieschlüssel
    Beschreibung :
     Giebt den Schlüssel der Kategorie zurück
    Änderung :
    *****************************************************************************/
    int __fastcall Media::get_kategoriefk( void )
    {
    	return n_kat_fk;
    }
    
    /*****************************************************************************
    Datum : 10. Oktober 2013                  letzte änderung : 10. Oktober 2013
    Parameter : Kategorieschlüssel
    Rückgabe :
    Beschreibung :
     Setzt den Schlüssel der Kategorie
    Änderung :
    *****************************************************************************/
    void __fastcall Media::set_kategoriefk( int n_kat )
    {
    	if( n_kat > 0 )
    	{
    		n_kat_fk = n_kat;
    	}
    	else
    	{
    		throw Exception("Schlüssel für Kategorie ist ungültig");
      }
    }
    
    /*****************************************************************************
    Datum : 10. Oktober 2013                  letzte änderung : 10. Oktober 2013
    Parameter :
    Rückgabe : Ausleitext
    Beschreibung :
     Giebt den Text zum Auslei zurück
    Änderung :
    *****************************************************************************/
    AnsiString __fastcall Media::get_auslei( void )
    {
    	return str_auslei;
    }
    
    /*****************************************************************************
    Datum : 10. Oktober 2013                  letzte änderung : 10. Oktober 2013
    Parameter : Ausleitext
    Rückgabe :
    Beschreibung :
     Setzt den Text zum Auslei
    Änderung :
    *****************************************************************************/
    void __fastcall Media::set_auslei( AnsiString str_text )
    {
    	int n_lang = str_text.Length();
    	if( n_lang <= 150 )
    	{
    		str_auslei = str_text;
    	}
    	else
    	{
        throw Exception("Text zum Auslei darf nicht länger als 150 Zeichen sein");
      }
    }
    
    /*****************************************************************************
    Datum : 10. Oktober 2013                  letzte änderung : 10. Oktober 2013
    Parameter :
    Rückgabe : Datum des auslei
    Beschreibung :
     Giebt das Ausleidatum zurück
    Änderung :
    *****************************************************************************/
    TDate __fastcall Media::get_datum( void )
    {
    	return dat_datum;
    }
    
    /*****************************************************************************
    Datum : 10. Oktober 2013                  letzte änderung : 10. Oktober 2013
    Parameter : Ausleidatum
    Rückgabe :
    Beschreibung :
     Setzt das Ausleidatum
    Änderung :
    *****************************************************************************/
    void __fastcall Media::set_datum( TDate dat_dat )
    {
    	if( dat_dat > "01.01.1900" )
    	{
    		dat_datum = dat_dat;
    	}
    	else
    	{
        throw Exception("Datum liegt zu weit in der Vergangenheit");
      }
    }
    
    /*****************************************************************************
    Datum : 10. Oktober 2013                  letzte änderung : 10. Oktober 2013
    Parameter :
    Rückgabe : Autor
    Beschreibung :
     Giebt den Namen des Autors zurück
    Änderung :
    *****************************************************************************/
    AnsiString __fastcall Media::get_autor( void )
    {
    	return str_autor;
    }
    
    /*****************************************************************************
    Datum : 10. Oktober 2013                  letzte änderung : 12. Oktober 2013
    Parameter : Autor
    Rückgabe :
    Beschreibung :
     Setzt den Namen des Autors
    Änderung :
    *****************************************************************************/
    void __fastcall Media::set_autor( AnsiString str_text )
    {
    	int n_lang = str_text.Length();
    	if( n_lang <= 100 )
    	{
    		str_autor = str_text;
    	}
    	else
    	{
        throw Exception("Der Autor kann maximal 100 Zeichen lang sein");
      }
    }
    
    /*****************************************************************************
    Datum : 13. Oktober 2013                  letzte änderung : 13. Oktober 2013
    Parameter :
    Rückgabe : Stichworte
    Beschreibung :
     Giebt die Stichworte zurück
    Änderung :
    *****************************************************************************/
    std::vector<AnsiString> __fastcall Media::get_stichworte( void )
    {
    	return str_wort;
    }
    
    /*****************************************************************************
    Datum : 13. Oktober 2013                  letzte änderung : 13. Oktober 2013
    Parameter : Stichworte
    Rückgabe :
    Beschreibung :
     Setzt die Stichworte
    Änderung :
    *****************************************************************************/
    void __fastcall Media::set_stichworte( std::vector<AnsiString> str_stich )
    {
    	if( !str_stich.empty() )
    	{
    		str_wort = str_stich;
    	}
    }
    
    /*****************************************************************************
    Datum : 14. Oktober 2013                  letzte änderung : 14. Oktober 2013
    Parameter :
    Rückgabe : Name des Multimedatyps
    Beschreibung :
     Giebt den Namen des Multimediatyps zurück
    Änderung :
    *****************************************************************************/
    AnsiString __fastcall Media::get_typname( void )
    {
    	return str_typname;
    }
    
    /*****************************************************************************
    Datum : 14. Oktober 2013                  letzte änderung : 14. Oktober 2013
    Parameter : Name des Multimediatyps
    Rückgabe :
    Beschreibung :
     Setzt den Namen des Multimediatyps
    Änderung :
    *****************************************************************************/
    void __fastcall Media::set_typname( AnsiString str_name )
    {
    	str_typname = str_name;
    }
    
    /*****************************************************************************
    Datum : 14. Oktober 2013                  letzte änderung : 14. Oktober 2013
    Parameter :
    Rückgabe : Name der Kategorie
    Beschreibung :
     Giebt den Namen der Kategorie zurück
    Änderung :
    *****************************************************************************/
    AnsiString __fastcall Media::get_katname( void )
    {
    	return str_katname;
    }
    
    /*****************************************************************************
    Datum : 14. Oktober 2014                  letzte änderung : 14. Oktober 2014
    Parameter : Name der Kategorie
    Rückgabe :
    Beschreibung :
     Setzt den Namen der Kategorie
    Änderung :
    *****************************************************************************/
    void __fastcall Media::set_katname( AnsiString str_name )
    {
    	str_katname = str_name;
    }
    
    /*****************************************************************************
    Datum : 14. Oktober 2013                  letzte änderung : 14. Oktober 2013
    Parameter :
    Rückgabe : Standortname
    Beschreibung :
     Giebt den Namen des Standortes zurück
    Änderung :
    *****************************************************************************/
    AnsiString __fastcall Media::get_standortname( void )
    {
    	return str_ortname;
    }
    
    /*****************************************************************************
    Datum : 14. Oktober 2013                  letzte änderung : 14. Oktober 2013
    Parameter : Standotname
    Rückgabe :
    Beschreibung :
     Setzt den Namen des Standortes
    Änderung :
    *****************************************************************************/
    void __fastcall Media::set_standortname( AnsiString str_name )
    {
    	str_ortname = str_name;
    }
    
    /*****************************************************************************
    Datum : 14. Januar 2018               letzte änderung : 14. Januar 2018
    Parameter :
    Rückgabe : ISBN-Nummer
    Beschreibung :
     Gibt die ISBN-Nummer zurück
    Änderung :
    *****************************************************************************/
    AnsiString __fastcall Media::get_isbn( void )
    {
    	return str_isbn;
    }
    
    /*****************************************************************************
    Datum : 14. Januar 2018               letzte änderung : 14. Januar 2018
    Parameter : ISBN-Nummer
    Rückgabe :
    Beschreibung :
     Setzt die ISBN-Nummer
    Änderung :
    *****************************************************************************/
    void __fastcall Media::set_isbn( AnsiString str_isbn_ext )
    {
      str_isbn = str_isbn_ext;
    }
    
    /*****************************************************************************
    Datum : 14. Februar 2018               letzte änderung : 14. Februar 2018
    Parameter :
    Rückgabe : Ausleitage
    Beschreibung :
     Ermittelt die Ausleitage
    Änderung :
    *****************************************************************************/
    int __fastcall Media::get_tage( void )
    {
    	return n_tage;
    }
    
    /*****************************************************************************
    Datum : 14. Februar 2018               letzte änderung : 14. Februar 2018
    Parameter : Ausleitage
    Rückgabe :
    Beschreibung :
     Setzt die Ausleitage
    Änderung :
    *****************************************************************************/
    void __fastcall Media::set_tage( int n_wert )
    {
    	n_tage = n_wert;
    }
    

    Wo liegt das Probem, dass es nicht mehr geht?

    Gruss Renato



  • #include <vcl.h>
    #pragma hdrstop
    

    Hattest du dies irgendwie gelöscht?

    Btw.: Wenn du schon <vector> nutzt, warum dann nicht auch gleich <string>, so daß du keine Vermischung von VCL und Standard C++ Datentypen hast?

    PS: Es heißt "Gibt" sowie "Ausleihe(n)" (und noch weitere grammatikalische Fehler)...



  • Ciao Th69

    Danke für die schnelle Hilfe. Nun kann ich das Programm wieder kompilieren. Aber nach dem Start stürzt es gleich wieder ab. Nur komisch, dass ich diese beiden Zeilen bisher nicht verwenden musste. Keine Ahnung warum nicht?

    Gruss Renato

    P.S.
    Wegen der Rechtschreibung. Ich bin legasteniker. Daher mache ich meine eigene Rechtschreibung.


Log in to reply