Warning: curl_setopt() [function.curl-setopt]: CURLOPT_FOLLOWLOCATION cannot be activated when in safe_mode or an open_basedir is set in /home2/livetr/public_html/feednews/rss.php on line 100
 MSDN Blogs | Reading Feed
Feed: MSDN Blogs

Increase your search rankings with better web page titles

Date: 11 March 2010 - 08:13

Are you still waiting for a flood of visitors to find your site? Wondering if you need to invest in some online ads or an SEO specialist? Before you do any heavy lifting, first try the simple task of reviewing the titles of your web pages for their search relevance.

A web page title does not appear anywhere in your page, except in the browser title bar, as in the text “Web Overview < Product Information | Microsoft Expression” that appears in the following screenshot:

 Browser title bar in Internet Explorer 8The title of a page appears only in the browser’s title bar.

Despite the low profile of the page title, major search engines do use the content in your <title> tags to help determine the relevance of your page to a user’s search. So if your web pages have generic titles such as “Home”, “Photos”, “Calendar” which do not contain terms that are unique to your site and terms that your target users are searching for, you are losing out on one of the simplest ways to increase the search ranking of pages in your site.

For example, let’s consider this site I created by using the Organization 2 site template in Expression Web for the fictitious Blue Bells Girls Soccer Club.

Blue Bells Girls Soccer Club homepage in Expression Web 3Generic titles, such as “Home” do not help users find your site

Naturally, I want this site to be easily found by girls, parents, and educators in the Pacific Northwest who are interested in soccer and team sports for girls. The placeholder page titles that the site template generated include Home, Photo Gallery, News, Information Links, Frequently Asked Questions, Contact, and Calendar of Events. These titles do not provide any details about the unique content of my site and won’t help my target audience find my site.

Instead of the title Home, a better title for the homepage is “Blue Bells Girls Soccer Club – Seattle, King County, and the Pacific Northwest”. This new title increases the chance that users searching for “Seattle girls soccer”, “King county soccer”, etc. will find my site. One more example: Instead of the title Calendar of Events, a better page title is “Blue Bells Girls Soccer Club - Game calendar and event schedule”. But be careful of producing “web spam”. If search engines notice an excessive number of keywords in your title, they may lower your page ranking if they determine you are overstuffing your page title with keywords. From the Bing Webmaster Center Blog:

Stuffing in less visible areas of the page. Placing repeated keywords in less visible areas of a page, such as at the bottom of the page, in links, in Alt text, and in the title tag, can be indicative of web spam.

If you use Expression Web, the program provides a number of ways to help you efficiently review and edit your page titles, including the file Properties dialog, the Page Properties dialog, the Find panel, and my favorite: the sometimes elusive Title column in the Folders view of a site. I’ll cover each method next.

Edit web page titles in the file Properties dialog box

In the Folder List panel, right click a web page and click Properties.

file-propertiesRight-clicking a file in the Folder List panel to access the file Properties command

The file Properties dialog box opens and enables you to edit the Title for the page.

a page's file Properties dialog box
The file Properties dialog enables you to edit the Title of a page 

Edit web page titles in the Page Properties dialog box

To edit the title of a page you already have open in Expression Web, you obviously can edit the <title> tags by using the Code view of your page. Perhaps less obvious, you can also edit the page title, as well as other important page properties, in the Page Properties dialog by choosing File > Properties while a page is open.

Page Properties dialog box
Use the Page Properties dialog box to edit the title, page description, and keywords for a page

Review pages titles by using the Find panel

The Find command and Find panel enable you to find and review all <title> tags in your site.

  1. Choose Edit > Find.
  2. In the Find and Replace dialog box, on the Find tab, in the Find what box, type <title>. Under Find where, select All pages. Under Advanced, select Find in source code, and then click Find All.
  3. Double-click any search result to open the associated page. Alternatively, you can right click a search result in the Find panel and click Go to Page to select the page in the Folder List panel.

Find 1 panel in Expression Web listing all found <title> tags
Use the Find panel to find all instances of the <title> tag in your site

Edit the titles of all pages in your site in the Folders site view

My favorite method, and by far the easiest method to efficiently review the titles of all pages in your site, is to use the Title column in the Folders view of your site. Click the Site View tab and if it’s not already selected, click Folders at the bottom of the Site View.

The Title column in the Folders view of the Site View in Expression Web 3
Review and edit your page in the Title column in the Folders view of the Site View

Note: If you don’t see a Title column next to the Name column, as shown in the previous screenshot, then use the following steps to display the Title column.

  1. With your site open in Expression Web, choose Site > Site Settings. In the Site Settings dialog, make sure there is a check next to the option Maintain the site using hidden metadata files, and click OK.
  2. Quit Expression Web.
  3. In Windows Explorer, locate the root folder of your website.
  4. Right-click any HTML file in the site, and click Edit with Microsoft Expression Web. Expression Web opens and displays the page you right-clicked.
  5. Click on the Site View tab and the Folders button at the bottom of the site view.

You can edit the title in the Folders view: just click, wait a second, and then click the title again to get into editing mode, and type your new title.

Editing a page title in the Folders view of a site in Expression Web
Edit a title directly in the Title column of the Folders view of your site

That’s fine and dandy, but it’s not especially efficient to navigate in and out of all your site folders in order to review each of the pages in your site. Instead, select View > Site > Files > All Files to list all of your site files in a single list.

View > Site > Files > All Files menu in Expression Web 3
Choose View > Site > Files > All Files to view all files in your site in a single list

To group your HTML pages together so they are not mingled in the list with other files in your site, click the Type column’s heading to sort the list by file type. Now you can efficiently review all of your page titles and quickly edit them in this view if desired.

Folders view of all site files sorted by file type in Expression Web
Click the Type column to sort your site files by file type and group your pages in the list

 

More SEO guidance:

Fiddler at MIX 2010

Date: 11 March 2010 - 08:06
Just a quick little advertisement:
 
On the heels of the successful Fiddler session at PDC last fall, I'll be hosting a "mini-session" on Fiddler at the MIX 2010 conference next Wednesday morning.

I hope to meet some of you there!

Safepay Integration

Date: 11 March 2010 - 08:00

Dave DusekRecently, I have been getting a lot of customization requests for Safepay, specifically, adding information into the detail line in the safepay file.  Safepay customizations like that are pretty much all the same thing, no matter what field you want to add, so I figured I would share my integration point and how to handle these types of customizations.  I have done probably 4 or 5 of these in the last couple of months. 

Obviously, the first thing that you want to do is run a script log and script profiler and do some testing, I already did that part, so I won't go through that again here.  If you generate a Safepay file, and you want extra data to show up in the detail line, then basically, you want to trigger on the script ME_Configurator_Get_Field_Output.  This script determines what the field output will be and passes that field data back.  The parameters for the script are:

ME_Configurator_Get_Field_Output Global Procedure

A few things about this global procedure.  First, it is in the Safepay dictionary, so you will need to use Trigger_RegisterProcedureByName() to register a trigger on it.  The trigger would be after original.  Second, you will need to change the out OUT_field_output parameter to inout so you can set it.  Third, you will need to add anonymous to all the table parameters since they don't exist in your dictionary.  When you access these tables, you will need to use the column() function to get the data. 

All the table buffers are positioned. 

The ME_Configurator_Tables_DTL table is the table that holds the detail information of the safepay line being generated. 

The ME_Configurator_Tables_HDR is the header table. 

The ME_Upload_Transactions is the table that holds the transaction information that the safepay line is being generated for. 

Let's assume that the client wants to add an extra field from the cash payment (check) in the Safepay file.  Here is the overall design strategy for this type of customization. 

  1. In the Safepay configurator, create the safepay file as normal.  When you create the detail line, add a field and give it a field name of something that you can recognize later when your trigger runs.  Set the field as a constant and set the number of characters, padding, etc.  This is your extra field.  So right now it is just a constant, but you are going to intercept this later and give it the real data.  Save the configuration file.
     
  2. The idea is that you have a cross dictionary trigger on ME_Configurator_Get_Field_Output, this script runs for every field on every line.  In the trigger processing procedure, you watch for the field name that you set up in step one, or you can watch for the constant.  Both the field name and the constant are in the ME_Configurator_Tables_DTL table, so you use the column() function and watch for your field name.  When you get the field name, then you run your code to retrieve your extra data. 
     
  3. Also, watch the ME_Configurator_Tables_HDR table buffer for when the bank id that you configured comes through.  You would only want this code to run for that bank ID. 
     
  4. The ME_Upload_Transactions table buffer has the transaction information in it.  So from this data, you can go to the CM_Transaction table.  The one thing to watch out for here is that the CM_Transaction table, key 1 does allow duplicates.  So in this case, for each record in the ME_Upload_Transactions table, there could be multiple in the CM_Transaction table, so you have to make sure that the client isn't allowing duplicate checks in payables management. 
     
  5. From the CM_Transaction table, you can get to the PM_Transaction_Open and the PM_Paid_Transaction_History tables.  From there, you could get the apply information if you needed that for anything. 
     
  6. Once you have your data, you set the OUT_field_output parameter and then justify it and fill it.  The justification and fill information is also in the ME_Configurator_Tables_DTL table. 
     
  7. Safepay takes care of the rest and puts your data in the text file that is generated. 

That's really all there is to it.  Most of the customizations are all very similar.  Set up a constant in the configurator and then watch for it to come through in your trigger and change that constant to your data that you want on the safepay file and set the out parameter. 

Dave

Tune Replication Performance using PacketSize

Date: 11 March 2010 - 07:58

Tune Replication Performance using PacketSize

Contributed by: Karol Korasadowicz

Depending on type of data being replicated and network throughput adjusting the PacketSize parameter for the Distribution Agent may increase your overall Transactional Replication performance.

-PacketSize packet_size
Is the packet size, in bytes. The default is 4096 (bytes).
http://msdn.microsoft.com/en-us/library/ms147328.aspx

To see which setting has most impact, create test scenario which inserts/updates records then distributes those to the subscriber using PacketSize 4KB (default), 8KB, 12KB, 16KB, and 32KB.  Use Distribution Agent OUTPUT Parameter to track detailed performance statistics with each setting. Compare overall timestamps for each step along with overall Agent performance. Note: A higher packet size does requires more memory for the Distribution Agent.

For SQL 2008 see also Navigating Subscription Streams

Updated IIS 7 Configuration Reference

Date: 11 March 2010 - 07:58

One of the many projects that I've been working on for the past several months is an updated version of the IIS 7 configuration reference that describes every configuration setting for IIS in detail, which is located at the following URL:

http://www.iis.net/configreference

This latest version incorporates all of the updates to IIS for IIS 7.5, including previously out-of-band modules like FTP and WebDAV that are now built-in for IIS. As with the previous release of the configuration reference, each reference topic focuses on a specific configuration element that contains: an overview section that describes the purpose of each configuration element, setup steps when appropriate, "How To" examples using the IIS Manager, and practical examples using IIS configuration settings and ready-to-use code samples for AppCmd, C#, VB.NET, JavaScript, and VBScript.

I would be remiss if I did not send out my thanks to everyone that helped out - my apologies if I missed anyone:

Are you an ISV? Are you developing packaged applications?

Date: 11 March 2010 - 07:47
Subscribe today to our local Australian ISV Newsletter.  Spark for ISVs is distributed monthly and provides information for Channel Partners who develop packaged applications, and develop for the Web.  Subscribe today!

NDISKD and !miniport

Date: 11 March 2010 - 07:41

The second installment of a beginner’s guide to debugging with NDISKD

Last time we set up the debugger, looked at !ndiskd.help, and dumped out a table of active miniports.  Today we’ll continue our laboratory by examining a specific miniport.  As before, we use !ndiskd.miniports to get the table of active miniports:

kd> !ndiskd.miniport
    MiniDriver         Miniport            Name                                _
    fffffa800acf4640   fffffa800ad051a0    WAN Miniport (SSTP)
    fffffa800ac8f020   fffffa800ac911a0    Microsoft Virtual Machine バス ネットワーク アダプター

Suppose we want to get more information about the VM NIC named "Microsoft Virtual Machine バス ネットワーク アダプター".  (It’s a Japanese target OS; this example showcases ndiskd’s newfound Unicode support).  To pull up the details page on the Miniport, click the link in the second column.  On my machine, the link is labeled fffffa800ac911a0, although it will be different for your machine.

When you click the link, the debugger displays a screenful of information.  To keep things simple, we’ll dissect the output in sections.  The first section displays basic information about the miniport.

MINIPORT

    Microsoft Virtual Machine バス ネットワーク アダプター

    Ndis Handle        fffffa800ac911a0
    Ndis API Version   v6.0
    Adapter Context    fffffa800ad7e000
    Miniport Driver    fffffa800ac8f020 - netvsc60.sys  v6.0
    Ndis Verifier      [No flags set]

    Media Type         802.3
    Physical Medium    NdisPhysicalMediumUnspecified
    Device Path        \??\VMBUS#{9df4aa68-e174-46f3-b4d1-716969be9559}#5&296c0f0e&0&{9df4aa68-e174-46f3-b4d1-716969be9559}#{ad498944-762f-11d0-8dcb-00c04fc3358c}\{42C420A8-067B-41DC-B746-114BAA3FB84A}
    Device Object      fffffa800ac91050
    MAC Address        00-15-5d-1e-25-09

There’s a lot of information there—let’s consider one row at a time.  The Ndis Handle shows the miniport handle that we just clicked on.  Every NDIS object (miniport instances, miniport drivers, filter instances, etc.) has a handle that uniquely identifies it to NDIS.  If you are manually typing ndiskd commands, you’ll usually have to include a NDIS Handle value to specify which object you’re manipulating.  Of course, clicking the Windbg hyperlinks is easier than copying and pasting handle values; then you don’t need to know the handle value at all.

The NDIS API Version identifies which version of the NDIS contract the miniport is written to.  There is an exhaustive table of versions here.

The Adapter Context is a pointer to the driver-specific information.  For example, if you are using the XFrameII sample miniport, it is a pointer to an xmpNicCtx_t structure.

Miniport Driver is, not surprisingly, a NDIS handle to the MiniDriver.  Click on it to get more information about the driver.

The Ndis Verifier row shows you any Ndis Verifier settings that might be enabled for this miniport.  NDISTest manipulates Verifier settings on your behalf, so don’t be surprised if you see some flags set on your miniport during testing.  But in the output above, we see that there are not any verifier flags set on my miniport instance.

The Media Type and Physical Medium rows show what type of network interface this miniport is.  If you’re a networking nerd, you might recall that 802.3 is the IEEE name for Ethernet.  But if you didn’t remember that, it’s still okay, since you can click on it to pull up a definition from ndiskd’s built-in help database.

The Device Path shows the device instance ID.  The Device Object shows WDM’s underlying DEVICE_OBJECT.

Finally, the MAC address should hopefully need no introduction.

STATE

    Miniport           Running
    Device PnP         Started
    Datapath           Normal
    Interface          Up
    Media              Connected
    Power              D0
    References         8
    User Handles       0
    Total Resets       0
    Pending OID        None
    Flags              2c452000
        ↑ NOT_BUS_MASTER, DEFAULT_PORT_ACTIVATED, SUPPORTS_MEDIA_SENSE,
        DOES_NOT_DO_LOOPBACK, MEDIA_CONNECTED
    PnPFlags           00210000          ← RECEIVED_START, HARDWARE_DEVICE

The next section shows the current state of the miniport.  As you might notice, everything is printed in green text—green is supposed to hint that "packets can be sent".  If you are trying to figure out why network packets aren’t getting through, the first thing you’ll want to do is scan this section for status that isn’t green.  (Colored text is not available in kd.exe by default, so kd users can instead compare the text output to the 'good' text printed in the example above).

There are also a number of flags printed here.  The flags are useful in advanced debugging situations; you don’t usually need to worry about them too much.  If you do see a suspicious-looking flag, you can always click it to see the explanation from ndiskd’s built-in help database.

BINDINGS

    Filter List        Filter              Filter Driver      Context          _
    WFP LightWeight Filter-0000
                       fffffa800b3068d0    fffffa800ab682d0   fffffa800b2e9630
    Buggy Filter Driver 1-0000
                       fffffa800b2e3540    fffffa800ac207b0   fffffa800b2e44b0

    Open List          Open                Protocol           Context          _
    RSPNDR             fffffa800b91b8d0    fffffa800b920010   fffffa800b926010
    NDISUIO            fffffa800b9236b0    fffffa800b90f910   fffffa800b921e00
    LLTDIO             fffffa800b90c8d0    fffffa800b90d760   fffffa800b90c010
    TCPIP6             fffffa800b3018d0    fffffa800a997010   fffffa800aaff290
    TCPIP              fffffa800b3082a0    fffffa800a996540   fffffa800b3089e0

The next section shows you the binding stack.  The first table shows you the filter drivers that are bound to the miniport.  The filters are listed in the order of their binding altitude.  The second table shows the protocols that are bound to the miniport.  (Note that in NDIS terminology, an instance of a protocol is called an Open—see this post.)  You can get more information about a filter or open by clicking the corresponding entry in the table.

MORE INFORMATION

     → Driver handlers                      → Task offloads
     → Power management                     → PM protocol offloads
     → Pending OIDs                         → Timers
     → Pending NBLs                         → Receive Side Throttling
     → Wake-on-LAN (WoL)                    → Packet filter
     → Receive queues                       → Receive filtering
     → NDIS ports                           → NIC switch

Finally, the last section is a list of links to more information.  The first three links (Driver Handlers, Power management, and Pending OIDs) are the most useful.  When debugging issues in miniports, I will often click on Driver Handlers so I can set a breakpoint in the miniport driver and catch the bug in action.  Note that because we give you the same ndiskd that we use internally to debug NDIS itself, not all of the other links will work properly with NDIS's public symbols.

Phew, that was a lot of material to cover.  Next time we’ll put this material to use as we diagnose a real network problem using ndiskd.

Now Available: The Windows Azure platform AppFabric LABS Environment

Date: 11 March 2010 - 07:35

Today the AppFabric team has released the AppFabric LABS environment. This is a new environment which the team will use to showcase some early bits and get feedback from the community. Usage for this environment will not be billed.

 

AppFabric Labs provide a way for customers to test out and play with experimental AppFabric technologies. These are upcoming capabilities that excite us, and we want to get your feedback on them as soon as possible. As a result, there is no support or SLA associated with the LABS environment, but in return you will be able to preview the future of AppFabric while helping us shape it. Though similar to a Community Technology Preview, LABS technologies may occasionally be even farther away from commercial availability.

 

In this release of the LABS environment, we’re shipping two features:

1.     Silverlight support: we’ve added the ability for Silverlight clients to make cross-domain calls to the Service Bus and Access Control Services.

2.     Multicast with Message Buffers: we’ve added the ability for Message Buffers to attach to a multicast group. A message sent to the multicast group is delivered to every Message Buffer that is attached to it.

To get started:

1.     Go to https://portal.appfabriclabs.com/,

2.     Sign up using your Live ID,

3.     Create your LABS project, and

4.     Download LABS samples from here to learn more about these new features.

We hope you enjoy working with these Labs features as much as we have enjoyed making them available to you.

 

Thanks,

 

The Windows Azure platform AppFabric Team

Slides from SQL Saturday #33 "Troubleshooting Transactional Replication"

Date: 11 March 2010 - 07:28
Slides from SQL Saturday #33 Replication Talk "Troubleshooting Transactional Replication" Chris Skorlinski Microsoft SQL Server Escalation Services Here are the slides I used for my SQL Server Replication presentation "Troubleshooting Transactional Replication" during SQLSaturday #33 in Charlotte, NC. Keep an eye our for the nearest SQL Saturday and plan to attend. These mini-SQL PASS conferences provide great local and national speakers over wide range of SQL Server and BI topics. Don’t miss it!...(read more)

Now Available: The Windows Azure platform AppFabric LABS Environment

Date: 11 March 2010 - 07:22

Today the AppFabric team has released the AppFabric LABS environment. This is a new environment which the team will use to showcase some early bits and get feedback from the community. Usage for this environment will not be billed.

 

AppFabric Labs provide a way for customers to test out and play with experimental AppFabric technologies. These are upcoming capabilities that excite us, and we want to get your feedback on them as soon as possible. As a result, there is no support or SLA associated with the LABS environment, but in return you will be able to preview the future of AppFabric while helping us shape it. Though similar to a Community Technology Preview, LABS technologies may occasionally be even farther away from commercial availability.

 

In this release of the LABS environment, we’re shipping two features:

1.     Silverlight support: we’ve added the ability for Silverlight clients to make cross-domain calls to the Service Bus and Access Control Services.

2.     Multicast with Message Buffers: we’ve added the ability for Message Buffers to attach to a multicast group. A message sent to the multicast group is delivered to every Message Buffer that is attached to it.

To get started:

1.     Go to https://portal.appfabriclabs.com/,

2.     Sign up using your Live ID,

3.     Create your LABS project, and

4.     Download LABS samples from here to learn more about these new features.

We hope you enjoy working with these Labs features as much as we have enjoyed making them available to you.

 

Thanks,

 

The Windows Azure platform AppFabric Team

 

Pre-Order Visual Studio 2010 Professional upgrade today, and save hundreds

Date: 11 March 2010 - 07:21

Microsoft Visual Studio 2010 Professional will launch on April 12 but you can beat the rush and secure your copy today by pre-ordering at the affordable estimated retail price of $549, a saving of $250.

If you use a previous version of Visual Studio or any other development tool then you are eligible for this upgrade. Along with all the great new features in Visual Studio 2010 (see www.microsoft.com/visualstudio) Visual Studio 2010 Professional includes a 12-month MSDN Essentials subscription which gives you access to core Microsoft platforms: Windows 7 Ultimate, Windows Server 2008 R2 Enterprise, and Microsoft SQL Server 2008 R2 Datacenter.

So visit http://www.microsoft.com/visualstudio/en-us/pre-order-visual-studio-2010 to check out all the new features and sign up for this great offer.

Cheers,
Omar | Visual Web Developer

Article About Dassault Systemès and SQL Server

Date: 11 March 2010 - 07:02

Express Computer, an IT business weekly publication, just published an article about component manufacturers that have driven product innovation through PLM, including a deployment of Dassault Systemès and SQL Server. Akhtar Pasha wrote "According to [Vivek Marwaha, Marketing Director, Siemens Product Lifecycle Management Software India Pvt. Ltd.], earlier the TCO in PLM was high because it worked well only with the Oracle database. . . . Today customers can use SQL Server for engineering, which has low TCO on PLM systems."

Read the whole article at http://www.expresscomputeronline.com/20100315/coverstory01.shtml.

MFC applications now default to being DPI-aware

Date: 11 March 2010 - 06:40

Hello, I’m Pat Brenner, a developer on the Visual C++ Libraries team, mainly responsible for MFC.  I wanted to make you aware of a subtle but meaningful change that we have made regarding MFC applications in Visual Studio 2010: all MFC applications are now marked as ‘DPI aware’ by default.  This means that your application is expected to handle various DPI (dots-per-inch) settings, not just the default (96 DPI), because Windows will not automatically scale the user interface elements of your application to match the selected DPI of the system.

The DPI of the system is set using the display settings in the Control Panel, as shown below.  The ‘Smaller’ setting shown below corresponds to 96 DPI, while the ‘Medium’ and ‘Larger’ settings correspond to 120 and 144 DPI, respectively.

The terminology here is a bit confusing, because these settings don’t really manipulate the dots-per-inch value.  That value is actually controlled by the resolution used for the monitor—a higher resolution results in more dots per inch on the screen.  What these settings do is compensate for a higher resolution by making the text and other visual elements larger (using more pixels), so they do not appear too small on the screen.

MFC has been updated to handle all of the adjustments necessary to support the DPI-aware scenarios in the user interface elements that it draws.  Turning on DPI-awareness will trigger the use of appropriate scaling mechanisms in MFC so that fonts and images used in the user interface will be displayed with greater clarity.

For example, below is a screen shot of a ribbon-based application, running on a system using the ‘Larger’ settings (144 DPI), without the DPI-awareness flag turned on.  Windows is automatically scaling the UI elements to a larger size.  Note that some elements appear slightly blurry.

And below is another screen shot of the same application, running on the same system, with the DPI-awareness flag turned on.  Note the differences in the clarity of the text and images used.  MFC is scaling the text and in some cases using different images.

What this means to you, as a developer who uses MFC, is that you need to make sure that any custom drawing you do in your application is capable of handling the various DPI settings and adjusts as necessary, so that your application looks consistent across the various DPI settings.

This change is accomplished via a setting in the global build properties file, Microsoft.CPP.Props, which sets the ‘EnableDPIAwareness’ flag to ‘true’ if the project is using MFC, either via the static MFC libraries or the shared MFC DLLs.  When this flag is set to ‘true’, an additional manifest fragment is linked into your application which tells Windows that the application is DPI-aware.  Note that this setting applies even to MFC applications that were created in a previous version of Visual Studio—any application that uses MFC will be marked as DPI-aware.

Of course, this is only the default, and it can be overridden if you wish.  This means that Windows will automatically scale the UI elements of your application for you.  This can be done by setting the ‘Enable DPI Awareness’ property to ‘No’ in the ‘Input and Output’ section of the ‘Manifest Tool’ properties for your application, as shown below:

There is a more detailed topic about writing DPI-aware applications on MSDN here.  Note that the information above updates some of the sections of that topic.

I hope you find this information helpful.  Feel free to ask any questions you have and I’ll do my best to answer them.

Pat Brenner

Visual C++ Libraries Development

 

Podcast: Planning and Storyboarding

Date: 11 March 2010 - 06:17
Is it worth spending the time it takes to sketch out graphical ideas in advance, or is it better to get started quickly and spend the time on the version you plan to hand off? Does it make sense to spend resources storyboarding a video, or is it wiser to spend that time shooting, as soon as the story is done? In this episode my manager says it’s often not worth the time it takes to do a lot pre-production planning; but then, he’s never seen anything I’ve put together without it. Listen to the episode...(read more)

Fragmentation and What You Can Do about It

Date: 11 March 2010 - 05:54

Feeling fragmented? Relax . . . this blog post will bring the pieces together. This post can help you get better performance from Teamcenter running on SQL Server.

When you mention "fragmentation" to database administrators, they automatically think of index fragmentation. But database fragmentation comes in two main forms: external and internal.

External Fragmentation

External fragmentation, also called physical fragmentation, is fragmentation at the file level. When you create a database file and the disk is already fragmented, Windows may place pieces of that file in as many holes in the current storage as possible. This level of fragmentation at the file level causes the disk head to jump around while it retrieves data during execution of SELECT statements, which introduces latency and performance degradation.

Be careful with autogrowth (and shrinking).

You can also cause external fragmentation when you grow a database file. While many of us use the autogrow abilities of SQL Server, a database that constantly grows due to space pressures can cause external fragmentation. Autogrowth on drives that have no other files on them should not cause fragmentation because the new file segments can simply be created after the old ones.

On the other hand, if you shrink your database file, you can cause gaps between the files that the new segments may fit into when the database grows. This will then cause external fragmentation.

How to tame external fragmentation.

Here's an easy best practice that will save you lots of wondering as well as prevent fragmentation: size the file to its maximum known size when you create the database.

And here's another one: if you need to grow a database, either do so on a defragmented drive or create a new database file on an empty drive volume.

What about Windows defragmentation tools?

Although you can use a Windows defragmentation tool to defragment your database files, these tools simply move chunks of files around to get them contiguous. This moving of chunks of files can cause internal fragmentation that you might not be able to resolve easily.

Internal Fragmentation

Internal fragmentation, also called logical fragmentation, occurs inside the database file. This level of fragmentation can happen at one of three levels:

· Extent allocations between tables (table fragmentation)

· Extent allocations on a heap or index B-tree out of logical order

· Pages of an index out of order as they are contained on an extent

Table fragmentation occurs when two or more SQL Server tables have the logical order of their allocated extents mixed up.

For example, table A is contained on extents 1 and 5, table B is contained on extents 2 and 4, and table C is contained on extents 3 and 6. Having all the extents mixed together causes the disk head to jump around and prevents SQL Server from reading more than one extent of data at a time. (We'll write more about sequential reads in another post.) Each of these conditions increases the amount of time it takes to read data for queries.

Table fragmentation is often ignored in discussions of SQL Server fragmentation. It is hard to spot because it involves searching through SQL Server management views, and it is often hard to correct.

How to correct table fragmentation.

To resolve table fragmentation, you often have to rebuild the table or clustered index in a different filegroup. Then, you have to move it back to its original filegroup when no other file growth is happening and in a sequential, nonparallel manner. (See why you don't want to cause internal frag if you can help it?)

Internal table extent fragmentation is the ordering of the extents for one table. If the extents are all together in the file but are not in logical order, the same conditions are caused as in table fragmentation. The disk head has to jump around, and SQL Server cannot read larger chunks of data.

Page-level fragmentation is the logical ordering of the pages in a table. If page 1 is on extent 5, page 2 on extent 6, page 3 on extent 7 and so on, SQL Server must read from all the extents. This causes either the disk head to jump around or SQL Server to read all the extents, which creates more memory pressure. Either way, SQL Server has to do more work to retrieve the data it needs.

Luckily, you can resolve both internal table extent fragmentation and page fragmentation by rebuilding your indexes or by building and dropping a clustered index on a heap table.

Hiding the Breadcrumb

Date: 11 March 2010 - 05:53

We continue to get requests from customers we didnt anticipate. And we continue to solve those problems – some way or the other. This one is that “some way”. I dont love it. But hey, if it helps the customer, it works.

The customer wanted a way to hide the breadcrumb. Since we didnt have a specific API to do so, we just asked him to do the following:

 

FrameworkElement e = this.wd.View as FrameworkElement;
e.Margin = new Thickness(0, -40, 0, -40);
grid1.Children.Add(this.wd.View);

We just moved the Designer View up such that it hides the breadcrumb panel at the top.

 

Hope this helps!

 

Thanks,

Kushal.

IE8 Web Slices на сайте Президента РФ

Date: 11 March 2010 - 05:40

Наши друзья из опытного креативного бюро www.okburo.ru, которые помимо всего разработали и поддерживают www.kremlin.ru, интегрировали slices в сайт Президента:

image

image image

Windows Server AppFabric Beta 2 Documentation

Date: 11 March 2010 - 05:27

The documentation for Windows Server AppFabric Beta2 is posted to: http://msdn.microsoft.com/en-us/library/aa139632.aspx.

The installation guide for Beta2 is posted to: http://go.microsoft.com/fwlink/?LinkId=169172.

Check the links posted in the previous post as well.

 

Nueva máquina virtual de Dynamics AX 2009 en MSDN

Date: 11 March 2010 - 05:23
Han pasado ya unos días desde que salió pero no quería dejar de comentar este tema. Para todos aquellos que disponéis de una suscripción de MSDN , hemos publicado una máquina virtual de Dynamics AX 2009 que podéis utilizar para pruebas internas, desarrollo, demostraciones, etc. Esta máquina virtual contiene el siguiente software: · Windows Server 2008 SP2 · Microsoft SQL Server 2008 SP1 · Microsoft Office SharePoint Portal Server 2007 SP2 · Visual Studio 2008 SP1 · Microsoft Dynamics AX 2009 SP1...(read more)

Icons for the Designer

Date: 11 March 2010 - 05:18

We have already seen how to have icons for the toolbox items. However, unfortunately, it is not the same way for the icons on the designer surface.

Good news though, it is not that difficult. As we create our ActivityDesigner, we essentially need to add the following property:

 

<sap:ActivityDesigner.Icon>
        <DrawingBrush>
            <DrawingBrush.Drawing>
                <ImageDrawing>
                    <ImageDrawing.Rect>
                        <Rect Location="0,0" Size="25,25" ></Rect>
                    </ImageDrawing.Rect>
                    <ImageDrawing.ImageSource>
                        <BitmapImage UriSource="Activity-Monitor-icon.png" ></BitmapImage>
                    </ImageDrawing.ImageSource>
                </ImageDrawing>
            </DrawingBrush.Drawing>
        </DrawingBrush>
</sap:ActivityDesigner.Icon>

Hope this helps!

 

Thanks,

Kushal.

Microsoft Survey on Smart Grid Progress

Date: 11 March 2010 - 05:15

At CERA Week this week in Houston, Microsoft released a new survey that suggests only 8 percent of utilities around the world have completed their smart grid technology implementations while 37 percent have projects underway and more than half haven’t yet started. Surveying 200 professionals within electric, gas and water utilities and related companies around the world, the findings highlight a range of challenges — from financial and regulatory to technology and return on investment — for utilities already unsure of the right path to building the smart grid.

Here’s a quote by Jon Arnold, managing director for the Worldwide Power & Utilities Industry at Microsoft, from a press release issued today about the study:

“As this study clearly shows, the disruptive nature of the smart grid revolution, and the innovations it brings, has caught many in the industry by surprise, including many utilities that already have embraced smart grid technologies. Some incorrectly assert that the utility industry is unwilling to change, but the survey shows the opposite. It’s the magnitude of change to everything from business models to systems that’s overwhelming, especially given utilities’ existing asset and technology investments combined with the need to ensure profitability and reliability.”

For more on the survey, also visit the Microsoft Power and Utilities blog.

TF252031: A SharePoint site could not be created for the team project collection. (HRESULT: 0x80040E09)

Date: 11 March 2010 - 05:01

Full error message: “TF252031: A SharePoint site could not be created for the team project collection. The following error occurred: Server was unable to process request. ---> Exception from HRESULT: 0x80040E09”

We have found that this error happens when you are creating a team project collection, mostly commonly here:

  • During initial configuration, with Advanced or Standard wizards
  • When creating a new team project collection from the Team Foundation Administration Console

When does this error happen?

This error only occurs when Team Foundation Server, SharePoint Products, and SQL Server are all installed on the same machine and SQL Server has the TCP/IP protocol disabled.

The Trial and Developer editions of SQL Server will have TCP/IP disabled by default. We’ve seen customers running into this problem with customers trying to evaluate Team Foundation Server by using Trial/Developer editions of SQL Server.

What is the workaround?

The workaround is to simply enable the TCP/IP protocol for SQL Server.

NOTE: For more information on setting this, you can refer to the “How to: Verify SQL Server 2008” section of the Team Foundation Installation Guide.

Once this is complete, then you can create a team project collection using the Team Foundation Administration Console. The SharePoint site collection should be successfully created and you will have a fully operational system.

If you already have a team project collection with no SharePoint site created, then using the Team Foundation Administration Console, select that team project collection, and from the “SharePoint Products” tab, select to edit the default path. It will automatically prompt you to create a SharePoint site.

DevTeach 2010 Recap

Date: 11 March 2010 - 04:57

DevTeach is finally winding down and my sessions are all done. It’s been a great conference, as always. I have been speaking at DevTeach since the second year and it’s always a great time chatting with Canadians about software development. This year I had the pleasure of kicking off the conference on Tuesday morning with the Keynote. I did a Lap around Visual Studio 2010 and I showed fun IDE features and extensibility, showed off a couple of my favorite language enhancements, new Entity Framework 4 & WCF Data Services, new WPF designer and data binding, and Silverlight and SharePoint 2010 tools. It was fun and I think people were pumped.

Here’s some good links to check out for VS2010:

Right after the Keynote I had a session that I’ve spoken about many times before (always a crowd pleaser) on VB10 / C#4 language features which are covered in these walkthroughs, articles and videos, on MSDN:

I also did an off-the-cuff talk yesterday with Jon Aneja at lunch on using Open XML and XML Literals in VB to manipulate Office document formats.

My last session was today on Building Office Productivity Solutions with Visual Studio 2010 and according to the evals it went well just like my language talk. We created an OBA for good old Northwind Traders, bringing them into the 21st century. ;-)  I showed the new features of VS2010 that makes Office development easier focusing on RAD data binding (including WPF) and designers, ribbon and the other available designers, as well as SharePoint 2010 tools around workflow and visual web parts.

My main goal was to provide a real-world scenario and architecture but keep the demo code manageable and simple while also introducing folks to all the RAD designers available. This way you can take apart the sample easily and reuse just the pieces you need. Check out the code and all the articles here: http://code.msdn.microsoft.com/OBANorthwind and check out the VSTO Developer Center for more awesome resources: http://msdn.com/vsto

Some of the new features that make Office development and deployment easier are covered in these walkthroughs:

Here are some pictures from the conference which was held at a really nice Microsoft facility in Mississauga.

IMG_2013 IMG_2024 IMG_2025 IMG_2006 IMG_2008 IMG_2009 IMG_2010 IMG_2011 IMG_2014 IMG_2015 IMG_2019 IMG_2023

Now it’s time to get some dinner and good beer. ;-) Goodbye, Canada. Thanks for the awesome hospitality. See you next time!

Microsoft Office 2010 On Tour

Date: 11 March 2010 - 04:48

office-2010-on-tour

The web has been abuzz about the launch of Microsoft Office 2010. So we are going on tour to tell you all about it. Don’t miss out on this epic event to see and hear all about Office 2010.

Office 2010 can help you with a set of smart, security-enhanced, easy to integrate tools that work with what you have now, so you can grow your business instead of your budget.

You will hear how you can better serve the diverse needs of your business and end users to:

  • Increase the return on every employee
  • Enable mobile workforce
  • Improve information value and flow
  • Reduce risk to the business

While at the same time delivering great IT efficiency, by:

  • Delivering against changing business requests
  • Controlling support, integration and training costs
  • Protecting information and staying compliant
  • Connecting users to key business processes

Check out our tour dates to see when we will be in your region, and then register here.

Be in to win...

Be in to win an HP Mini notebook and Smart phoneAll attendees who attend the event, and complete an evaluation form, will go into the draw to win an HP iPAQ Data Messenger Smartphone and an HP Mini 5102 notebook PC.
Terms and conditions apply.

 

 

 

Locations & Dates

Whangarei - 27 May 2010 - Register here

Auckland - 6 April 2010, 20 April 2010, 4 May 2010, 18 May 2010, 1 June 2010, 15 June 2010, 29 June 2010 - Register here

Hamilton -  7 April 2010 - Register here

Tauranga - 3 June 2010-  Register here

Wellington - 13 April 2010. 27 April 2010, 11 May 2010, 25 May 2010, 8 June 2010, 22 June 2010 - Register here

Christchurch - 14 April 2010, 19 May 2010 - Register here

Dunedin - 15 April 2010, 8.30-10.30am - Register here

Speaker Profiles

Bio

Jonathan Stuckey

Jonathan is a solutions specialist for Microsoft New Zealand, responsible for helping enterprise customers understand and evaluate Office System platform against Enterprise Content Management, Compliance and Business Process Efficiency business objectives.

With over 17 years' IT industry experience Jonathan has a knowledge of a broad range of business challenges and requirements; and an extensive understanding of platforms, having worked for IBM, Sequent Computers & Sun Microsystems, and 10 years with Microsoft globally.

Now part of the Specialist Team in New Zealand Jonathan has been actively engaged in Public and commercial sectors for 3+ yrs, and is responsible for pursuing local support for Public Records Act with Office & SharePoint. As NZ “Wave 14” Ambassador, he is charged with driving Microsoft and partner readiness for Office 2010 & SharePoint 2010; building local business value propositions for information working, and coordinating Microsoft, Partner and Customers with early adoption.

Bio

Paul Quirk

Paul has been working with SharePoint since its first release in 2000 and has delivered a large number of solutions to customers during a long tenure as a Microsoft partner. Paul has been a Project Manager, a Manager of Project Managers, a Pre Sales Consultant as well as a Managing Consultant. Paul gave up these impressive sounding titles and joined Microsoft in 2008 as Business Productivity Solution Specialist.

Promoting and Delivering on ‘Green’ in Government

Date: 11 March 2010 - 04:47

By Kristin Bockius, State & Local Government Social Media Marketing Manager

From energy-efficient products to Microsoft’s internal operations, we are committed to reducing our carbon footprint as well as the environmental impact of our customers and partners. Kim Nelson, Microsoft US Public Sector executive director of eGovernment, discusses how Microsoft can help other industries, governments, and local citizens become more energy efficient and environmentally sustainable through the proper implementation of certain software.

Share this post :


Copyright © 2007 Emexci Network
livetr tracker