czwartek, 15 lipca 2010

Jak wspierać mechanizm UAC w aplikacji opartej o .NET[PL]

Promuj
UAC, to z j. ang. User Account Controll, czyli technologia wprowadzona w Windows Vista (i dalej utrzymywana w Windows 7) zapobiegająca uruchamianiu aplikacji z podwyższonymi uprawnieniami. Przy uruchamianiu aplikacji, która wymaga zwiększonych uprawnień, użytkownik musi wyrazić jawną zgodę na uruchomienie, a aplikacja powinna zadbać o to by się w odpowiednim momencie o to spytać.

środa, 14 lipca 2010

OPC, OPC UA, OPC XI – gdzie szukać informacji? [PL]

O tym gdzie szukać informacji na temat OPC pisałem już jakiś czas temu. Dziś chciałbym rozwinąć ten temat i wskazać bardziej konkretne źródła informacji.

wtorek, 13 lipca 2010

70-505: Aplikacja typu MDI w Windows Forms .NET (przykłady w C#)[PL]

Promuj
MDI, to z j. angielskiego Multi Document Interface, czyli sposób tworzenia interfejsu aplikacji oparty o wiele dokumentów, które prezentowane są użytkownikowi, jako okna otwierane wewnątrz głównego okna aplikacji. Przykładem wykorzystania takiego interfejsu może być starsza aplikacja Microsoft Excel, w której wewnątrz głównej aplikacji otwierane są poszczególne arkusze (xls). Interfejs ten był kiedyś bardzo popularny w aplikacjach, które pozwalały na jednoczesną pracę nad wieloma dokumentami, teraz częściej mamy do czynienia z jego pewną odmianą. W niniejszym artykule pokazane zostanie, jak można ten interfejs wykorzystać w aplikacji opartej o .NET (przykłady w C#) i Windows Forms.

sobota, 10 lipca 2010

Jak zahibernować komputer z poziomu C# [PL]

Promuj
Czy zdarza się wam czasem potrzeba wyłączania/hibernowania/usypiania komputera za jakiś czas, np. po wykonaniu jakiegoś długotrwałego zadania? Mnie tak. Jak więc to zrobić? Niektóre aplikacje taką funkcjonalność posiadają, jednak nie wszystkie. Z pomocą może przyjść systemowe polecenie shutdown, ale nie potrafi ono wszystkiego.

piątek, 2 lipca 2010

Draft Blogger i statystyki [PL]

Dzisiaj dowiedziałem się o ciekawej (nie znanej mi wcześniej) funkcjonalności, a mianowicie o czymś co nazywa się "Wersja robocza Bloggera" ("Draft Blogger") oraz statystykach na nich dostępnych (zobaczcie na rysunek poniżej). Co warte sprawdzenia statystyki są prostsze niż GA i bardziej dopasowane do Bloggera (przez co - wydaje mi się - bardziej czytelne) . Dodatkowo dają możliwość bieżącego podglądania aktywności czytelników (z dokładnością, co do minuty! - wybierzcie "Now" by zobaczyć). Sprawdźcie! Warto!

niedziela, 27 czerwca 2010

Jak DataSet’a przenieść do MsSQL'a? (SQLServer Management Objects i SqlBulkCopy) [PL]

Promuj
W tym artykule przedstawione zostanie jak można przenieść informacje z DataSet'a (układ i zawartość) do bazy danych opartej o Microsoft SQL Server (również w wersji Express). W tym celu zostaną wykorzystane SQLServer Management Objects (SMO) i SqlBulkCopy.

niedziela, 13 czerwca 2010

Jak uczyć się C#, programować i innych takich? [PL]

Promuj
Niniejszy post jest pewnego rodzaju kontynuacją cieszącego się popularnością artykułu pod tytułem: „Jak uczyć się C#?”. Chciałbym wskazać kolejną garść rad, które nasunęły mi się od czasu napisania poprzedniego artykułu. Tym razem jednak nie jest on raczej skierowany do początkujących programistów, a raczej bardziej zaawansowanych czytelników. Dlaczego? Otóż chciałem dziś poruszyć dwie kwestie...

piątek, 11 czerwca 2010

VirtualStudy.pl - czyli nauka w sieci [PL]

Życie administratora, programisty, czy ogólnie nazywając – informatyka, wymaga stałego pogłębiania swojej wiedzy. Wiedzę można zdobywać poprzez aktywne życie zawodowe, czytanie czasopism lub literatury fachowej, czy nawet przeglądanie internetu. Nie zawsze jest jednak czas i ochota na zgłębianie obszernej dokumentacji, czy nawet czytanie jakiegoś artykułu. Czasem wolelibyśmy, by ktoś nam pewne zagadnienie po prostu wytłumaczył. Dlatego warto uczestniczyć w spotkaniach grup osób zainteresowanych daną tematyką, by wspólnie wymieniać poglądy. Przykładem takich grup są na przykład grupy związane z technologiami Microsoft, np. „Łódzka grupa profesjonalistów IT i .NET”. Na takie spotkania jednak trzeba przyjść lub przyjechać, a wcześniej zarezerwować czas. Dlatego warto zainteresować się portalem VirtualStudy.pl, przy pomocy którego możemy uczestniczyć w podobnych spotkaniach, ale online. Spotkania odbywają się w oparciu o platformę Live Meeting, która umożliwia prowadzenie wirtualnych spotkań. Podczas tych spotkań osoba prowadząca (prelegent) może wyświetlać pewne zasoby ze swojego komputera (np. prezentację), a pozostałe osoby to oglądają, słuchają i ew. mogą zadawać pytania. Spotkania odbywają się we wcześniej ustalanych terminach, ale gdy jakieś przegapimy, jest możliwość późniejszego obejrzenia nagrania z danego wydarzenia. Zachęcam do zapoznania się, z już dostępną listą publikacji: http://virtualstudy.pl/spis-publikacji.

Promuj

środa, 9 czerwca 2010

System.Web.UI.WebControls.GridView i TemplateField, czyli wygodniejsza wizualizacja i edycja [PL]

Promuj
GridView jest bardzo często wykorzystywany do wyświetlania danych typu tabelarycznego (np. lista umów w systemie), wystarczy że podepniemy się do obiektu (np. DataSet'a), który zawiera zestaw danych, które chcemy wyświetlić i już mamy ładną tabelkę na stronie. W prosty sposób można dodać kolejną funkcjonalność: edycji, czy kasowania elementów, w tym celu wystarczy wykonać kilka kliknięć i już... Gorzej, gdy nasz zestaw danych (nasza tabela) zawiera odwołania do innych tabel, np. tabela UMOWY jest powiązana z inną tabelą KONTRAHENCI i w ten sposób wskazywane jest powiązanie, z kim umowa jest podpisywana lub dla kogo jest ona wykonywana. Zwykle takie powiązanie jest realizowane przez klucze obce, np. identyfikatory wskazujące na wiersze w innych tabelach. Oczywiście wyświetlanie identyfikatora (liczby, czy GUID'a) jest bez sensu, wolelibyśmy przecież widzieć konkretną nazwę. Okazuje się, że jest to proste do wykonania, a z pomocą przychodzi TemplateField.

wtorek, 8 czerwca 2010

ObjectDataSource: OldValuesParameterFormatString oraz ConflictDetection [PL]

Ostatnio wykorzystywałem DataSet jako źródło danych typu ObjectDataSource dla kontrolki GridView. W tle za DataSet'em była baza danych oraz były skonfigurowane metody Select, Insert i Delete. Wyświetlanie danych przebiegało bezproblemowo, niestety nie działało usuwanie i edycja elementów. Powodem były kwerendy, które przy usuwaniu (delete) lub edycji (update) wykorzystywały wszystkie pola(kolumny) tabeli. Niestety domyślnie dodane źródło typu ObjectDataSource nie chciało przekazywać wszystkich parametrów i następował wyjątek.

Posty powiązane / Related posts