Hyper-v Tip: Use windows key without fullscreen

When connect to a remote VM with hyper-v manager, I have to full screen to make Windows key. Personally I think Hyper-V should have a Windows key button in toolbar like "Ctrl+Alt+Delete" button.

Actually Hyper-v manager allows you to select where the Windows keys goes when you press it. Open up the Hyper-V Settings dialog from with the Hyper-V Manager and go to the keyboard setting, you will see 3 settings.

image

  1. Use on the physical computer
  2. Use on the virtual machine
  3. Use on the virtual machine only when running full-screen

The default one is #3. Once you change it to #2, you will be able to use Windows key inside VM without *full-screen* it.

You will find this helpful if you are connecting to a VM has Windows 8 Metro UI enabled. Without a windows key it’s hard to exit Metro style app and go back to start screen.

Windows 8 Developer Preview Key

To install Windows 8 Developer Preview you do not need a product key for activation. However, you would be asked to enter a product key while re-installing Windows 8 Developer Preview Key.

If you need to reinstall Windows Developer Preview or use the Reset functionality, you might be asked to enter this product key:

6RH4V-HNTWC-JQKG8-RFR3R-36498

If you’re running a server version of Windows Developer Preview, you can use this product key:

4Y8N3-H7MMW-C76VJ-YD3XV-MBDKV

The key is provided by Microsoft employee BillFill in msdn forum. You can find the BillFill’s post here

Update 3/1: For Windows 8 Consumer Preview, you can use this product key:

DNJXJ-7XBW8-2378T-X22TX-BKG7J

Improve VM deploy performance in SCVMM

SCVMM use BITS over https to deploy virtual machine to host server. To improve the performance of virtual machine deploy, you can disable encrypted file transfers for Host Group.

  1. Open Virtual Machine Manager Administrator Console (aka SCVMM Console) on the Application Tier and connect to VMM Server
  2. Click Host on the left side pane.
  3. Right Click on All Host node, and select Properties.
  4. Select the check-box “Allow unencrypted file transfers”

Note: if you use library server, you should set Allow unencrypted file transfers for every library servers.

image

The same can be done in following SCVMM PowerShell command

Set-VMHostGroup -VMHostGroup “All Hosts” -AllowUnencryptedTransfers $true

iPhone Tips–Change Calendar TimeZone

When you move or trip to other timezone, iPhone won’t refresh the timezone information in to correct one, this results calendar syncs to Exchange server still on the old timezone and all meetings show wrong start time than they are. To fix this, go to Settings => Mail, Contacts, Calendars =>Calendars => Time Zone Support,  either turn it off or set to proper TimeZone

Configure WordPress to Use Proxy

If you setup a WordPress site on a server in intranet behind a proxy, you might get following error when you search plugins and themes in admin console.

An Unexpected HTTP Error occured during the API request.

This is because WordPress does not know the proxy server to talk to external internet. To resolve this, simply enable proxy by adding following lines to wp-config.php file

define(‘WP_PROXY_HOST’, ’192.168.110.1′);
define(‘WP_PROXY_PORT’, ’80′);

Replace 192.168.110.1 and 80 with your actual proxy server and port.

If the intranet proxy requires user authentication, appending following lines.

define(‘WP_PROXY_USERNAME’, ‘UserName_ReplaceMe’);
define(‘WP_PROXY_PASSWORD’, ‘UserPassword_ReplaceMe’);

WordPress Remove Admin Bar

 

Admin bar is one of new features in WordPress 3.1. It’s automatically enabled for all logged-on user.

WordPress 3.1 Admin Bar

To disable the admin bar in WordPress 3.1, append the following code into functions.php file, you can find function.php under the theme folder.

remove_action( ‘init’, ‘wp_admin_bar_init’ );

Configure PowerShell to use DotNet 4.0

You might get following error when you load a snap-in that is written by DotNet 4.0.

This assembly is built by a runtime newer than the currently loaded runtime and cannot be loaded.

This is because by default, PowerShell uses DotNet version 2.0 CLR. To use powershell load DotNet 4.0 assemblies, the following settings need to be added in PowerShell.exe.config under C:\Windows\SysWOW64\WindowsPowerShell\v1.0.

<configuration>
    <startup useLegacyV2RuntimeActivationPolicy="true">
        <supportedRuntime version="v4.0.30319"/>
        <supportedRuntime version="v2.0.50727"/>
    </startup>
</configuration>

Note:

  1. Above applies to 64bit windows server 2008 r2. On a 32 bit machine, PowerShell.exe.config can be found at C:\windows\System32\WindowsPowerShell\v1.0
  2. Create PowerShell.exe.config if this file is not found.