Zastanawialiście się kiedyś, jak dostać się do szczegółowych informacji na temat komputera przy użyciu .NET’a? Do tego celu służy WMI (Windows Management Instrumentation). Czym konkretnie jest WMI? Jak mówi polska Wikipedia, jest to: „zestaw protokołów i rozszerzeń systemu Windows umożliwiających zarządzanie i dostęp do zasobów komputera, takich jak adaptery sieciowe, aktualnie otwarte programy, lista procesów, odczyty z wbudowanych czujników temperatury, odczytów woltomierzy ...
Strona głównaUżytkownik
luki | użytkownik
Myślę, że o czymś takim jak dekompilacja wiele osób już słyszało. Jednak na wstępie przypomnę jeszcze czym właściwie ona jest. Jak wskazuje sama nazwa, jest to proces odwrotny do procesu kompilacji programu. Polega ona, więc na zamianie kodu maszynowego z powrotem na język wyższego poziomu. Należy przy tym zaznaczyć, że dekompiler podczas dekompilacji nie odtwarza oryginalnego kodu, jaki istniał przed kompilacją. Jednak odtwarza kod o takim samym działaniu jak ten źródłowy. W przypadku C# dekompilacja je...
Biblioteki łączone dynamiczne, czy też po prostu biblioteki klas każdy z nas raczej zna. Są to pliki, z którymi stykamy się na co dzień podczas pracy z systemem Windows. Jednak jakie jest ich zastosowanie? Jak je tworzyć i jak ich używać? Dzisiaj przybliżę trochę ten temat 😉 Pliki dll można nazwać swoistymi kontenerami dla kodu/zasobów. Trzeba jednak zaznaczyć, że nie są one samodzielnymi aplikacjami. Co to oznacza? Kodu w nich zawartego nie da się wykonać inaczej, jak poprzez wywołanie go w standardo...
Wszystkie bardziej rozbudowane aplikacje mają to do siebie, że przechowują wprowadzone przez użytkownika dane. Chyba nikt nie wyobraża sobie ustawiania swoich indywidualnych preferencji np. w przeglądarce internetowej, czy w grach po każdym ich restarcie. Byłoby to bardzo niewygodne i denerwujące. Rozwiązać problem zapisu ustawień aplikacji można na różne sposoby. Po co jednak się trudzić, skoro .NET daje nam to „za darmo” 😉 Tak jak już wspomniałem .NET oferuje nam bardzo przyjemną formę zapisywania us...
Chyba każdy zgodzi się z tym, że ogromna część oprogramowania przeznaczona jest do użytku przez osoby z różnych części świata – a co za tym idzie posługującymi się różnymi językami. Oczywiście istnieją również aplikacje przeznaczone na „rynek lokalny”, jednak to raczej nisza. Jak zatem w łatwy i przyjemny sposób sprawić, aby nasza aplikacja obsługiwała wiele języków jednocześnie? Sposobów znajdzie się wiele, jednak na szczęście w przypadku .NET’a ta sprawa jest naprawdę prosta 😉 Właściwie do każdego p...
Ten wpis jest skierowany do osób, które chciałyby napisać swój własny plugin do opisywanego przeze mnie wczoraj Cleanera 😉 Zaczynajmy więc! Pierwszą rzeczą, jaką należy zrobić, jest oczywiście stworzenie nowego pustego projektu. Musi być to projekt typu Class Library, a więc biblioteka klas. Po jego kompilacji otrzymamy plik *.dll, który po dodaniu do folderu plugins zostanie załadowany przez Cleanera. Oczywiście pod warunkiem, że zachowamy pewien wzorzec podczas pisania naszego pluginu 😉 Po utworzen...
W końcu po dłuższej przerwie udało mi się przysiąść do pisania tutaj 😉 Przez ostatnie dwa tygodnie (prawie)każdą wolną chwilę poświęcałem programowaniu. Postanowiłem napisać od nowa mój dosyć stary projekt. Poprzednia wersja była napisana w code-behind i generalnie rzecz biorąc… Jej kod był po prostu straszny, jednak nie ma co się dziwić – w końcu był to mój pierwszy pełnoprawny program napisany w c#. O jakim projekcie mowa? Konkretnie o programie do czyszczenia zbędnych w systemie plików. Takich jak pl...
Wpadłem dzisiaj na pomysł, że całkiem fajnie byłoby, gdyby przy każdej kompilacji projektu w Visual Studio numerek jego wersji sam się powiększał. Szukałem rozwiązania w internecie – niestety bezskutecznie. Może robiłem to zbyt niewnikliwie, jednak zamiast marnować czas na dalsze poszukiwania postanowiłem… W jakiś sposób sam rozwiązać ten problem. Jak powszechnie wiadomo oprogramowanie zazwyczaj oznacza się dwoma numerami. Są to numer wersji oraz kompilacji. O ile numer wersji zmienia się zwykle tylko w...
Windows tray’a na pewno każdy zna. Jest to ten obszar paska zadań, w którym widoczne są ikony programów działających w tle. Klikając na nie, możemy łatwo wyświetlić okno danego programu. Nic nie stoi na przeszkodzie, aby klikając na tę samą ikonkę PPM zmienić podstawowe ustawienia programu bez wyświetlania jego okna. Niektóre aplikacje wyświetlają też od czasu do czasu powiadomienia w postaci dymków. Całkiem fajna rzecz. Jak w takim razie się do niej dobrać przy pomocy C#? Pisząc aplikację w technologii...
Zacznijmy może od tego, że XML to skrót od od angielskich słów „Extensible Markup Language”, które można przetłumaczyć jako „Rozszerzalny Język Znaczników”. Do czego służy ów język? Jego zadaniem jest przechowywanie w sposób uporządkowany różnych danych. Nie należy jednak mylić go z bazą danych, bo po prostu nią nie jest. Dokumenty XML ze względu na swoją specyfikę, nie są uzależnione od żadnej konkretnej platformy. Można ich używać właściwie wszędzie, od komputera PC, aż do różnych innych dziwnych tworó...
Bazy danych i XML 2942 dni, 16 godzin, 41 minut temu 242 źrodło rozwiń
Dawno nie dodawałem żadnego wpisu na blogu. Dlaczego? Dlatego, że wraz z kolegami postanowiliśmy wziąć udział w konkursie Hackathon Hack Heroes, organizowanym przez apki.org. Przez to nie miałem już czasu, żeby tutaj pisać 😉 Streszczając: jest to konkurs skierowany do uczniów szkół ponadgimnazjalnych. Pracą konkursową ma być aplikacja lub prototyp aplikacji, która poprawi komfort życia mieszkańców naszego miasta. Technologia, w jakiej tworzony będzie projekt jest dowolna. Co więc my wymyśliliśmy? Jako,...
Twoim workspace jest katalog w którym uruchomisz Visual Studio Code, za pomocą konsoli, pisząc code . Taki workspace może mieć własny plik konfiguracyjny, możesz go utworzyć przez File->Preferences->Workspace settings. w poście znajdują się ustawienia, które mogą zależeć od rodzaju projektu na którym pracujesz.
Szyfry towarzyszą ludzkości już od dawien dawna. Przez wieki powstała ich cała masa. Jednym było bliżej, a innym dalej do doskonałości. Jednak rzeczą, która je łączy jest chęć przekazywania poufnych informacji w taki sposób, aby odczytać mogła je tylko osoba, dla której ta informacja jest przeznaczona. Dobre szyfrowanie ważnych informacji mogło często decydować np. o przegranej bitwie, lub wojnie. Jednak jakie zastosowanie ma szyfrowanie w naszym obecnym codziennym życiu? Zastosowań jest cała masa. Szyfr...
Większość aplikacji pisanych w .NET, korzysta z funkcji udostępnianych przez ten framework od wersji 4.0, lub starszej. Dlaczego? Zapewne dlatego, że wersja ta zawiera właściwie 90% rzeczy, które są nam do szczęścia potrzebne. Dodatkowym atutem pisania aplikacji w wersji 4.0 tego frameworka, jest fakt, że to ostatnia wersja dostępna dla Windowsa XP. Jednak co w przypadku, kiedy zdecydujemy się porzucić starego XP’ka i skorzystać z nowych funkcji, jakie wnosi .NET 4.5? Okazuje się, że napotkamy na mały p...
W MonoGame możemy pisać nie tylko gry desktopowe, lecz także gry na platformy mobilne. Co najlepsze, niemal cały kod dowolnej gry napisanej w tym frameworku, możemy po prostu skopiować do nowego projektu przeznaczonego np. dla Androida i skompilować. Ten zabieg powinien wystarczyć, aby móc uruchomić naszą grę na telefonie/tablecie. Oczywiście są rzeczy, na które należy zwrócić szczególną uwagę… O czym przekonałem się na własnej skórze 😉 Na początku chciałem pokazać jak przenieść naszego Snake’a na tele...
W tej części w końcu zajmiemy się stworzeniem tego co najważniejsze – gracza – czyli węża, oraz planszy po której będzie się poruszał. Gra w końcu stanie się grywalna 😉 Zapraszam do czytania! Tą część serii zacząłem pisać w poniedziałek. Wyglądała ona zupełnie inaczej niż wersja, którą za chwilę przeczytasz. Dlaczego w ogóle o tym piszę? Dlatego, że dzisiejszy wpis, będzie napisany trochę w innym stylu. Początkowo chciałem napisać go w taki sam sposób jak poprzednie, czyli co robimy z naszym kodem krok...
Korzystając z (późnego)piątkowego popołudnia postanowiłem dodać ten wpis przed czasem. Co prawda jestem trochę śpiący, ale mam nadzieję że nie wpłynie to na jakość dalszej części tego wpisu :P. Tak, więc bez zbędnego przedłużania – zaczynajmy! W tym wpisie zajmiemy się stworzeniem szkieletu kodu naszej gry. Pierwszą rzeczą jaką należy zrobić, to oczywiście utworzenie pustego projektu MonoGame – dokładniej Cross Platform Desktop Project. W poprzednim wpisie tłumaczyłem mniej, więcej co jest od czego, w ...
Wakacje się skończyły, z czasem więc jest już trochę gorzej. Jednak udało mi się go trochę wygospodarować, a co najważniejsze znalazły się też chęci. Zaczynam, więc w końcu serię pt. „Tworzymy grę Snake w Monogame” 😉 No właśnie, zanim zacznę serię chcę, żeby było jasne jak będzie ona wyglądać. Wymyśliłem to sobie tak, że podzielę ją (na co wskazuje sama nazwa) na kilka części. Każda z części będzie dokładała do naszej gry jakąś cegiełkę. Dzięki temu będę mógł dokładnie omówić wszystkie kwestie. Muszę ...
Niedługo minie miesiąc od tego jak dodałem na tym blogu swój pierwszy wpis. Z tejże okazji postanowiłem przekazać Wam moje przemyślenia z tego, jakże krótkiego okresu. Jednak dla mnie dosyć przełomowego 😉 Przy okazji chciałbym zachęcić wszystkich programistów do prowadzenia własnego bloga – nie ważne czy jesteś początkujący, czy nie. Nie ważne nawet czy potrafisz dobrze pisać. Sam uważam, że do pisarza wiele mi brakuje… Niby już o tym wspominałem w pierwszym poście na tym blogu. Jednak opisałem temat n...
Jest to chyba rzecz najbardziej podstawowa podczas tworzenia jakiejkolwiek gry. Problem w tym, że MonoGame nie udostępnia nam czegoś takiego jak najprostsze przyciski. W takim razie jak rozwiązać problem z MENU w grze? Jeżeli chcesz dowiedzieć się jak ja rozwiązałem ten problem, czytaj dalej ;)