piątek, 18 marca 2011

Zmiana UUID dysku VirtualBox

Dzisiaj, w celu przygotowania się do zajęć, musiałem postawić 6 razy maszynę wirtualną. Pierwszą próbą była zmiana już wcześniej posiadanego dysku vboxa na współdzielony (shared):
//najpierw przerobienie obrazu na "stały" rozmiar
VBoxManage clonehd in.vdi out.vdi --variant Fixed
//potem ustawienie out.vdi w tryb shareable
VBoxManage modifyhd out.vdi --type shareable

Niestety, podpięcie później tego dysku do 6 maszyn, i uruchomienie go, poskutkowało zburzeniem konsystencji danych na nim (co za tym idzie, linux wywalał się na starcie).
Potrzebna była więc bardziej toporna metoda - skopiowanie dysku. Aby zaoszczędzić miejsce, użyłem obrazu in.vdi, który miał dynamicznie ustawiany rozmiar pliku-obrazu.
Skopiowałem go 6 razy dla każdej maszyny...
VBoxManage clonehd in.vdi outn.vdi
po czym próbując podpiąć kolejną (pierwszą) kopię, zostałem poinformowany, że dysk o takim UUID już jest podpięty do innej maszyny i nie można go dodać.
Aby ta dość długa, bo około półgodzinna praca procesora i dysku nie poszła na marne, wykorzystałem więc wbudowaną komendę do nadawania obrazom dysków nowych numerów UUID:
VBoxManage internalcommands sethduuid outn.vdi

Oczywiście podziałało ;)

sobota, 5 marca 2011

Zmiana kodowania znaków w C#

Ostatnio pracując nad zleconym projektem musiałem zmieniać kodowanie string'a, i otrzymywać zapis bajtowy string'a, który następnie przekazywałem jako parametr metody.
Do zmiany kodowania użyć można Encoder'a któregoś kodowania z kolekcji System.Text. Przykład takiego użycia:
System.Text.ASCIIEncoding encoding = new ASCIIEncoding();
Kodowanie takie można następnie wykorzystać do otrzymania tablicy bajtowej, będącej reprezentacją zapisu string'a w danym kodowaniu. Dla przykładu powyżej:
byte[] napis_w_ascii = encoding.GetBytes("napiś");

Polecam zapoznać się z kolekcją klas System.Text.Encoding i metodami dostępnymi dla różnych kodowań

środa, 23 lutego 2011

Własna dystrybucja Linuxa

Może ten wpis nie wniesie zbyt wiele na tego bloga, jednak chętnie podzielę się z wami tą informacją.

Dla osób chcących stworzyć własną, spersonalizowaną dystrybucję linuxa, Novell udostępnił narzędzie Suse Studio. Za pomocą tego serwisu można bardzo łatwo wykreować własne distro oparte na jednej z lepszych (sam z niej korzystam) dystrybucji openSuse.
Wystarczy po zalogowaniu skorzystać z "kreatora", który bardzo ładnie prowadzi przez poszczególne kroki, pozostawiając jednak użytkownikowi swobodę w modyfikacji składu dystrybucji.
Jak na początek wystarczy ;)

czwartek, 27 stycznia 2011

Sprawdzanie roli użytkownika w SQL Server + C#

W tworzonym przeze mnie projekcie bazodanowym, z wykorzystaniem MS SQL Server 2005 i C#, potrzebowałem sprawdzania, do jakiej grupy użytkowników należy logujący się do bazy danych użytkownik.
Wykorzystując procedurę (serwerową) SQL Servera sp_helpuser z parametrem (nazwą użytkownika) otrzymałem kilka informacji, w tym tą, która mnie interesuje - grupa do której należy użytkownik.
Nazwa grupy do której należy użytkownik zawiera się w polu [GroupName].

Cała metoda, zapisana w C# wygląda tak:
private void sprawdz_role()
{
        SqlDataReader rdr = null;
        SqlParameter username = new SqlParameter("@name_in_db", this.user);
        SqlCommand cmd = new SqlCommand("sp_helpuser", conn);
        cmd.CommandType = CommandType.StoredProcedure;
        cmd.Parameters.Add(username);
        rdr = cmd.ExecuteReader();
        while (rdr.Read())
        {
                this.rola = rdr["GroupName"].ToString();
        }
        MessageBox.Show("Polaczono jako " + rola);
}

czwartek, 13 stycznia 2011

Zmiana domyślnej przeglądarki w Visual Studio 2010

Niedawno przeszedłem na nową wersję środowiska VS, z 2k8 na 2010.
Programując aplikacje SilverLighta, spotkałem się ze sporym utrudnieniem, ponieważ wcale nie tak łatwo w VS 2010 ustawić domyślną przeglądarkę w jakiej będziemy debugować.
Z pomocą przychodzi społeczność użytkowników, publikując dodatek do VS, "World of VS Default Browser Switcher", dostępny za darmo do pobrania z oficjalnej strony:
http://visualstudiogallery.msdn.microsoft.com/en-us/bb424812-f742-41ef-974a-cdac607df921
Po instalacji, wystarczy tylko z menu View, włączyć Toolbar "Default Browser Switcher".

That's all, folks...