Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > .NET Languages
You last visited: Today at 17:21

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



WindowsForm aus DLL erstellen

Discussion on WindowsForm aus DLL erstellen within the .NET Languages forum part of the Coders Den category.

Reply
 
Old   #1
 
YatoDev's Avatar
 
elite*gold: 50
Join Date: Sep 2012
Posts: 3,841
Received Thanks: 1,462
WindowsForm aus DLL erstellen

Kann mir jemand bitte beispielcode geben wie man eine Form aus einer konsolen anwendung oder dll erstellt? Ich hab vieles ausgetestet und mir nicht wirklich gemerkt was ich schon alles getestet habe.

STAThread Attribut gesetzt.
YatoDev is offline  
Old 03/11/2016, 22:24   #2

 
Nanoxx™'s Avatar
 
elite*gold: 15
Join Date: Feb 2013
Posts: 2,880
Received Thanks: 465
Jemand hat mir mal gesagt WinForms aus .Net - DLL geht nicht....

Erstell eine Windows-Forms Anwendung und setz sie in den Einstellungen auf "Konsolenanwendung"







Nanoxx™ is offline  
Old 03/12/2016, 01:09   #3



 
IceTrailer's Avatar
 
elite*gold: 150
Join Date: Sep 2010
Posts: 2,070
Received Thanks: 821
Quote:
Originally Posted by Nanoxx[emoji769
;34121731]Jemand hat mir mal gesagt WinForms aus .Net - DLL geht nicht....

Erstell eine Windows-Forms Anwendung und setz sie in den Einstellungen auf "Konsolenanwendung"








Konsolenanwendung hat nichts mit der Ausgabedatei zu tun.

Und: Windows Forms Anwendung aus ner DLL ist sehr wohl möglich, dazu einfach ein neues Projekt (Bibliothek) erstellen und die Klasse Form hinzufügen sowie nach Belieben "bearbeiten"
IceTrailer is offline  
Thanks
3 Users
Old 03/12/2016, 02:21   #4
 
elite*gold: 0
Join Date: Feb 2009
Posts: 1,137
Received Thanks: 573
Quote:
Originally Posted by IceTrailer View Post
Konsolenanwendung hat nichts mit der Ausgabedatei zu tun.

Und: Windows Forms Anwendung aus ner DLL ist sehr wohl möglich, dazu einfach ein neues Projekt (Bibliothek) erstellen und die Klasse Form hinzufügen sowie nach Belieben "bearbeiten"
Aber aufgepasst damit, .Net ist eine Middleware die bei Forms Anwendungen die Kontrolle über den Mainthread übernimmt und nur noch Methoden via Event aufruft. Wenn man eine Form jetzt in eine Bibliothek packt, und diese Bibliothek wird dann von einer Software verwendet die nicht .Net für den Mainthread verwendet, oder gar ein anderes Framework, kann man sehr leicht auf die Nase fliegen, denn sagen wir mal, das eine Verwendet .Net, das andere ein beliebiges anderes mit ähnlicher Funktionalität, welches der Beiden Frameworks bekommt dann die Kontrolle?

Frameworks die die Kontrolle über die Anwendung übernehmen und nur noch Eventgesteuert arbeiten sind zwar extrem angenehm, aber mischen sollte man sie dennoch nicht.
warfley is offline  
Old 03/12/2016, 15:19   #5
 
YatoDev's Avatar
 
elite*gold: 50
Join Date: Sep 2012
Posts: 3,841
Received Thanks: 1,462
oh man da bekomm ich ein schritt für schriit tutorial mit bildern..... das habe ich nicht erwartet haha

Das problem daran ist was anderes
ich hab natürlich die form in meinem library projekt angelegt.
Nehmen wir mal an die funktion CreateForm würde diese dann "erstellen" und zurückgeben.
MeineForm form = new MeineForm();

nun wird die funktion nicht von vom main thread aufgerufen da habe ich mir halt gedacht erstelle ich einen neuen mit STAThread attribut. leider ohne erfolg.
Ich hab den thread auch versucht zu halten mit einer while schleife und einem sleep hat aber nichts gebracht.

Das programm stürzt ab ohne einen fehlercode oder was anderes auszugeben.

Ich hatte gehofft das hier vielleicht jemand schonmal eine form aus einem anderen thread erstellt hat.

Problembeschreibung im start post ist etwas mager ausgefallen ich weiß....

EDIT:
Mir geht es mehr darum wie ich das mit dem threading richtig machen muss nicht wie ich eine neue form erstelle
YatoDev is offline  
Old 03/12/2016, 18:56   #6
 
elite*gold: 0
Join Date: Feb 2009
Posts: 1,137
Received Thanks: 573
Quote:
Originally Posted by »FlutterShy™ View Post
oh man da bekomm ich ein schritt für schriit tutorial mit bildern..... das habe ich nicht erwartet haha

Das problem daran ist was anderes
ich hab natürlich die form in meinem library projekt angelegt.
Nehmen wir mal an die funktion CreateForm würde diese dann "erstellen" und zurückgeben.
MeineForm form = new MeineForm();

nun wird die funktion nicht von vom main thread aufgerufen da habe ich mir halt gedacht erstelle ich einen neuen mit STAThread attribut. leider ohne erfolg.
Ich hab den thread auch versucht zu halten mit einer while schleife und einem sleep hat aber nichts gebracht.

Das programm stürzt ab ohne einen fehlercode oder was anderes auszugeben.

Ich hatte gehofft das hier vielleicht jemand schonmal eine form aus einem anderen thread erstellt hat.

Problembeschreibung im start post ist etwas mager ausgefallen ich weiß....

EDIT:
Mir geht es mehr darum wie ich das mit dem threading richtig machen muss nicht wie ich eine neue form erstelle
Du musst .Net natürlich noch mitteilen das auch für diesen Thread eine Message Queue abgearbeitet werden muss. Wie genau das geht, keine Ahnung aber schau dir mal die Application klasse an, die müsste das können
warfley is offline  
Old 03/12/2016, 20:15   #7
 
YatoDev's Avatar
 
elite*gold: 50
Join Date: Sep 2012
Posts: 3,841
Received Thanks: 1,462
Ich melde mich wenn ich das Problem gelöst habe.
Das mit der message queue: Das hat laut stackoverflow was mit dem STA thread attribut zu tun....

Naja wie gesagt wenn ich die lösung hab schreib ich hier die lösung
YatoDev is offline  
Old 03/13/2016, 17:02   #8



 
Shawak's Avatar
 
elite*gold: 0
The Black Market: 259/0/0
Join Date: Apr 2010
Posts: 10,289
Received Thanks: 3,613
Code:
        [STAThread]
        static void Main()
        {
            new Thread(() =>
            {
                Application.ThreadException += Application_ThreadException;
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
                Application.Run(start());
            })
            {
                IsBackground = true
            }.Start();

            while (true)
                Thread.Sleep(1);
        }

        static void Application_ThreadException(object sender, ThreadExceptionEventArgs e)
        {
            try { Application.Exit(); }
            catch {}
            Enviroment.Exit(0);
        }

        static Starter start()
        {
            return new Starter(() =>
            {
                var form = new DDLNamespace.Form()
                form.ShowDialog()
            });
        }

[..]

    class Starter : ApplicationContext
    {
        public Starter(Action action)
        {
            action();
        }
    }
Hoffe das hilft dir weiter, hier noch ein Beispiel: (Das sollte sich auch auf eine Form in einer DLL anwenden lassen)
Shawak is offline  
Thanks
1 User
Old 03/13/2016, 19:36   #9
 
YatoDev's Avatar
 
elite*gold: 50
Join Date: Sep 2012
Posts: 3,841
Received Thanks: 1,462
das sieht vielversprechend aus ich danke dir schonmal. ich werde es nachher testen und sagen obs geht.

EDIT: Hat mit deinem weg funktioniert
YatoDev is offline  
Reply


Similar Threads Similar Threads
WindowsForm BackColor ändern
09/29/2012 - .NET Languages - 6 Replies
hallo, ich habe vor, dass man den Namen der Farbe in ein Textfeld eingibt und dann per Timer der Name hinter me.backcolor = gesetzt wird. Ich habe mir das so vorgestellt: Me.BackColor = textbox1.text Allerdings sagt er dann, dass Der Wert vom Typ "String" nicht in "System.Drawing.Color" konvertiert werden kann.
Wer kennt sich mit dem erstellen einer .dll aus / kann eine erstellen ?
11/15/2011 - All Points Bulletin - 3 Replies
Hallöchen erstmal. Eine kleine frage werf ich mal kurz in die Runde: Kennt sich jemand mit dem erstellen von .dll's aus bzw. kann eine mit einem entsprechendem Source Code erstellen (für APB )? Ich weiß nicht, ob das unter Thema "Hack Request" fällt, aber naja. Wäre super, wenn jemand irgendwie ein DEUTSCHES TuT findet (ich hab keines gefunden, aber auch nicht gründlich gesucht) für irgendwas, womit man die dll's eben herstellen kann. Ansonsten wäre es sehr gut, wenn jemand, der sich mit dem...
[C#]Gibts Tutorial für Spiele erstellen oder Hacks erstellen?
05/01/2011 - .NET Languages - 19 Replies
Hey gibs hier in epvp Tutorials wie man Ein Spiel erstellt z.B. einen Shooter und wie man einen Hack erstellt? Oder habt ihr auf Youtube iwas gefunden? Naja Hoffe auf Antwort :D Das ganze mit C# Und ich meine keine Minigames sondern eher große Spiele. THX iM VORRAUS
WoWMobs/Waffen/etc. erstellen + batchen , Datenbank erstellen!
10/25/2009 - WoW Private Server - 2 Replies
Hallo Leute, schon wieder habe ich einen Tutorial für euch^^ Dieses mal geht es um Navicat, und ich hoffe er hilft euch wiedereinmal :) Navigation: 0.0 Download 1. Arcemu 2. Mangos 3. Mein Video mit meiner scheiß Stimme^^ Download:



All times are GMT +1. The time now is 17:22.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.