Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
hitori04
Anmeldungsdatum: 21.04.2011 Beiträge: 53
|
Verfasst am: 26.08.2012, 23:15 Titel: Dwmapi dll laden.. |
|
|
Hey ich wollte gerade eben eine externe dll laden aber irgendwie haut das nich so hin wie ich will
Code: | Dim dwmapi As Any Ptr
Dim As String onoff
Dim As UInteger DWM_EC_ENABLECOMPOSITION = 1
Dim As UInteger DWM_EC_DISABLECOMPOSITION = 0
Dim Win32DwmEnableComposition As Function (ByVal uCompositionAction As UInteger) As UInteger
dwmapi = DylibLoad("C:\Windows\System32\dwmapi.dll")
If( dwmapi = 0) Then
Print "Dll nicht gefunden"
Sleep
End 1
EndIf
Win32DwmEnableComposition = DylibSymbol(dwmapi, "Win32DwmEnableComposition")
If( Win32DwmEnableComposition = 0) Then
Print "Funktion nicht gefunden"
Sleep
End 1
ElseIf( Win32DwmEnableComposition = 1) Then
Print "Funktion gefunden"
EndIf
|
um ehrlich zu sein wollte ich das ganze von diesem code hier übersetzen
Code: | public readonly uint DWM_EC_DISABLECOMPOSITION = 0;
public readonly uint DWM_EC_ENABLECOMPOSITION = 1;
[DllImport("dwmapi.dll", EntryPoint = "DwmEnableComposition")]
protected extern static uint Win32DwmEnableComposition(uint uCompositionAction);
public bool ControlAero(bool enable)
{
try
{
if (enable)
Win32DwmEnableComposition(DWM_EC_ENABLECOMPOSITION);
if (!enable)
Win32DwmEnableComposition(DWM_EC_DISABLECOMPOSITION);
return true;
}
catch { return false; }
}
|
da genau diese funktion mir bei einem problem eines anderen codes helfen würde ..
wenn mir also jemand helfen könnte wäre das wie immer sehr nett und danke im vorraus |
|
Nach oben |
|
 |
Eternal_pain

Anmeldungsdatum: 08.08.2006 Beiträge: 1783 Wohnort: BW/KA
|
Verfasst am: 26.08.2012, 23:23 Titel: |
|
|
Code: | Win32DwmEnableComposition = DylibSymbol(dwmapi, "Win32DwmEnableComposition") |
zu
Code: | Win32DwmEnableComposition = DylibSymbol(dwmapi, "DwmEnableComposition") |
ändern _________________
 |
|
Nach oben |
|
 |
hitori04
Anmeldungsdatum: 21.04.2011 Beiträge: 53
|
Verfasst am: 26.08.2012, 23:30 Titel: |
|
|
danke für die schnelle antwort, aber wenn ich nun versuche die funktion zu benutzen passirt einfach garnichts ..
Code: | Dim dwmapi As Any Ptr
Dim As String onoff
Dim As UInteger DWM_EC_ENABLECOMPOSITION = 1
Dim As UInteger DWM_EC_DISABLECOMPOSITION = 0
Dim Win32DwmEnableComposition As Function (ByVal uCompositionAction As UInteger) As UInteger
dwmapi = DylibLoad("C:\Windows\System32\dwmapi.dll")
If( dwmapi = 0) Then
Print "Dll nicht gefunden"
Sleep
End 1
EndIf
Win32DwmEnableComposition = DylibSymbol(dwmapi, "DwmEnableComposition")
If( Win32DwmEnableComposition = 0) Then
Print "Funktion nicht gefunden"
Sleep
End 1
ElseIf( Win32DwmEnableComposition = 1) Then
Print "Funktion gefunden"
Sleep
EndIf
Do
If Win32DwmEnableComposition(DWM_EC_ENABLECOMPOSITION) And InKey = Chr(27) Then
Print "Aero off"
Win32DwmEnableComposition(DWM_EC_DISABLECOMPOSITION)
EndIf
Loop
Sleep |
|
|
Nach oben |
|
 |
Eternal_pain

Anmeldungsdatum: 08.08.2006 Beiträge: 1783 Wohnort: BW/KA
|
Verfasst am: 26.08.2012, 23:36 Titel: |
|
|
Wusste grad eigentlich nicht was die eigentlich tun sollte, aber bei mir funktionierts (schreck)
Wenn kein fehler gibt Funktion 0 zurück, also kann dein code nicht funktionieren, du kannst einfach nur An/Aus stellen
Also
Code: | Win32DwmEnableComposition(DWM_EC_ENABLECOMPOSITION) | zum anschalten
Code: | Win32DwmEnableComposition(DWM_EC_DISABLECOMPOSITION) | zu ausschalten
wenn erfolgreich gibts 0 zurück, und ich nehme an falls das nicht geht gibt es einen errorcode zurück, schätze die msdn gibt da mehr zu her _________________
 |
|
Nach oben |
|
 |
hitori04
Anmeldungsdatum: 21.04.2011 Beiträge: 53
|
Verfasst am: 26.08.2012, 23:40 Titel: |
|
|
oh man, ich seh echt den wald vor lauter bäumen manchmal nicht, trotzdem danke nochmal, jetzt gehts auch bei mir  |
|
Nach oben |
|
 |
|