Development z Zapomnianej Strony

..:: Paweł Hofman .NET Portal ::..

 

Próżno szukać opcji w ustawieniach, aby pokazać wszystkie ukryte pliki i foldery. Niestety takowa nie istnieje. Aby ukazać to, czego zazwyczaj “standardowy” użytkownik nie chce oglądać należy w oknie terminala wpisać:

defaults write com.apple.finder AppleShowAllFiles TRUE
killall Finder

I po sprawie. Oczywiście, dla cofnięcia zmian TRUE wystarczy zamienić na FALSE.



Podczas pracy nad projektem i uruchomieniu statycznej analizy kodu w Visual Studio 2008 (Code Analysis 2008/FxCop) napotkałem bardzo intrygujący błąd:

CA0058 : The referenced assembly 'EnvDTE, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' could not be found. This assembly is required for analysis and was referenced by: 'MojProjekt.dll', 'VSLangProj.dll'.

Należy w tym miejscu oczywiście zaznaczyć, że faktycznie projekt jest zależny od wymienionej VSLangProj.dll oraz EnvDTE.dll. Tyle, że ta ostatnia jest dołączana w wersji 8.0. Cały kłopot w tym, że wymagana wersja 7.0.3300, nie istnieje nigdzie w systemie. Wpływu na VSLangProj nie mamy żadnego, bo pochodzi on z publicznego SDK do Visual Studio, a naszym zadaniem nie jest przecież ‘naprawa’ tej sytuacji, a analiza własnego kodu źródłowego!, zatrzymana grubiańsko przez niezgodność skompilowanych bibliotek kogoś innego. Dodatkowo projekt działa i jakoś potrafi się odnaleźć w run-time’ie. Magia.

Zmiana właściwości referencji tak, aby wyłączyć wymaganie ‘Specific Version’, nie przyniosła żadnego rezultatu. W sumie można powiedzieć, że logiczne, bo przecież EnvDTE 7.0.3300 wymagany jest pośrednio przez VSLangProj.

Rozwiązanie:

  1. Przejść do lokalizacji: %ProgramFiles(x86)%\Microsoft Visual Studio 9.0\Team Tools\Static Analysis\FxCop
  2. Otworzyć w edytorze tekstowym: FxCopCmd.exe.config
  3. Zmienić wartość ustawienia AssemblyReferenceResolveMode na StrongNameIgnoringVersion

Od tej pory komunikat o błędzie zniknie bezpowrotnie.

FxCopCmd.configNa załączonym obrazku przestawiam, jakie są jeszcze inne dostępne opcje, jeśli ktoś kiedyś będzie potrzebował.



Nigdy nie trzymam swoich dokumentów (czytaj folderu, który traktuję jako ‘Moje dokumenty’) w domyślnej lokalizacji proponowanej przez system. Dlaczego? Ano dlatego, że chciałbym aby:

  • nie zniknęły mi te dokumenty przy przeinstalowywaniu Windows’a (niezależnie od przyczyny; a im mniej trzeba pamiętać w takiej chwili, tym lepiej)
  • kilka kont z tego samego/różnych systemów zainstalowanych na komputerze korzystało z tej samej lokalizacji, bo do tego właśnie służy ten folder
  • partycja systemowa nie jest odpowiednim miejscem na wrzucanie tam dużej ilości drobnych plików, które dość często aktualizowane, prowadzą jedynie do niepotrzebnego zwiększenia fragmentacji
  • dużo gier w końcu nauczyło się wrzucać zapisy stanów (save’y) do ‘Moich dokumentów’ i to też jest miłe jak po przeinstalowaniu potrafią się odnaleźć.

Tak czy owak, w Windows XP wystarczyło kliknąć prawym przyciskiem na przycisku ‘Moje dokumenty’ z menu ‘Start’ i we właściwościach wpisać nową lokalizację.

LibraryProperties W Windows 7 mamy niespodziankę. Ponieważ po wykonaniu powyższych kroków zamiast właściwości omawianego folderu, dostajemy właściwości biblioteki. Tutaj możemy sobie dodawać, usuwać lub układać foldery, na bazie których system później będzie twierdził, że są to wszystkie nasze dokumenty. Nam jednak ciągle nie o to chodzi. Bo pomimo wszystkich naszych manipulacji, domyślna lokalizacja tego, gdzie programy widzą ‘Moje dokumenty’ pozostaje niezmieniona.

 

 NewLocationOfDocuments

 

 

To co tak na prawdę należy zrobić, to odnaleźć lokalizację:

C:\Users\<nazwa_konta>\My Documents

i wejść w jej właściwości. ‘<nazwa_konta>’ to aktualnie zalogowany użytkownik, dla którego dokonujemy zmiany.

Tutaj na zakładce ‘Lokalizacja’ wskazujemy nowy folder i sprawa załatwiona. Wszystko zaczyna działać tak, jak chcemy.



Autor

Paweł Hofman [CodeTitans]

ASP.NET
C/C++, C#, Objective-C
SQL

License and Disclaimer

Moje Gry i Aplikacje

Zobacz mnie na GoldenLine

Zobacz mnie na LinkedIn
Supported by Polish SQL Server User Group (PLSSUG)

Supported by WrocNet.org

Zine.net.pl

Wpisy

Projekty

Moje projekty open-source:

Sign in