SQLite einbinden



  • Hallo zusammen,

    zunächst vorweg: Ich hab schon ein bisschen mit C++ gearbeitet, dabei ist unter anderem ein Lagerverwaltungsprogramm (Visual 2010, Windows Forms) herausgekommen, welches mit Hilfe von Textdateien Lagerbestände verwaltet.

    Da Textdateien nun aber wirklich sch***e sind, um zum Beispiel aus den erfolgten Zu- und Abgängen bestimmte Sachen herauszusuchen, sollte ich das jetzt neu programmieren und dabei eine Datenbank einbinden.

    Dazu habe ich mir SQLite ausgesucht, die Dateien heruntergeladen, eine .lib erstellt, die .lib, .h und .dll eingebunden und die .lib unter Projekt -> Eigenschaften -> Konfigurationseigenschaften -> Linker -> Zusätzliche Abhängigkeiten hinzugefügt.

    Folgender Code ist entstanden, das meiste vorgegeben:

    #pragma once
    
    #include "sqlite3.h"
    
    namespace Materialverwaltung {
    
    	using namespace System;
    	using namespace System::ComponentModel;
    	using namespace System::Collections;
    	using namespace System::Windows::Forms;
    	using namespace System::Data;
    	using namespace System::Drawing;
    
    	/// <summary>
    	/// Zusammenfassung für Form1
    	/// </summary>
    	public ref class Form1 : public System::Windows::Forms::Form
    	{
    	public:
    		Form1(void)
    		{
    			InitializeComponent();
    			//
    			sqlite3 *db;
    			sqlite3_open ("bank.db",&db);
    			//
    		}
    
    	protected:
    		/// <summary>
    		/// Verwendete Ressourcen bereinigen.
    		/// </summary>
    		~Form1()
    		{
    			if (components)
    			{
    				delete components;
    			}
    		}
    
    	private:
    		/// <summary>
    		/// Erforderliche Designervariable.
    		/// </summary>
    		System::ComponentModel::Container ^components;
    
    #pragma region Windows Form Designer generated code
    		/// <summary>
    		/// Erforderliche Methode für die Designerunterstützung.
    		/// Der Inhalt der Methode darf nicht mit dem Code-Editor geändert werden.
    		/// </summary>
    		void InitializeComponent(void)
    		{
    			this->components = gcnew System::ComponentModel::Container();
    			this->Size = System::Drawing::Size(300,300);
    			this->Text = L"Form1";
    			this->Padding = System::Windows::Forms::Padding(0);
    			this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
    		}
    #pragma endregion
    	};
    }
    

    Versuche ich das jetzt zu kompilieren, bekomme ich immer diesen Fehler:

    Warnung	1	warning LNK4248: Nicht aufgelöstes Typeref-Token (0100001D) für "sqlite3". Das Abbild kann möglicherweise nicht ausgeführt werden.	D:\Lagerverwaltung\Materialverwaltung\Materialverwaltung.obj
    

    So scheitere ich an der allerersten Hürde und bin ganz schön gefrustet, es kann doch nicht sein, dass ich zu blöde bin, eine Datenbank einzubinden. Bitte, bitte: Helft mir! Wo liegt der Fehler? Hab ich eine ganz falsche Herangehensweise? Oder wo hakt es?

    Danke schonmal für eure Hinweise!


Log in to reply