Ustawianie głośności oraz daty w Windowsie przez program C#

0

Jak można kontrolować głośność odtwarzania plików wav (domyślnie chciałbym regulować głośność główną windowsa) oraz jak ustawić datę przez program napisany w C# ? Jakich komponentów/metod używać ?

0

Wykorzystałem następujący pomysł

public class DateSetup
        {
            [System.Runtime.InteropServices.DllImport("kernel32 ", SetLastError =
            true)]
            private static extern bool GetSystemTime(out SYSTEMTIME systemTime);
            [System.Runtime.InteropServices.DllImport("kernel32 ", SetLastError =
            true)]
            private static extern bool SetSystemTime(ref SYSTEMTIME systemTime);
            struct SYSTEMTIME
            {
                internal short wYear;
                internal short wMonth;
                internal short wDayOfWeek;
                internal short wDay;
                internal short wHour;
                internal short wMinute;
                internal short wSecond;
                internal short wMilliseconds;
            }
            public static void SetTime(short argYear, short argMonth, short argDayOfWeek, short argDay,
                short argHour, short argMinute, short argSecond, short argMilliseconds)
            {
                SYSTEMTIME st;
                st.wYear = argYear; st.wMonth = argMonth; st.wDayOfWeek = argDayOfWeek;
                st.wDay = argDay; st.wHour = argHour; st.wMinute = argMinute;
                st.wSecond = argSecond; st.wMilliseconds = argMilliseconds;
                if (SetSystemTime(ref st))
                    MessageBox.Show("OK");    
                else
                    MessageBox.Show("","",MessageBoxButtons.OK,MessageBoxIcon.Error);
            }
        }

jednak przy użyciu DataSetup.SetTime(....) nie potrafie zmienić daty - co o tym myślicie ?

0
Popcio napisał(a)

jednak przy użyciu DataSetup.SetTime(....) nie potrafie zmienić daty - co o tym myślicie ?

a robisz to na XP czy Viscie/7 ? na koncie administratora czy zwykłego usera ? pytam, bo np. ja na XP pracuje na koncie usera, wiec jakkolwiek by się aplikacja nie męczyła, na moim XP czasu nie zmieni.

Co do Visty/7 PODEJRZEWAM(nie mam Visty pod ręką), że nawet pracując z uprawnieniami admina, by zmienić datę potrzebne jest potwierdzenie tej operacji przez UAC - co oznacza co najmniej odpowiedni manifest, ale nie jestem oblatany w temacie, wiec więcej nie powiem.

0

No niestety ma to być na Windows viście x86.

0

Inne rozwiązanie to okienka z głośnością/datą windowsową (bez użycia myszki). Jak można coś takiego zrobić ?

0
Popcio napisał(a)

Co do Visty/7 PODEJRZEWAM(nie mam Visty pod ręką), że nawet pracując z uprawnieniami admina, by zmienić datę potrzebne jest potwierdzenie tej operacji przez UAC - co oznacza co najmniej odpowiedni manifest, ale nie jestem oblatany w temacie, wiec więcej nie powiem.
http://4programmers.net/Forum/viewtopic.php?id=146851</quote>

1 użytkowników online, w tym zalogowanych: 0, gości: 1