Frage Button nutzen



  • Hallo,

    gleich vorweg. Ich beschäfftige mich erst seit 3 tagen mit c++ im Allgemeinen. Ich brauche das eigentlich nur um eineinziges winziges Programm zu machen.

    Es geht sich um folgendes. Ich brauche ein Windowsfenster welches 3 Buttons beinhaltet. Diese drei buttons sollen bei click einen bestimmte ftp synchonisation machen. Also Voll dowload oder nur neueste Daten oder wie auch immer. Ich habe es zumind soweit geschafft mit das Fenster zu erstellen und den ersten button einzulagern. Das ist ja nicht schwer. Das kann man wie Homepage machen. Aber nun kommt die Schweirigkeit. Den Code für die FTP Syncronisation habe ich. Die Frage ist wie verknüpfe ich diesen mit dem button.

    Kann mir jemand helfen?

    Code: Windows Fentser

    #pragma once
    
    namespace synct {
    
    	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();
    			//
    			//TODO: Konstruktorcode hier hinzufügen.
    			//
    		}
    
    	protected:
    		/// <summary>
    		/// Verwendete Ressourcen bereinigen.
    		/// </summary>
    		~Form1()
    		{
    			if (components)
    			{
    				delete components;
    			}
    		}
    	private: System::Windows::Forms::PictureBox^  pictureBox1;
    	protected: 
    	private: System::Windows::Forms::Label^  copyrightlabel;
    	private: System::Windows::Forms::Button^  Startvoll;
    
    	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)
    		{
    			System::ComponentModel::ComponentResourceManager^  resources = (gcnew System::ComponentModel::ComponentResourceManager(Form1::typeid));
    			this->pictureBox1 = (gcnew System::Windows::Forms::PictureBox());
    			this->copyrightlabel = (gcnew System::Windows::Forms::Label());
    			this->Startvoll = (gcnew System::Windows::Forms::Button());
    			(cli::safe_cast<System::ComponentModel::ISupportInitialize^  >(this->pictureBox1))->BeginInit();
    			this->SuspendLayout();
    			// 
    			// pictureBox1
    			// 
    			this->pictureBox1->Image = (cli::safe_cast<System::Drawing::Image^  >(resources->GetObject(L"pictureBox1.Image")));
    			this->pictureBox1->Location = System::Drawing::Point(12, 25);
    			this->pictureBox1->Name = L"pictureBox1";
    			this->pictureBox1->Size = System::Drawing::Size(260, 155);
    			this->pictureBox1->SizeMode = System::Windows::Forms::PictureBoxSizeMode::CenterImage;
    			this->pictureBox1->TabIndex = 0;
    			this->pictureBox1->TabStop = false;
    			this->pictureBox1->Click += gcnew System::EventHandler(this, &Form1::pictureBox1_Click);
    			// 
    			// copyrightlabel
    			// 
    			this->copyrightlabel->AutoSize = true;
    			this->copyrightlabel->Location = System::Drawing::Point(57, 9);
    			this->copyrightlabel->Name = L"copyrightlabel";
    			this->copyrightlabel->Size = System::Drawing::Size(162, 13);
    			this->copyrightlabel->TabIndex = 1;
    			this->copyrightlabel->Text = L"Copyright © Kay Petri 2011-2013\r\n";
    			// 
    			// Startvoll
    			// 
    			this->Startvoll->Location = System::Drawing::Point(67, 186);
    			this->Startvoll->Name = L"Startvoll";
    			this->Startvoll->Size = System::Drawing::Size(152, 27);
    			this->Startvoll->TabIndex = 2;
    			this->Startvoll->Text = L"Starte Volle Syncronisation\r\n";
    			this->Startvoll->UseVisualStyleBackColor = true;
    			this->Startvoll->Click += gcnew System::EventHandler(this, &Form1::Startvoll_Click);
    			// 
    			// Form1
    			// 
    			this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
    			this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
    			this->BackColor = System::Drawing::SystemColors::ButtonShadow;
    			this->ClientSize = System::Drawing::Size(284, 262);
    			this->Controls->Add(this->Startvoll);
    			this->Controls->Add(this->copyrightlabel);
    			this->Controls->Add(this->pictureBox1);
    			this->Icon = (cli::safe_cast<System::Drawing::Icon^  >(resources->GetObject(L"$this.Icon")));
    			this->Name = L"Form1";
    			this->Text = L"GTR-EVO.de Sync Tool";
    			this->Load += gcnew System::EventHandler(this, &Form1::Form1_Load);
    			(cli::safe_cast<System::ComponentModel::ISupportInitialize^  >(this->pictureBox1))->EndInit();
    			this->ResumeLayout(false);
    			this->PerformLayout();
    
    		}
    #pragma endregion
    	private: System::Void Form1_Load(System::Object^  sender, System::EventArgs^  e) {
    			 }
    	private: System::Void Startvoll_Click(System::Object^  sender, System::EventArgs^  e) {
    
    		 }
    	private: System::Void pictureBox1_Click(System::Object^  sender, System::EventArgs^  e) {
    			 }
    };
    }
    

    Code FTP sync:

    #include <CkFtp2.h>
    
    void ChilkatSample(void)
        {
        CkFtp2 ftp;
    
        bool success;
    
        //  Any string unlocks the component for the 1st 30-days.
        success = ftp.UnlockComponent("Anything for 30-day trial");
        if (success != true) {
            printf("%s\n",ftp.lastErrorText());
            return;
        }
    
        //  Note: This is a valid FTP account that you may use for testing.
        ftp.put_Hostname("ftp.secureftp-test.com");
        ftp.put_Username("test");
        ftp.put_Password("test");
    
        ftp.put_KeepSessionLog(true);
    
        //  Connect and login to the FTP server.
        success = ftp.Connect();
        if (success != true) {
            printf("%s\n",ftp.lastErrorText());
            return;
        }
    
        //  Set the current remote directory to the root of
        //  the tree to be downloaded.
        success = ftp.ChangeRemoteDir("/subDir1");
        if (success != true) {
            printf("%s\n",ftp.lastErrorText());
            return;
        }
    
        //  Recursively download all non-existant and newer files.
        long mode;
        mode = 2;
        success = ftp.SyncLocalTree("c:/temp/subDir1",mode);
        if (success != true) {
            printf("%s\n",ftp.lastErrorText());
            return;
        }
    
        ftp.Disconnect();
    
        //  Display the session log.
        printf("%s\n",ftp.sessionLog());
        }
    


  • Kay Petri schrieb:

    Ich beschäfftige mich erst seit 3 tagen mit c++ im Allgemeinen.

    Nunja...beschäftige Dich x bitte etwas länger mit c++ im Allgemeinen und auch im Speziellen (damit meine ich Windows-Programmierung). Ich glaube, ich kann Dir jetzt nicht helfen...



  • und dann ist das noch das falsche forum denn was du machst ist CLI/.Net und hat, na ja gelinde gesagt wenig mit C++ zu tun, da es eigentlich nur .Net für C++ ist, also wenn dann fang bei den Grundlagen an, beschäftige dich mit programierung in der Console, dann kannste auch zur Windows-Programierung übergehen, nur so macht es keinen Sinn. Dir Fehlen nach 3 Tagen einfach die Grundlagen um das zu verstehen was dir jemand als Tip um die Ohren haut.

    So wie ich seh hast du einfach nen gefunden Quelltext in ein erstelltes Projekt gehaun und weisst jetzt nicht wie du das ganze Verbindest. Lass es du wirst es nur mit viel mühen zum laufen bringen und nicht verstehen warum das so geht, fang an zu lernen.



  • Hallo,

    na helfen konntet Ihr mir zwar leider nicht. Aber ich bin auf Visual Basic umgestiegen und habe das ganze hinbekommen.

    Danke.



  • Kay Petri schrieb:

    na helfen konntet Ihr mir zwar leider nicht. Aber ich bin auf Visual Basic umgestiegen und habe das ganze hinbekommen.

    Na, dann "Herzlichen Glückwunsch"... 🙂



  • Was wieder masl beweisst das du von programierung keine ahnung hast un das auch nur mit hilfe anderer hinbekommen hast, armutszeugnis



  • Wasn mit Dir los. Geholfen hat mir niemand hier, ergo habe ich es selber hinbekommen. SonQuatsch was de da erzählst. Es hat nunmal jeder seine Berufung. Es kann halt nicht jeder Programmierer sein. Wegen einem einzigen Programm was ich in meinem Leben brauche werde ich keinen neuen Beruf lernen.
    Das ist das selbe wenn der Fahrlehrer zum Fahrschüler sagt er hat keine Ahnung von Autofahren. Überlege mal was Du da fürn Müll zusammenschreibst. Aber genau solche Wie Du sind es die Foren wie dieses hier unatraktiv machen. Anstatt wenigstens die richtigen Anstösse zu geben wirste angemault. Solche würde ich aus meinem Forum rausschmeisen das kann ich Dir sagen. Dann spar Dir lieber deinen Kommentar.



  • Achja. zum Quelltext:

    Den Ersten teil erstellt Visual C++ Express selber da muss man ja nix zu tun. Den Code für die FTP übertragung habe ich von hier:http://www.example-code.com/vcpp/ftp_syncLocalTree.asp und dort ist dieser Code unter C++ abgelegt. Ich kann ja nicht wissen das dem nicht so ist.



  • Dieser Thread wurde von Moderator/in Martin Richter aus dem Forum MFC (Visual C++) in das Forum C++/CLI mit .NET verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • @Kai: zum einen mischt Du hier ISO C++ mit C++/CLI und zum anderem würde ich Dir den Tipp geben es vllt. in C# umzusetzen.
    Wenn Du es in VB geschafft hast, dann schaffst Du das auch in C#.
    Wobei ich VB nicht auf die gleiche Stufe wie C# stelle, aber jedoch einfacher als C++; C++/CLI.

    Gruß

    Doug_HH


Anmelden zum Antworten