[Archiwum biuletynów ^][< Wolumin 2, Numer 5][Wolumin 3, Liczba 2 >]

System wewnętrzny biuletyn woluminu 3, numer 1

http://www.sysinternals.com
Copyright (C) 2001 Mark Russinovich


18 kwietnia 2001 r. — w tym problemie:

  1. REDAKCJI

  2. CO NOWEGO W SYSINTERNALS

    • PsService v1.01
    • PsFile v1.0
    • PsExec v1.11
    • HandleEx w wersji 4.0
    • DebugView w wersji 4.11
    • Wewnątrz systemu Windows 2000, 3rd Ed.
    • Magazyn Windows 2000 z lutego
    • Sysinternals w firmie Microsoft
  3. INFORMACJE WEWNĘTRZNE

    • Skróty klawiaturowe Chłodna
    • Komunikaty debugowania pnP
    • Orzeczenie inżynierii odwrotnej
    • Nowe wywołania systemowe systemu Windows XP
    • Rozłączona sieć
    • WinDev
    • TechEd US
  4. CO SIĘ DZIEJE

    • Wewnątrz pobierania wstępnego systemu Windows XP

SPONSOR: WINTERNALS SOFTWARE ~~~~

Biuletyn Sysinternals jest sponsorowany przez Winternals Software, w Sieci Web http://www.winternals.com. Winternals Software jest wiodącym deweloperem i dostawcą zaawansowanych narzędzi systemów dla systemu Windows NT/2K. Produkty Winternals Software obejmują FAT32 dla systemu Windows NT 4.0, NTFSDOS Professional Edition (sterownik NTFS do odczytu/zapisu dla SYSTEMU DOS) i Remote Recover.

Winternals z dumą ogłasza defrag Commander NE w wersji 1.2, niedrogie, łatwe w użyciu rozwiązanie defragmentacji przedsiębiorstwa, które dodaje obsługę NT 4 do istniejącej pomocy technicznej systemu Windows 95/98/Me i Windows 2000. Defrag Commander NE wykorzystuje wbudowane defragmentatory systemów Windows 2000 i Windows 95/98/Me i dodaje własny zaawansowany defragmentator dla systemu Windows NT 4. Teraz można zarządzać harmonogramami defragmentacji w całym przedsiębiorstwie systemu Windows za pomocą prostego przystawki MMC — nawet bez konieczności instalowania dowolnego oprogramowania klienckiego w systemach NT lub Windows 2000. Licencja 10-systemowa jest dostępna do zakupu online tylko za 169 USD, a agresywne rabaty na ilość są dostępne. Odwiedź stronę http://www.winternals.com , aby uzyskać więcej informacji.

Witam wszystkich,

Witamy w biuletynie Sysinternals. Biuletyn ma obecnie 31 500 subskrybentów.

Jedną z pierwszych rzeczy, które zauważysz podczas instalowania wersji beta systemu Windows XP, jest przeprojektowany interfejs użytkownika o nazwie Luna. Luna look-and-feel przenika wszystkie aspekty interfejsu, od zachowania menu startowego, do projektowania menu aplikacji i okien dialogowych. Ta całkowita konwersja jest osiągana za pomocą aparatu "motywów". Motywy są opisane w plikach stylu motywu (plikach, które kończą .msstylessię na ) i pliku motywu Luna, luna.msstyle, znajduje się w \Windows\Resources\Themes\Luna. W tym samym katalogu znajdziesz podkatalog o nazwie Shell, w którym znajduje się shellstyle.dll. Nie jest jasne, jak XP używa biblioteki DLL — jest ładowany przez Eksploratora i ma w nim pochowany arkusz stylów HTML, ale nie eksportuje. Ponieważ comdlg.dll i kernel32.dll go importować, a każda aplikacja pobiera kopię tych bibliotek DLL, każdy proces pobiera również załadowaną kopię biblioteki klienta motywów \Windows\System32\UxTheme.DLL. Ta biblioteka DLL eksportuje funkcje, takie jak IsThemeActive, , IsAppThemedGetCurrentThemeName, DrawThemeBackgroundi GetThemeColor.

Rejestr to miejsce, w którym określono bieżący motyw i skonfigurowano wszechobecność motywu. Przyjrzyj się elementowi HKEY_CURRENT_USER\Software\Microsoft\Plus!\Themes i znajdziesz klucz o nazwie Apply , w którym są wyświetlane wartości takie jak "kolory" i "ikony", które określają, gdzie motyw powinien być aktywny. W tym samym kluczu Current podklucz ma ścieżkę do pliku msstyles dla bieżącego motywu.

Biorąc pod uwagę, że "skinning" stał się wściekłość dla aplikacji, takich jak WinAmp i Odtwarzacz multimedialny Windows, zakładasz, że firma Microsoft opublikuje narzędzie, które pozwoli innym firmom opracowywać własne motywy, lub przynajmniej udokumentować format .msstyles pliku i shellstyle DLL, aby osoby trzecie mogły opracowywać edytory motywów. Byłoby jednak źle. In "Microsoft Windows XP: What's in It for Developers?" (opublikowany w internecie pod adresem http://msdn.microsoft.com/library/default.asp?URL=/library/techart/winxpintro.htm), firma Microsoft wyjaśnia, że nie ma zamiaru zezwalać na motywy innych firm:

"Na pierwszy rzut oka potencjał wielu stylów systemu Windows XP może wyglądać jak funkcjonalność skóry w takich aplikacjach jak windows Odtwarzacz multimedialny, ale istnieją różnice. Motywy zmieniają styl wizualny systemu operacyjnego, ale nadal zapewniają spójny interfejs użytkownika z wcześniejszymi wersjami systemu Windows. Jest to ważne, ponieważ motywy są stosowane w całym systemie. Zmiany stosowane do skóry aplikacji, takie jak usuwanie przycisków, nie są odpowiednie na poziomie systemu operacyjnego. Formaty plików motywu nie są publiczne; Firma Microsoft zachowuje kontrolę projektową motywów, aby umożliwić spójny interfejs użytkownika i zapewnić ciągłość projektowania. Zestaw dewelopera motywu nie będzie dostępny w systemie Windows XP.

Argumentem jestem pewien, że są one dla takiego stanowiska jest to, że motywy innych firm mogą w jakiś sposób złamać interfejs użytkownika, a użytkownicy będą dzwonić do pomocy technicznej firmy Microsoft w celu uzyskania pomocy. Dlaczego nie mają tego samego strachu z Odtwarzacz multimedialny Windows, nie wiem. Niemniej jednak istnieją sposoby stosowania wyglądu przypominającego motyw do pulpitu i aplikacji. Odwiedź stronę http://www.wincustomize.com/ , aby znaleźć skóry pulpitu systemu Windows, takie jak nowa Aqua-Soft (skóra WindowBlinds - http://www.windowblinds.net), która daje Windows wygląd i działanie pulpitu OS X firmy Apple. I biorąc pod uwagę trwałość społeczności skinning w dowiedzieć się, jak skóry wszystko wydane, jestem pewien, że są ludzie w tej chwili odwrócony format motywu inżynierii Firmy Microsoft. To tylko kwestia czasu, zanim ktoś wyda edytor motywów, niezależnie od zasad firmy Microsoft dotyczących kontrolowania motywów.

Co więc firma Microsoft zrobi, gdy pojawią się edytory motywów systemu Windows XP i motywy innych firm? Będziemy musieli poczekać i zobaczyć, ale zachowanie firmy Apple może dać nam podgląd. Kilka dni temu Apple wydało firmę opracowującą edytor motywów dla systemu Mac OS nakaz zaprzestania i odsunięcia: http://www.macworld.co.uk/news/main_news.cfm?NewsID=2773. Uważaj na dewelopera motywów.

Przekaż biuletyn do znajomych, którzy mogą cię zainteresować.

Dziękujemy.

-Mark

CO NOWEGO W SYSINTERNALS

PSSERVICE V1.01

Zestawy Resource Kit NT 4 i Win2K miały narzędzie kontroli usługi wiersza polecenia, SC, tak długo, jak pamiętam. Sc umożliwia wyświetlanie i zmienianie stanu i konfiguracji usług Win32 w lokalnych lub zdalnych systemach. PsService to bezpłatny klon sc, który ma kilka dodatkowych funkcji.

Po pierwsze, usługa PsService umożliwia łączenie się z systemami zdalnymi przy użyciu alternatywnych poświadczeń użytkownika. Jest to przydatne w przypadkach, gdy konto, z którego jest uruchomione, nie ma uprawnień administracyjnych w systemie zdalnym, ale masz dostęp do konta, które to robi. Drugi to możliwość wyszukiwania usługi PsService. Jeśli kiedykolwiek nie pamiętasz, który system w sieci uruchamia system DNS, DHCP lub inną usługę, znajdziesz przydatną usługę wyszukiwania, ponieważ umożliwia określenie nazwy usługi i raportowania komputerów z uruchomioną usługą.

Usługa PsService korzysta z interfejsu API programu Service Control Manager, dla którego można znaleźć pełną dokumentację w zestawie SDK platformy, a usługa PsService nie wymaga instalacji oprogramowania klienckiego.

Pobierz program PsService w wersji 1.01 pod adresem http://www.sysinternals.com/ntw2k/freeware/psservice.shtml.

PSFILE V1.0

PsFile to narzędzie utworzone w odpowiedzi na żądania dotyczące czegoś, co pozwala przezwyciężyć ograniczenia polecenia "net file" w systemie Windows NT/2K. Możesz użyć wbudowanego polecenia "net" w NT i Win2K z opcją "plik", aby wyświetlić listę plików, które inne komputery zostały otwarte w udziałach wyeksportowanych przez system. Jednak polecenie net obcina długie nazwy ścieżek i działa tylko w systemie lokalnym.

Plik PsFile używa tych samych interfejsów API (odpowiednio interfejsu API "Net", który jest udokumentowany w zestawie SDK platformy) jako polecenia net, ale nie obcina nazw plików i działa lokalnie i zdalnie, bez potrzeby instalacji oprogramowania klienckiego.

Pobierz plik PsFile w wersji 1.0 na http://www.sysinternals.com/pstools.htm.

PSEXEC V1.11

PsExec to aplikacja wiersza polecenia dla systemu Windows NT/2K, która umożliwia wykonywanie programów w systemach zdalnych. Co sprawia, że jest szczególnie zaawansowany, jest to, że zdalnie włącza programy konsolowe, dzięki czemu można je uruchamiać interaktywnie. Jeśli na przykład uruchomisz plik wykonywalny wiersza polecenia (cmd.exe) w systemie zdalnym przy użyciu programu PsExec, masz zdalną powłokę — i nie musisz instalować żadnego oprogramowania klienckiego.

Oprócz obsługi jako lekkiego telnetu program PsExec umożliwia zdalne włączanie aplikacji "tylko lokalnie". IpConfig, wbudowane narzędzie, które pokazuje konfigurację sieci systemu, nie może pokazać konfiguracji systemów zdalnych. Za pomocą programu PsExec można jednak uruchomić go zdalnie i wyświetlić dane wyjściowe lokalnie.

W niektórych przypadkach ważne jest konto, na którym działa aplikacja. Aplikacja może wymagać uruchomienia na koncie, aby zmiany wprowadzone w rejestrze lub plikach miały miejsce w prawidłowym kontekście zabezpieczeń. W innych przypadkach może być pożądane uruchomienie aplikacji w innej niż ta, w której uruchomiono program PsExec, a jednak w innych przypadkach może być konieczne uruchomienie aplikacji zdalnej na koncie systemowym. Program PsExec obsługuje wszystkie te sytuacje.

Domyślnie program PsExec wykonuje programy w kontekście zabezpieczeń "personifikowany". Oznacza to, że jeśli uruchomisz program PsExec na koncie administratora, proces zdalny zostanie uruchomiony na koncie administratora. Ze względu na ograniczenia dotyczące możliwości personifikacji proces zdalny nie będzie miał dostępu do zasobów sieciowych w systemie zdalnym. Jeśli określisz nazwę użytkownika i hasło w wierszu polecenia programu PsExec, program PsExec uruchomi proces zdalny na koncie alternatywnym, a proces zdalny ma dostęp do wszystkich zasobów sieciowych, które są dostępne z tego konta. Na koniec opcja wiersza polecenia umożliwia kierowanie programu PsExec do uruchamiania procesu zdalnego na koncie systemowym — tego samego konta, w którym działają usługi Win32.

Pobierz program PsExec v1.11 pod adresem http://www.sysinternals.com/ntw2k/freeware/psexec.shtml.

HANDLEEX V4.0

HandleEx to wieloaspektowe narzędzie, które pokazuje listę procesów aktywnych na komputerze, a także dojścia do zasobów systemu operacyjnego, które zostały otwarte, oraz załadowanych bibliotek DLL. Funkcja wyszukiwania i szczegółowa prezentacja procesów, obsługi i właściwości bibliotek DLL sprawiają, że narzędzie HandleEx jest idealnym narzędziem do śledzenia problemów z wersją biblioteki DLL, obsługi przecieków i procesu uzyskiwania dostępu do określonego pliku lub katalogu.

Jeśli obserwujesz aktualizacje programu Sysinternals, zauważysz, że w ciągu ostatnich kilku miesięcy program HandleEx skoczył dwa główne numery wersji. Pierwsza główna aktualizacja, wersja 3.0, wprowadziła szereg funkcji, takich jak ikony aplikacji w widoku procesu, etykietki narzędzi dla wszystkich elementów widoku listy, znacznie wydajniejsze odświeżanie i ulepszoną funkcję wyszukiwania, w której można kliknąć elementy wyników w oknie dialogowym wyszukiwania i przejść do odpowiedniego dojścia lub wpisu BIBLIOTEKi DLL.

Być może najbardziej przydatne funkcje dla deweloperów to jednak "wyróżnianie odświeżania" i wyróżnianie przeniesionej biblioteki DLL. Wyróżnianie odświeżania odnosi się do zachowania funkcji HandleEx podczas odświeżania widoku. Nowe elementy, w tym procesy, uchwyty lub załadowane biblioteki DLL, które nie były obecne przed odświeżeniem, są wyróżnione kolorem zielonym, natomiast elementy, które już nie istnieją, są wyróżnione na czerwono. Oprócz wizualnego przechylania cię do zmian, pozwala to wyraźnie zobaczyć przecieki obsługi w toku, gdzie nowo otwarte uchwyty pojawiają się w kolorze zielonym po odświeżeniu.

Funkcja HandleEx przeniesiona-wyróżnianie bibliotek DLL jest związana z relokacją bibliotek DLL, termin opisujący zachowanie modułu ładującego moduł w systemie Windows, w którym nie może honorować preferowanych deweloperów "adresu podstawowego" określonego podczas kompilowania biblioteki DLL. Kod, który konsolidator (narzędzie używane do ostatniej fazy kompilacji bibliotek DLL lub EXE) tworzy dla biblioteki DLL odwołania do pamięci wewnątrz biblioteki DLL ustawione z założeniem, że moduł ładujący będzie honorować adres podstawowy biblioteki DLL. Zakres pamięci w procesie ładowania biblioteki DLL rozpoczynającej się od adresu podstawowego i dostosowany do rozmiaru załadowanego obrazu DLL musi być bezpłatny, aby biblioteka DLL ładowała się pod preferowanym adresem podstawowym. Gdy adres podstawowy jest honorowany dla kilku procesów, wydajność użycia pamięci jest osiągana, ponieważ wszystkie procesy współdzielą tę samą pamięć kodu DLL.

Jeśli moduł ładujący nie może honorować adresu podstawowego biblioteki DLL, na przykład gdy inny używa już żądanego zakresu adresów, moduł ładujący musi wykonać "relokację", która obejmuje zaktualizowanie wszystkich odwołań do pamięci wewnątrz biblioteki DLL w celu odzwierciedlenia rzeczywistego adresu ładowania biblioteki DLL. Poza spowolnieniem czasu ładowania procesu (zwykle nieumyślnego) przeniesiony obraz DLL nie może być współużytkowany z innymi procesami, które mają bibliotekę DLL załadowaną pod preferowanym adresem podstawowym. Oznacza to, że efektywnie uzyskujesz drugą kopię pamięci zużywanej przez bibliotekę DLL.

Gdy jesteś w trybie DLL, możesz wybrać opcję "Wyróżnij przeniesione biblioteki DLL", co powoduje wyświetlenie wpisów dla bibliotek DLL, które nie są ładowane na preferowanym adresie podstawowym w kolorze żółtym. Deweloperzy mogą zresetować swoje adresy podstawowe bibliotek DLL, aby uniknąć relokacji.

Co z przejściem do wersji 4.0 programu HandleEx? Ta najnowsza wersja narzędzia HandleEx zapewnia pełne wyświetlanie dojścia do platformy Win9x/Me. Teraz możesz wybrać proces i wyświetlić otwarte dojścia, tak samo jak podczas uruchamiania narzędzia HandleEx w systemie WinNT/2K/XP. Nie tylko to, ale także tak jak w winNT/2K/XP, wyświetlanie właściwości zdarzeń, mutexes i semaphores ujawnia informacje o ich stanie (przechowywane, sygnalizowane).

Pobierz narzędzie HandleEx 4.0 pod adresem http://www.sysinternals.com/ntw2k/freeware/handleex.shtml.

DEBUGVIEW V4.11

DebugView to narzędzie deweloperskie, które umożliwia przechwytywanie danych wyjściowych debugowania z aplikacji lub sterowników w systemie lokalnym lub zdalnym — nawet z wielu systemów jednocześnie. Ta najnowsza wersja dodaje zgodność z systemem Windows XP Beta 2, niektóre funkcje użyteczności i funkcja przeznaczona dla deweloperów sterowników urządzeń w systemie WinNT/2K/XP.

Okno dialogowe filtrowania debugview umożliwia zdefiniowanie masek filtrów dołączania i wykluczania, aby zawęzić dane wyjściowe debugowania, które cię interesują. Ponadto można określić maksymalnie 5 różnych filtrów wyróżniania, z których każdy ma inny dostosowywalny kolor. Wcześniej, jeśli masz projekty, które wymagały różnych filtrów, trzeba było ponownie wstawić filtry za każdym razem, gdy przełączono projekty. Za pomocą widoku DebugView 4.11 można zapisywać filtry w pliku w celu szybkiego ponownego ładowania. Podobnie jak wcześniej, funkcja DebugView rozpoczyna się od filtrów, które były aktywne podczas poprzedniego zamknięcia.

Czasami konieczne jest przechwycenie śledzenia danych wyjściowych debugowania na potrzeby późniejszej analizy lub porównanie z innymi śladami. Przed nową wersją debugview jedynym sposobem wyświetlenia pliku dziennika było załadowanie go do edytora tekstów, co oznaczało, że nie można zastosować przydatnych filtrów wyróżniania. Teraz możesz załadować plik dziennika DebugView z powrotem do widoku DebugView, co umożliwia wyświetlanie danych wyjściowych w sposób, w jaki został on wyświetlony podczas jego pierwotnego przechwycenia. Korzystanie z wielu okien DebugView umożliwia porównywanie śladów.

Ostatnia nowa funkcja, rejestrowanie w czasie rozruchu, uzupełnia obsługę zrzutów awaryjnych debugview w NT/Win2K. W przypadku zrzutu awaryjnego debugview obsługuje przechwytywanie danych wyjściowych ze sterownika urządzenia, a jeśli sterownik ulegnie awarii i masz włączone zrzuty awaryjne (pełne lub jądro), użyj debugView, aby wyodrębnić dane wyjściowe debugowania sterownika z zrzutu — pozwalając zobaczyć dane wyjściowe sterownika bezpośrednio do punktu awarii.

Rejestrowanie w czasie rozruchu umożliwia przechwytywanie danych wyjściowych ze sterowników, które ładują się podczas procesu rozruchu jako sterowniki rozruchu lub uruchamiania systemowego. Sterownik DebugView przechwytuje i buforuje do 1 MB danych wyjściowych debugowania podczas rozruchu po włączeniu rejestrowania w czasie rozruchu. Po uruchomieniu systemu aplikacja DebugView importuje buforowane dane wyjściowe do wyświetlenia. A jeśli kierowca ulegnie awarii podczas rozruchu i masz włączone zrzuty awaryjne, obsługa zrzutu awaryjnego debugView umożliwia wyświetlenie danych wyjściowych sterownika wygenerowanego przed awarią.

Pobierz widok DebugView w wersji 4.11 pod adresem http://www.sysinternals.com/ntw2k/freeware/debugview.shtml.

WEWNĄTRZ SYSTEMU WINDOWS 2000, 3RD EDITION

Oficjalna książka na temat wewnętrznych systemu Windows 2000 jest teraz dostępna! Ta edycja, współtworzona przez Davida Solomona (www.solsem.com) i Marka Russinovicha, jest ponad 40% większa niż poprzednia, a nowe pokrycie sieci, plug-and-play, zarządzanie energią, usługi, Rejestr, WMI, rozruch i zamykanie oraz magazyn. Zawiera również dysk CD z kilkoma zaawansowanymi narzędziami, niedostępnymi nigdzie indziej, na potrzeby badania wewnętrznych systemu Windows 2000.

Jeśli pójdziesz na stronę Amazon.com książki, , zauważysz, http://www.amazon.com/exec/obidos/ASIN/0735610215/o/qid%3D957490318/sr%3D8-1/ref%3Daps%5Fsr%5Fb%5F1%5F1/103-5793119-3499040/systemsinternals/107-2386425-6078131że tylko dwa recenzje zostały opublikowane od wydania książki we wrześniu. Jeśli masz książkę, zdecydowanie zachęcamy do dzielenia się swoimi opiniami z innymi potencjalnymi czytelnikami.

Zobacz spis treści i kolejność książki za pośrednictwem http://www.sysinternals.com/insidew2k.htm.

MAGAZYN WINDOWS 2000 LUTEGO

Zapoznaj się z lutowym wydaniem magazynu Windows 2000 Dla mojego artykułu na temat NT/Win2K analizy zrzutu awaryjnego. W tym artykule przedstawiono podstawowe informacje na temat konfigurowania zrzutów awaryjnych i wyjaśniono, jak system operacyjny tworzy zrzut awaryjny (z wskazówkami dotyczącymi przyczyny niepowodzenia generowania zrzutu). Następnie wyjaśniam, gdzie można uzyskać najnowsze narzędzia do analizy zrzutu i przejść przez korzystanie z zaawansowanego nowego narzędzia firmy Microsoft, Kanalyze. Na koniec szybko przyjrzyję się użyciu debugera jądra do zbadania zrzutu. Nawet jeśli tylko niewielki ułamek zrzutów ujawnia ich przyczynę z analizą, należy znaleźć przydatne informacje.

Artykuł jest publikowany online za pośrednictwem linku pod adresem http://www.sysinternals.com/publ.shtml, gdzie można znaleźć linki do wszystkich naszych publikacji.

SYSINTERNALS AT WWW.MICROSOFT.COM

Sysinternals pojawiło się w jeszcze większej liczbie artykułów bazy wiedzy Microsoft Knowledge Base (KB) od ostatniego biuletynu, przynosząc sumę, którą znalazłem, odwołując się do narzędzi Sysinternals do 17.

  • Q274038: PRB: BŁĄD ASP 8002801d "Biblioteka nie jest zarejestrowana"
    http://support.microsoft.com/support/kb/articles/Q274/0/38.ASP
    Ten artykuł kieruje użytkowników do regmon w celu rozwiązywania problemów z błędami stron active server.

  • Q232830: HOWTO: Określanie własności dojścia do plików
    http://support.microsoft.com/support/kb/articles/Q232/8/30.ASP
    Chcesz dowiedzieć się, jaki proces ma otwarty plik? Ten artykuł bazy wiedzy kieruje Cię do obsługiex.

  • Q2163868: PRB: naruszenie dostępu podczas instalacji aplikacji podczas korzystania z pliku
    http://support.microsoft.com/support/kb/articles/Q216/3/68.ASP
    Aplikacje instalatora języka Visual Basic mogą ulec awarii, jeśli plik, który próbuje skopiować, jest używany. HandleEx sprawia, że idealne narzędzie do śledzenia procesu, który zakłóca.

  • Q286198: INSTRUKCJE: Śledzenie błędów odmowy uprawnień w plikach DLL
    http://support.microsoft.com/support/kb/articles/Q286/1/98.ASP
    Korzystając z pliku Filemon (artykuł zawiera również informacje o regmonie), można zobaczyć, który proces aplikacji COM lub MTS otrzymuje błąd "odmowa dostępu".

  • Q246199: USTERKA: zmienione ustawienia regionalne Ustawienia w rozszerzonej procedurze składowanej mogą powodować nieprawidłowe wyniki
    http://support.microsoft.com/support/kb/articles/Q246/1/99.ASP
    W tym artykule zaleca się używanie listDLLs, aby zobaczyć, jakiej wersji biblioteki języka C-runtime używa program SQL Server.

  • Q196453: Rozwiązywanie problemów z ntVDM i błędami http://support.microsoft.com/support/kb/articles/Q196/4/53.ASP uruchamiania WOW Użytkownicy, którzy napotykają problemy podczas uruchamiania 16-bitowych aplikacji, wskazują filemon, aby zobaczyć, jakie pliki podsystemu środowiska 16-bitowego (NTVDM) mają błędy dostępu.

INFORMACJE WEWNĘTRZNE

SKRÓTY KLAWIATUROWE COOL

Wielu z was prawdopodobnie wyświetla klawisz Windows na nowszej klawiaturze jako klawisz po prostu zajmuje miejsce. Byłem w ten sposób do niedawna, kiedy natknąłem się na skrót klawiaturowy systemu Windows do operacji, którą często wykonujem, a teraz nosim logo z klawisza z moim częstym użyciem. Myślałem, że udostępniam kilka skrótów klawiaturowych, które uważam za przydatne, z których wszystkie działają we wszystkich wersjach systemu Windows.

Akcja Skrót
Uruchamianie menedżera zadań ctrl+shift+escape
Okno dialogowe Wyświetlanie właściwości systemu Windows +Break
Minimalizuj wszystkie okna Windows +m
Maksymalizuj wszystkie okna Windows+M
Otwórz mój komputer Windows +e
Wyszukiwanie pliku Windows +f
Otwieranie okna dialogowego uruchamiania Windows +r

Po ustaleniu ich poprzez próbę i błąd, David Solomon zwrócił uwagę, że są one udokumentowane w systemie Windows 2000 pomocy w obszarze "Skróty klawiaturowe naturalne".

KOMUNIKATY DEBUGOWANIA PNP

Jeśli tworzysz sterowniki plug-and-play dla systemu Windows 2000, możesz być zaskoczony, aby dowiedzieć się, że możesz nawiążć nawet kompilację detaliczną systemu Windows 2000 w celu utworzenia rozbudowanych komunikatów debugowania systemu plug-and-play podczas procesu wyliczania i ładowania sterowników. Na początku rozruchu systemu należy przerwać debugera jądra i ustawić wewnętrzną zmienną PnpEnumDebugLevel jądra na 2 (większość komunikatów jest wyzwalana na poziomie 1). Poniżej przedstawiono przykładowe dane wyjściowe, które pokazują menedżer pnP ładujący sterownik swenum (sterownik magistrali wyliczania oprogramowania):

.
IopCallDriverAddDevice: Processing devnode 0xfe503208
IopCallDriverAddDevice: DevNode flags going in = 0x000019
IopCallDriverAddDevice: Will load driver
IopCallDriverAddDevice: Opening registry key Root\SYSTEM\0000
IopCallDriverAddDevice:         Class GUID is {4D36E97D-E325-11CE-BFC1-08002BE10318}
IopCallDriverAddDevice: Unable to open GUID\Properties key {4D36E97D-E325-11CE-BFC1-08002BE10318} - 0xc0000034
IopCallDriverAddDevice:         Value Service [Type 1, Len 14] @ 0xe14ee82c
IopCallDriverAddDevice:                 Service Name swenum
IopCallDriverAddDevice:                 DriverName is \Driver\swenum
IopCallDriverAddDevice:                 Driver Reference 0xff3a8af0
IopCallDriverAddDevice: Adding Services (type 0)
IopCallDriverAddDevice: Adding Services (type 1)
IopCallDriverAddDevice: Adding Services (type 2)
IopCallDriverAddDevice: Adding driver 0xff3a8af0
IopCallDriverAddDevice:         Routine returned 00000000
.

ORZECZENIE INŻYNIERII ODWROTNEJ

Ci, którzy podążali za Sysinternals wiedzą, że nie mam dostępu do żadnego kodu źródłowego systemu Windows (poza źródłami sterowników, które są dostarczane w DDK), i że uczym się zawiłości jego implementacji poprzez pracochłonne użycie SoftICE i mojego własnego niestandardowego dezasemblera.

Natknę się na artykuł "Reverse Engineering: Necessary Function or Illegal Activity?" (http://www.planetit.com/techcenters/docs/security/news/PIT20010123S0001)to opisuje styczniowe orzeczenie 9.US Circuit Court of Appeals w sprawie między Sony i Połączenie ix, które będą interesować tych, którzy robią to podobnie. Sony wniósł sprawę przeciwko Połączenie ix po tym, jak Połączenie ix opracowała swoją "Wirtualną stację gier", program, który pozwala na uruchamianie gier Sony PlayStation na komputerze, a sąd orzekł, że Połączenie ix był w prawie, gdy odwrócił PlayStation (poprzez dezasemblację), aby umożliwić im opracowywanie emulatora.

Chociaż zakres legalności inżynierii odwrotnej, zwłaszcza biorąc pod uwagę licencje zmniejszania zawijania, które go zabraniają, jest nadal niejasny, ten przypadek sprowadza się po stronie inżynierii odwrotnej.

AKTUALIZACJE JĄDRA SYSTEMU WINDOWS XP

W przeciwieństwie do przejścia między NT 4 i Windows 2000, jądro Windows XP przeszedł bardziej subtelne zmiany, z których wiele ma na celu poprawę wydajności. Interfejsy API jądra dostępne dla deweloperów sterowników zawierają ponad 200 nowych wyeksportowanych funkcji jądra, wypełniając niektóre poprzednie otwory. Na przykład plikmon i inne narzędzie Sysinternals uzyskują nazwę procesu wykonującego operację, docierając do nieudokumentowanego bloku środowiska procesu — w systemie Windows XP będą mogli wywołać metodę PsGetProcessImageFileName. Istnieje prawie 3 tuziny nowych wywołań ps do uzyskiwania i ustawiania atrybutów procesu, nowe interfejsy API danych wyjściowych debugowania, które pozwalają sklasyfikować typ danych wyjściowych i poziom debugowania oraz nowe wywołanie systemowe do zapisywania hives rejestru. Istnieje również kilka interfejsów API, takich jak ZwQueryBootOptions, ZwSetBootEntryOrderi ZwDeleteBootEntry do edycji 64-bitowego odpowiednika systemu Windows XP Boot.ini, który zamiast być przechowywany w pliku, jest przechowywany w pamięci niezawolanej.

Istnieją jednak bardziej znaczące zmiany w jądrze, z których większość polega na sterownikach urządzeń lub obsłudze jądra. Na przykład istnieje usługa przywracania systemu, która z pomocą sterownika filtru systemu plików (sr.sys) śledzi zmiany w plikach, aby system mógł zostać wycofany z poprzedniego punktu w czasie. Istnieje sterownik filtru magazynu o nazwie volsnap.sys, który może wraz ze współpracą sterowników systemu plików utworzyć kopię woluminu w czasie. Istnieje szybka usługa przełączania użytkowników, która korzysta z usług terminalowych wbudowanych w jądro, aby umożliwić wielu użytkownikom logowanie i przełączanie się między nimi oraz ulepszoną obsługę interfejsu API defragmentacji zapewnianą przez sterowniki systemu plików.

Firma Microsoft opublikowała oficjalny dokument opisujący wiele ulepszeń w witrynie http://www.microsoft.com/hwdev/Whistler/download/Whistler_kernel.zip. Istnieją różne stopnie szczegółowości, pozostawiając wiele pytań dotyczących implementacji i zachowania bez odpowiedzi, ale jest to dość dobry ogólny przegląd. Oczywiście możesz spojrzeć na przyszłe biuletyny i artykuły Sysinternals, a także artykuły z mojego magazynu Windows 2000, aby odpowiedzieć na niektóre z nich.

ROZŁĄCZONA SIEĆ

Większość moich centrów programistycznych w aplikacjach z obsługą sieci, ale w systemie Windows 2000 nie można przetestować takich aplikacji podczas rozruchu odłączonego komputera (na przykład laptopa) w konfiguracji domyślnej. Dzieje się tak, ponieważ stos TCP/IP nie jest aktywowany, chyba że system wykryje połączenie sieciowe. Oznacza to na przykład, że dir \\laptop\c$ (gdzie "laptop" jest nazwą komputera) i ping 127.0.0.1 zarówno awarii w odłączonych systemach. Jeśli masz komputer oparty na domenie, może to również prowadzić do bolesnych opóźnień podczas rozruchu.

Istnieją dwa obejścia tego problemu. Jednym z nich jest zainstalowanie karty sprzężenia zwrotnego firmy Microsoft, która jest wirtualną kartą sieciową instalowaną przy użyciu Kreatora sprzętu. Drugim jest wyłączenie wykrywania multimediów, co uniemożliwia systemowi wykrycie, że zostało odłączone, przez ustawienie wartości rejestru zgodnie z opisem w artykule bazy wiedzy firmy Microsoft Q239924: http://support.microsoft.com/support/kb/articles/Q239/9/24.ASP. W przypadku jednej z tych metod stos TCP/IP jest aktywny nawet w systemach odłączonych, umożliwiając dostęp do systemu lokalnego za pośrednictwem interfejsów API sieci i ścieżek UNC (takich jak \\laptop\c$).

WIETRZNA

Windev, konferencja dewelopera systemu Windows, odbywa się w tym roku w Bostonie 11-15 czerwca. Wszystkie najważniejsze nazwy w win32, systemach i programowaniu .NET będą tam, i to jest jedyny czas w tym roku, że można wziąć udział w sesji w systemie Windows 2000 wewnętrznych przedstawionych zarówno przez David Solomon (www.solsem.com) i mnie. Dave i ja wspólnie dostarczamy codzienny samouczek "Inside Windows 2000 Fundamentals" pierwszego dnia. Uczę również sesję na temat programowania mechanizmów komunikacji międzyprocesowej w systemie Windows i jeden na temat nowości w systemie Windows XP.

Możesz zobaczyć abstrakcje do moich rozmów i znaleźć link do witryny internetowej Windev pod adresem http://www.sysinternals.com/ntw2k/info/talk.shtml.

TECHED US

TechEd to premierowa konferencja firmy Microsoft, rysunek 10 000 osób i sprzedaż w ciągu ostatnich kilku lat. W tym roku odbyła się w Atlancie, Gruzji od 17-21 czerwca, a podczas gdy koncentruje się na platformie .NET, Firma Microsoft zaprosiła mnie do przedstawienia "A Tour of Sysinternals Tools" i "Introduction to Windows NT/2000 Crash Dump Analysis". David Solomon będzie również tam, prezentując w systemie Windows 2000 zarządzanie pamięcią i procesy i wewnętrznych wątków.

Dla tych z was w Europie można zobaczyć David i ja przedstawić te same sesje w TechEd Europe, który jest w Barcelonie 3-6 lipca.

Wyświetl moje abstrakcje i postępuj zgodnie z linkiem do strony głównej TechEd z http://www.sysinternals.com/ntw2k/info/talk.shtml.

CO SIĘ DZIEJE

WEWNĄTRZ POBIERANIA WSTĘPNEGO SYSTEMU WINDOWS XP

Jednym z najbardziej zauważalnych ulepszeń w systemie Windows XP jest jego szybki czas rozruchu. Wstępne pobieranie jest podstawą poprawy. XP monitoruje dostęp do dysku podczas rozruchu, przechowując informacje do użycia w kolejnym rozruchu, w którym dane są używane do ładowania aplikacji do pamięci przed ich odwołaniem. Następnym razem pójdę do mechanizmów pobierania wstępnego, aby wyjaśnić, jak XP je implementuje.


Dziękujemy za przeczytanie biuletynu Sysinternals.

Opublikowano środę, 18 kwietnia 2001 19:04 przez ottoh

[Archiwum biuletynów ^][< Wolumin 2, Numer 5][Wolumin 3, Liczba 2 >]