AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Fenster läßt sich auf neuem Desktop nicht verschieben
Thema durchsuchen
Ansicht
Themen-Optionen

Fenster läßt sich auf neuem Desktop nicht verschieben

Ein Thema von Luckie · begonnen am 8. Jan 2005 · letzter Beitrag vom 8. Jan 2005
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#1

Fenster läßt sich auf neuem Desktop nicht verschieben

  Alt 8. Jan 2005, 04:29
Ich lasse eine Messagebox auf einem anderen Desktop erscheinen. Die Schaltfläche kann ich anklicken, aber ich kann sie nicht verschieben. Warum ist das so?
Angehängte Dateien
Dateityp: exe switchdesktop_171.exe (5,5 KB, 30x aufgerufen)
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Fenster läßt sich auf neuem Desktop nicht verschieben

  Alt 8. Jan 2005, 08:35
ist das nur bei messageboxen so oder prinzipiell?
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
tommie-lie
(Gast)

n/a Beiträge
 
#3

Re: Fenster läßt sich auf neuem Desktop nicht verschieben

  Alt 8. Jan 2005, 08:56
Kann man denn die Position eines Fensters im Quelltext ändern? Evtl liegt es daran, daß auf diesem Desktop keine Shell vorhanden ist, oder vielleicht auch daran, daß man die MEssageBox nicht über's X schließen kann?

By the way: Wie oft sollen wir dir noch sagen, daß du Quellcode zu deinen Fragen mitliefern sollst?
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Fenster läßt sich auf neuem Desktop nicht verschieben

  Alt 8. Jan 2005, 12:47
Zitat von tommie-lie:
By the way: Wie oft sollen wir dir noch sagen, daß du Quellcode zu deinen Fragen mitliefern sollst?
Neugirieg, wie das geht? Der Quellcode kommt erst, wenn ich selber verstanden habe, was da passiert.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
tommie-lie
(Gast)

n/a Beiträge
 
#5

Re: Fenster läßt sich auf neuem Desktop nicht verschieben

  Alt 8. Jan 2005, 12:55
Zitat von Luckie:
Neugirieg, wie das geht?
Nö, wieso?

Zitat von Luckie:
Der Quellcode kommt erst, wenn ich selber verstanden habe, was da passiert.
Viellecht könnte man dir dann aber auch sagen, warum es nicht so geht, wie es gehen sollte. Ich kriege das sicherlich auch so hin, du wirst wohl auch nichts anderes machen als einen neuen Desktop erzeugen und zu den zu aktivieren. Aber ich bin zu faul mir den Code selbst zu schreiben, nur damit ich was zum rumfummeln habe und evtl rauskriege, warum du dein Fenster nicht bewegen kannst. Da fummel' ich lieber an dir... ähh... deinem Quellcode rum http://www.delphi-forum.de/images/sm...con_tongue.gif
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#6

Re: Fenster läßt sich auf neuem Desktop nicht verschieben

  Alt 8. Jan 2005, 15:34
So es hat der Flag DESKTOP_CREATEMENU gefehlt. Kompletten Code gibt es hier: SwitchDesktop.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
tommie-lie
(Gast)

n/a Beiträge
 
#7

Re: Fenster läßt sich auf neuem Desktop nicht verschieben

  Alt 8. Jan 2005, 16:53
Abgesehen davon, daß der Aufruf sowieso fehl schlägt, was versprichst du dir von:
CloseDesktop(OldDesk); ? Ich würde Dinge nicht schließen, die ich nicht selbst geöffnet habe, selbst wenn ich sie gar nicht schließen kann (siehe GetLastError).


Zitat von Luckie:
So es hat der Flag DESKTOP_CREATEMENU gefehlt.
Interessant, für was Windows alles ein Menü haben möchte
Vermutlich wegen dem "Verschieben"-Eintrag im Systemmenü?
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#8

Re: Fenster läßt sich auf neuem Desktop nicht verschieben

  Alt 8. Jan 2005, 17:02
Zitat von tommie-lie:
Abgesehen davon, daß der Aufruf sowieso fehl schlägt, was versprichst du dir von:
CloseDesktop(OldDesk); ? Ich würde Dinge nicht schließen, die ich nicht selbst geöffnet habe, selbst wenn ich sie gar nicht schließen kann (siehe GetLastError).
Ich schließe nicht den Dektop, sondern gebe das Handle wieder frei. Und diese Funktion von einem Service aufgerufen wird, dann darf man das auch. Kannst du ja weglassen in einer GUI Anwendung.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
tommie-lie
(Gast)

n/a Beiträge
 
#9

Re: Fenster läßt sich auf neuem Desktop nicht verschieben

  Alt 8. Jan 2005, 17:20
Zitat von Luckie:
Ich schließe nicht den Dektop, sondern gebe das Handle wieder frei.
Aber du hast das Handle doch gar nicht erzeugt? Du hast dir doch nur mit GetThreadDesktop nur ein bereits existentes Handle besorgt. Aber laut GetLastMassage und laut Rückgabewert des Calls schlägt die Funktion im Augenblick fehl, zumindest auch in deiner Demo-EXE, wie's in 'nem Service aussieht, der sich auf seiner Station anders austoben kann, als normale Programme, weiß ich nicht.

Zitat von Luckie:
Und diese Funktion von einem Service aufgerufen wird, dann darf man das auch.
Selbst bei einem Service finde ich das fragwürdig, würde Windows den Desktop vom Service nicht von alleine wieder freigeben, sobald der Service beendet wurde?
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#10

Re: Fenster läßt sich auf neuem Desktop nicht verschieben

  Alt 8. Jan 2005, 17:26
Zitat:
If the function succeeds, the return value is a handle to the desktop associated with the specified thread. You do not need to call the CloseDesktop function to close the returned handle.
Und Keith Brown hat e sin seinem Beispiel auch geschlossen. Frag ihn.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:51 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz