• Einige von euch werden die SkinH.dll schon kennen, für die anderen ist es was neues.
    Mit der SkinH.dll kann man auf einfachste Weise einen Skin über die eigene Gui legen, aber das ist noch nicht alles!
    Alle MsgBoxen und anderen Gui's, die aus dem Skript aufgerufen werden, erhalten ebenfalls den dazupassenden Skin.

    Ich habe jetzt die Funktionen der DLL-Datei nach AutoIt portiert. Bei einigen Funktionen weiß ich leider noch nicht wie man sie einsetzt, aber die wichtigsten Funktionen sind klar.

    Besonders interesssant neben _SkinH_AttachEx() ist die Funktion _SkinH_SetTitleMenuBar(). Ich wußte nicht mal, dass sowas geht.

    Anbei ein Beispiel und die UDF. Resourcen sind inline dabei (DLL und eine Skin-Datei).

  • Hier scheint ein Fehler zu liegen... :huh:

    [autoit]

    Func _SkinH_AttachRes($pShe, $dwSize, $Hue, $Sat, $Bri, $sPwd = "mhgd")
    Local $aRet = DllCall($__SkinH_DLL, "int", "SkinH_AttachRes", "BYTE*", $SkinFilePath, "dword", $dwSize, "str", $sPwd, "int", $Hue, "int", $Sat, "int", $Bri)
    Return $aRet[0]
    EndFunc ;==>_SkinH_AttachRes

    [/autoit]


    (Zeile 87 - 90)
    Edit: Abgesehen von der kurzen Zeit in der das Originalfenster sichtbar ist (nach dem Klick auf den Close Button), sieht das ganze recht nützlich aus :). Ich werde das bestimmt mal gebrauchen können.

  • Sorry, ich hab hier nur ein portable AutoIt, deswegen habe ich den Fehler nicht bekommen.
    Ersetze einfach $SkinFilePath durch $pShe, oder lösch die ganze Funktion, die wird sowieso nicht gebraucht.

    Funktioniert leider immer noch nicht.

    Spoiler anzeigen
    [autoit]

    Func _SkinH_SetFontEx($hWnd, $hFont)
    ;~ HWND hWnd, //¿Ø¼þµÄ¾ä±ú
    ;~ LPCTSTR szFace, //×ÖÌåÃû³Æ
    ;~ int nHeight, //×ÖÌå¸ß¶È
    ;~ int nWidth, //×ÖÌå¿í¶È
    ;~ int nWeight, //×ÖÌå°õÊý
    ;~ int nItalic, //ÊÇ·ñбÌå
    ;~ int nUnderline, //ÊÇ·ñÏ»®Ïß
    ;~ int nStrikeOut //ÊÇ·ñɾ³ýÏß
    ;~ Local $aRet = DllCall($__SkinH_DLL, "int", "SkinH_SetFontEx", "hwnd", $hWnd, "handle", $hFont)
    Return $aRet[0]
    EndFunc

    [/autoit][autoit]

    C:\Users\Fabian\Desktop\SkinH.au3(195,17) : ERROR: $aRet: undeclared global variable.
    Return $aRet[0]

    [/autoit]
  • Unter welcher Lizenz steht die DLL denn? Freeware? Kostenlos für Nichtkommerzielle Nutzzung oder sonst was?

  • Sieht gut aus. Woher bekommt man denn die Skins?
    @Fabian: Den Fehler wirst du ja wohl selber erkennen oder?

  • Sieht gut aus. Woher bekommt man denn die Skins?
    @Fabian: Den Fehler wirst du ja wohl selber erkennen oder?

    Klar, aber ich wollte den Fehler noch mitteilen, damit der behoben werden kann. =)

  • Zur Lizenz: Sollte Demo sein, obwohl ich kein Chinesisch kann. Einfach mal in Google SkinSharp eingeben.


    Ah, skinsharp ist das also. Meine Interpretation der Übersetzung ist das:
    Ohne Lizenz wird ein Logo in der Titelleiste eingeblendet und man darf die DLL nur nichtkommerziell verwenden
    Edit: 8€ für die billigste Version, das ist ja nichts :D bzw. 33€ für die nächsthöhere, die dann für die meisten Fälle ausreichen sollte.
    http://translate.google.de/translate?hl=de&sl=auto&tl=en&u=http%3A%2F%2Fbbs.skinsharp.com%2Fhtdocs%2Fpay.htm

    Einmal editiert, zuletzt von progandy (1. Februar 2011 um 10:59)

  • Funktioniert bei mir nicht :( Auch das beispiel aus dem englishen Forum. Passier teinfach nichts wenn man auf einen eintrag klickt.

    Windows 7 64bit


    EDIT:
    Muss als 32bit exe kompiliert sein

  • Moin moin

    ... kennt von euch jemand ne seite wo man die .she themes donwloaden kann ausser skinsharp.com?

    mfg.

  • Lol... mein chinesisch ist zurzeit etwas "eingerostet", daher werde ich keine .SHE files slebst basteln... :P