PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : C# Desktopicons ausblenden



pc17
05.07.2010, 18:39
Hallo,

ich möchte meine Desktopicons kurz ausblenden mit C#, habe da auch schon was gefunden:
Show & hide desktop icons - C# - Source Code | DreamInCode.net (http://www.dreamincode.net/code/snippet4288.htm)
aber wie auch dort einer schreibt, findet er "ShowWindow" nicht.
Als Fehlermeldung kommt: Der Name "ShowWindow" ist im aktuellen Kontext nicht vorhanden.
Habe auch schon einen anderen probiert: http://social.msdn.microsoft.com/For...7-f514d442435f (geht auch nicht)

Habe dann den Code für ShoWindow in den ersten Code kopiert.
[DllImport("user32.dll")]
private static extern long ShowWindow(long hwnd, long nCmdShow); Dann kommt keine Fehlermeldung mehr aber es funktioniert trotzdem nicht.
Vl kann mir jemand weiter helfen.

MfG PC17

inout
05.07.2010, 19:59
Wie rufst du die Funktion denn auf?
Die Funktion aus dem ersten Link ist zwar ziemlich bescheiden, sollte aber funktionieren. (true und false ist da vertauscht, wenn ich das richtig sehe)

inmate
05.07.2010, 21:14
Hmm, ich habe beide Codes mal in VB6 und C++ übersetzt und bei mir funktionieren sie ebenfalls nicht unter Windows XP & 7.

Edit: Doch in c++ gehts :D


#include <cstdlib>
#include <iostream>
#include <windows.h>
using namespace std;

int main()
{

HWND hwnd;

hwnd = FindWindow("Progman",0);
ShowWindow(hwnd,0);

getchar();
}Versuche mal anstatt FindWindowEx die FindWindow API.


Edit2:
Und in VB6 gehts auch:

Public Declare Function ShowWindow Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long



Public Function ShowDesktop(ByVal bShow As Boolean)

Dim lhandle As Long

lhandle = FindWindow("Progman", vbNullString)

If bShow = False Then

Call ShowWindow(lhandle, 0)

Else

Call ShowWindow(lhandle, 5)

End If


End Function


Poste mal dein Code, du musst was falsch kopiert haben.


mfG

pc17
07.07.2010, 17:57
Kann jemand einen Fehler finden?

inout
07.07.2010, 18:03
FindWindow API geht nicht.
Was heisst "geht nicht" genau? (Fehlermeldung?)


Kann jemand einen Fehler finden?
Nein, der Code ist schlecht, aber funktioniert.

pc17
07.07.2010, 18:49
Fehlermeldung: Fehler 1 ; erwartet. Code: public static extern long FindWindow API(long hWnd1, long hWnd2, string lpsz1, string lpsz2);