MessageBox API Import: OK und Hilfe Button
-
Kannst du mir erklären was eine "Hintergrundanwendung" ist?
Ich versteh nicht warum du da auf extra Verweise verzichten willst?
-
Das Programm wird von einem anderen programm im hintergrund, ganz ohne gui oder konsole ausgeführt. ich möchte am ende nur eine einzige exe haben, und keine dlls mitliefern (gut man könnte diese mergen). aber wenn es laut msdn die von mir genannte möglichkeit gibt, wieso nicht? wieso sie nicht geht, keine ahnung, deswegen frage ich ja. deine alternativlösung ist mir ja sehr wohl bekannt.
-
Spricht nichts dagegen, genauso wenig wie die Dlls mit in die Exe zu packen
Also wenn ich mir das in der MSDN durchlese, dann sieht es so aus als wenn der letzte Parameter die Buttons bestimmt. Da solltest du mal 0x00004000L probieren einzufügen.
-
Deran934285204 schrieb:
Das Programm wird von einem anderen programm im hintergrund, ganz ohne gui oder konsole ausgeführt. ich möchte am ende nur eine einzige exe haben, und keine dlls mitliefern (gut man könnte diese mergen).
Du brauchst weder mitliefern noch mergen. Die System.Windows.Forms.dll ist immer da, wenn man das .NET Framework installiert wurde.
Unabhängig davon:
MessageBox(0, "Hallo", "Error", 0x0 | 0x4000 | 0x30);
-
Das gibts doch nicht. Ich hätte schwören können diese Kombination (0x0 | 0x4000 | 0x30) getestet zu haben. Danke funktioniert wunderbar.
Ich weiss, habe eben als Konsolenanwendung begonnen, und wollte das ganze nicht umbauen, weil ich für einige dinge die konsole brauche und die wieder ..... lange geschichte.
Danke nochmals euch BEIDEN
-
Kleiner Hinweis. Selbst wenn es eine Konsolenanwendung ist, kannst du dort auch ohne Probleme auf Forms-Elemente zugreifen. Vielleicht brauchst du die Info ja mal für später.
-
Ja ich hatte glaube ich sogar am Anfang probiert, und das war dann so, dass entweder die Konsole nicht, oder keine MessageBoxen kamen... Ich werds mir merken für nächstes mal
Jetzt habe ich aber doch eine Frage: Wie kann ich abfragen, ob der Hilfe-Button geklickt wurde?
-
http://msdn.microsoft.com/en-us/library/bb774305
DAfür müsstest du dich in die Message-Loop von der WINAPI reinhängenAn dieser Stelle möchte ich sagen, das du mit der Forms MessageBox um einiges besser kommt, die gibt dir nämlich ein Ergebnis zurück was geklickt wurde.
-
OK du hast mich überzeugt.
Wie bekomme ich die System.Windows.Forms in mein projekt? using System.Windows.Forms geht nicht...
-
Du musst dazu vorerst die System.Windows.Forms.dll einbinden.