Thursday, February 25, 2010

Gpsphone Cheats Leaf Green

invisible file in Windows Explorer 7 64 bit

This post is a new episode in my attempt to take control of my new Windows 7 64-bit machine.

Windows 7 64 bit (but this is probably already the case in Vista 64-bit) has a concept of VirtualStore which may pose some problems surprising. I found two:

  • the file I created with a 32-bit program (in this case Eclipse) in a directory (in this case a sub directory ProgramFiles) does not appear when I pass by explorer.
  • since a 32-bit (or NS-DK NatStar in this case) the values I read in a file (in this case in a subfolder of ProgramFiles (x86)) are not the ones I read when I open the same file explorer.
  • since a 32-bit (same as above) I can read a file (in this case in a subfolder of ProgramFiles (x86)) which is not visible in Explorer when I post hidden files (this is actually a duplicate of the first case)

The explanation for this phenomenon is the creation of a system by VirtualStore. The visual sign that you have a VirtualStore that corresponds to your directory has been created is the presence of a button "Compatibility Files" in the bar Explorer tool.

Windows7FichierCompatibilite

Notice in the example above, the presence of two files:

  • DemoNatJetCompleted.war on 18/02/2010 at 11:20 AM on 30/05/2008
  • NatJxt3DemoMultiPannel.war

We are in the directory "C: \\ Program Files \\ Apache Software Foundation \\ Tomcat 6.0 \\ webapps". Both these files have been copied by hand by the explorer. The process 64-bit Tomcat correctly detects both files.

If you press the button "Compatibility Files", it switches to the directory "C: \\ Users \\ jltho.NATSYSTEM \\ AppData \\ Local \\ VirtualStore \\ Program Files \\ Apache Software Foundation \\ Tomcat 6.0 \\ webapps" of VirtualStore.

Windows7VirtualStore

We now have two files:

  • DemoNatJetCompleted.war 17/02/2010 at 18:41: the date indicates it is older than the one we saw earlier.
  • NatVie30WF

These two files have been created directly from a 32-bit Eclipse by the export function / War ... The Tomcat process does not see these two files. Eclipse he sees them.

In the case of my application NatStar / NS-DK (there is a 32-bit binary-based C), the problem was even more surprising: the VirtualStore file was created by another mechanism (my application consults the file read-only). My application reads this file VirtualStore yet. When I edit the file in the home directory via the browser, the changes I make are not visible by the application: it continues to read the old values. If I delete the file in the original directory (ProgramFiles (x86)), the application continues to be able to read data from the Explorer while I see nothing.

FYI, we detected the problem through the use of Process Monitor, which we found that the process did not read the directory ProgramFiles (x86) but in a different directory.

Once in the VirtualStore (with the button), you can surcharge files. In the case of my application NatStar / NS-DK, she began to read the correct file and did not re-created in VirtualStore. I modified this file by the explorer since, without the VirtualStore is recreated.

The rule that you can deduct is:

  • if a process 32-bit writes in some directories (a priori ProgramFiles (x86) and ProgramFiles), the system redirects its writing in a different physical directory: the VirtualStore
  • if a 32-bit application reads a file in a directory with a VirtualStore, she read in Firstly the file if it exists in the VirtualStore. If the file does not exist in VirtualStore and only in this case, it will read the file in the original directory.

We note that for a 32-bit process, the file in the VirtualStore prevails.

For a 64-bit process, it sees only the original directory.

How

know why a file was virtualized?

This is possible by using Event Viewer in Windows 7. It begins by typing in the command area: Obs and selecting it from the list that appears.

Rubric interests us is: "Newspapers applications and services" then "Microsoft" then "Windows" then "UAC-FileVirtualization. Clicking on the operational nodes, a list appears. The events of 4000 show the ID creation file virtualization.

By clicking on tab detail, is possible to know who created the file in question:

Windows7VirtualizationDetail

Thus we see that a temporary war file was created by the VirtualStore javaw.exe process started from a C: \\ NatJet3.0.2 \\ thirdparty \\ jdk1.5.0_15 \\ bin.

It is through this that I realized how NatStar for my application, the files were created Virtualization: it was the installation of my application that launched a 32-bit process (switch.exe ) to make substitutions in the installed files in ProgramFiles (x86).

Conclusion

This virtualization mechanism is very surprising: the will of Microsoft seems to have been to increase the compatibility of many applications that do not respect the rights on directories ProgramFiles. This is to facilitate the migration during the transition to Vista: Vista before the applications had admin privileges, since they turn els with a simple user rights: they are no longer allowed to write anywhere .

You can find more information on the subject in the following two pages:

Tuesday, February 23, 2010

Cle Cd Dawn Of War Soulstorm

Problem to set an environment variable using ProgramFiles (x86)

I do this quick post after a configuration problem in a cmd file in Windows 7 64 bit.

Windows 7 64 bit defines two environment variables and two directories :

  • ProgramFiles (x86) that points to C: \\ Program Files (x86): here are normally installed 32-bit programs.
  • ProgramFiles pointing to C: \\ Program Files named in the Explorer Program: This is the directory that contains the 64-bit programs.

This distinction should already exist in Vista 64 bit. It is visible only if the OS is 64 bits. On a 32-bit version, there are only ProgramFiles.

To determine whether OS is 32 or 64 bits, the environment variable PROCESSOR_ARCHITECTURE can be used: it takes the values:

  • for AMD64 64-bit x86
  • for the 32-bit

This variable exists in Windows XP and it takes well under a x86 32-bit environment.

applications that interest me use a cmd that positions the environment variables to its execution (a common mechanism for applications or NatStar NS-DK), the base directory of my application is under% ProgramFiles% 32-bit. When passing under 64 bits, the remaining a binary 32-bit binary, it installs under% ProgramFiles (x86)% so I tried to reset my variables environment for the case of 64 bits. I go through an environment variable local to cmd and temporary PRGROOT to avoid changing all definitions.

I started with:

if "% PROCESSOR_ARCHITECTURE%" == "AMD64" (SET
PRGROOT =% programfiles (x86)%
)
if "% PROCESSOR_ARCHITECTURE%" == "x86" (SET
PRGROOT =% programfiles%
)

And then bizarrely PRGROOT takes the value C: \\ Program Files (x86 without the closing parenthesis.

After many tests, I tried the syntax (note the use of quotes around the complete assignment)

if "% PROCESSOR_ARCHITECTURE%" == "AMD64" (SET
"PRGROOT =% programfiles (x86)%"
)
if "% PROCESSOR_ARCHITECTURE % "==" x86 "(
SET PRGROOT =% programfiles%
)

And then everything goes well I found my right parenthesis.

I hope this post will be useful to others. There seems a little bug in the case of IF: it replaces% programfiles (x86)% of its value then there is the assignment. It takes the right parenthesis at the end of the IF and not as part of the value it should affect. The quotation is forced to consider closing parenthesis as part of the assignment.

Sunday, February 21, 2010

Kates Playground 2010 Képek

problem with Freebox WiFi

This is a quick ticket to prevent others remain blocked by the problem I met with my FreeBox.

The symptom is more or less straightforward: unable to join the WiFi network of its own FreeBox. The network is actually visible, but when typing the WEP / WAP that was on the interface of its Freebox HD, the connection is refused. It may even be too long to enter a key greater than 63 characters are expected (but then, following interface will be used or not warned).

happen to my WiFi network works, I have another PC connected which attests.

The cause of the problem is the interface of the Freebox HD: I prefer to use it Rather than using the web interface FreeBox. The interface of the Freebox HD is available on the TV after pressing the button on the remote FreeBox then you go to Settings. Heading WiFi, says the key to the network. The current firmware version has a bug for characters> but I guess that's true for \u0026lt;: it does not display properly, replacing them with html: & & gt and I guess lt. The result

races: you enter a wrong key will be too long (exceeding the limit of 63 characters).

The correct solution is definitely go through the web interface of your FreeBox: http://subscribe.free.fr/login/ . This requires first to connect via an Ethernet cable to the Freebox. Enter the address, then click Internet and finally select the link "Set up my WiFi network.

The value of your WAP key is located at the bottom of your page. Simply copy and paste the password required for your WiFi network. once finished you can disconnect the Ethernet cable.

I hope that this post will help other Free users. And to think I almost blame Windows 7!

Tuesday, February 16, 2010

Produktnøkkel Flying Simulator X Deluxe

Windows 7 and a Samba server

As I just got a new laptop Dell XT2 Windows, this is probably the first post of a series on Windows 7, that I will complete the likings of my problems or discoveries.

I open the series with a problem. That it is impossible for me to connect to a Samba drive. I'm trying different user accounts to no avail. The same error comes back.

A small google search leads us directly to articles that show a minimum configuration of Samba 3.4 for connectivity with Windows 7:

While our old Samba server is 3.0.

Not satisfied with this response, I continue to seek what could be changed between XP and Seven. I finally understand that this should be the security policy. Whether XP or Windows 7, you can set this strategy in the screen "Local Security Policy" available from: Control Panel -> Administrative Tools -> Local Security Policy.

In this screen, the next choose "Local Policies" and then "Security Options". A series of options apparait.Celles interest are:

  • Network Security: LAN Manager authentication level: Undefined
  • Network Security: Minimum session security for NTLM SSP based clients (including secure RPC) : Require a level of encryption to 128 bits.
  • Network Security: Minimum session security for NTLM SSP based servers (including secure RPC): Require a level of encryption to 128 bits.

StrategieSecuriteLocal7

A comparison with XP as well as a post reading using Microsoft says that the failure of these values has changed between XP / Vista and Windows on one side 7 of the other.

While "Network security: LAN Manager authentication level" is "Not defined in Seven, it would be" Send LM & NTLM responses ".

Similarly both "Network security: Minimum session security for NTLM SSP based XXXXX (including secure RPC)" worth "no minimum" in XP and Vista, so we have "Require a level of 128-bit "Windows 7.

NTLM SSP (NT LAN Manager Security Support Provider) is the mechanism used by Samba to verify the authentication with Windows clients. Support for different configuration settings depends dual consistency between servers and clients.

  • LM (Challenge / Response LAN Manager) is the oldest protocol ensures compatibility with Windows 95 and 98 positions
  • NTLM provides improved security from NT.
  • NTLM version 2 offers even better security, but excludes items in Windows 95 and requires the installation an Active Directory client extension for 98.

In our case, Samba 3.0 should be able to support NTLM version 2, I think my problem was mainly due to the 128-bit encryption.

Oddly, if I returned to

  • Network Security: LAN Manager authentication level: Send LM & NTLM - use session security if negotiated NTLM2
  • and "Require a level of encryption to 128 bits for both others

my connection runs even after a reboot. it would mean that authentication is negotiated once and for all.