Hej! System.Environment.OSVersion är nog intressant tror jag Det vet jag redan. Det är väl bara att låta bli att göra anropet om det är fel version? http://www.dreamincode.net/forums/showtopic112347.htm Ja.. det var ju många gånger lättare än jag först tänkte mig.Köra kod beroende på windowsversion
Jag har ett litet program som anropar till dwm i windows vista för att få ut lite av glaseffekten på ena sidan av fönstret och det fungerar fint.
Men jag upptäckte nyss att i windows xp och äldre kraschar programmet då det försöker nå dwmapi.dll (som hanterar detta men förstås inte finns i de äldre versionerna).
Finns det något sätt att syra att en viss del av kod ska köras beroende på vilken windowsversion det är. Detta är då lite speciellt eftersom koden inte ligger inuti en sub eller liknande.
T.ex. skulle jag vilja styra när den här delen av koden körs:
<DllImport("dwmapi.dll", CharSet:=CharSet.Auto)> _
Public Shared Sub DwmExtendFrameIntoClientArea(ByVal hWnd As System.IntPtr, ByRef pMargins As Margins)
End Sub
Någon som har ett bra tips? Kan man kanske slänga in koden i en klass som bara används i en viss typ av version eller liknande?
Sv: Köra kod beroende på windowsversion
Sv:Köra kod beroende på windowsversion
Men hur anropar jag den utanför en sub?
Om du läser min bit av kod ser du att jag anropar dll:en och skapar en sub-rutin.
Finns det kanske något smidigare sätt att göra detta på, där man kan hämta OSVersion? Eller kan man använda någon slags #If? Har aldrig använt dessa men sett att det finns.
En annan variant kanske skulle vara att lägga in koden för glaseffekten i en särskilt class eller modul som bara hämtas om osversion är rätt, men jag vet inte riktigt hur jag skulle gå till väga då heller.Sv: Köra kod beroende på windowsversion
Sv:Köra kod beroende på windowsversion
Samma fråga, till och med samma dll :-)
Det är alltså inget problem att deklarera dll-metoden. Sålänge du inte anropar den.Sv: Köra kod beroende på windowsversion
Tack!