PowerShell v2 Set Process Priority on Slow Scheduled Tasks

While troubleshooting some slow processes on a server I had my server guy take a look. After some wild goose chasing he discovered that Windows Server 2008 R2 defaults to a priority level of Low by default for scheduled tasks. All the troubleshooting we had done never led us to look at this, but, it explained everything perfectly. Once he exported the task in question to XML he noticed this little nugget:
7
The enumeration for this is "Low". Having changed the value to 4 (or "Normal" per this reference) and reimported he found the script associated with the job now ran as expected. Wondering how we could handle this programatically we found this link:
[MSH] How to change a Processs Priority 
from the days of Monad. Taking his suggestion one step further I came up with this:
(Get-Process -id $pid).PriorityClass = "Normal"
Using the $pid to automatically refer to the instance of PowerShell running my script I can handle this in a single line rather than having to export/manipulate XML or task objects.
 
Read More..

USB device is not detected or is malfunctioning

Pen Drive USB Device
It’s not easy to troubleshoot a USB device, since they are usually plug-n-play devices. If your OS is Windows XP, it’s very easy to install and begin using a USB device; Windows XP has its own native drivers. But if your drive is not detectable, then the issue is probably hardware related. You could try the following steps to solve this issue:
  1. Sometimes the problem is solved by simply unplugging it and plugging it back firmly. It can be a case of loose connection.
  2. Try restarting your computer with the drive plugged into the USB port.
  3. Some times there is a voltage drop across the USB port which also can be responsible for the problem. Simply wait for few minutes it will be detected automatically.
  4. If all these attempts are useless, go to the "Device Manager"- Right click on my computer icon desktop and click on "Manage >> Device Manager".
    • Expand the Universal Serial Bus Controller List.
    • You can see an exclamation mark. Right-click on it and then click on "Uninstall".
    • Now, Right-click on "Universal Serial Bus Controller" and click on scan for hardware changes. Now your USB device must be detected.
If all these attempts have not solved your problem, then probably you device is malfunctioning.
Visit microsoft help for more. Click here.
Read More..

Do you use Internet glue

Do you use Internet glue? Do you know what it is? Basically its a web service that links two web services together; hence the name Internet glue. For example, actions  you take in your webmail system could to update your ToDo list, or add a calendar reminder. Back in January I blogged about how I use IFTTT (if this then that) to create and disseminate these blog posts. Increasingly though these systems are starting to integrate with our smartphones. IFTTT can use the iPhones location to trigger actions and can integrate with iOS reminders, contacts and the camera roll.  IFTTT has now launched on Android with a deeper set of integrations with the OS than their iOS offering. This is possible because Android has a "more laissez-faire attitude when it comes to allowing apps to extend their tentacles into core OS functions."
If you havent started using IFTTT I highly recommend you do. Not only can it smooth your workflow but it can also be fun.

from The Universal Machine http://universal-machine.blogspot.com/

IFTTT

Put the internet to work for you.

via Personal Recipe 895909

Read More..

Simple is better Making your web forms easy to use pays off




Imagine yourself filling out a long and cumbersome form on a website to register for a service. After several minutes of filling out fields, coming up with a password, and handling captchas, you click the submit button to encounter your form filled with red error messages. Suddenly the “close tab” button seems much more tempting than before.

Despite the rapid evolution of the Internet, web forms, with their limited and unilateral way of interaction, remain one of the core barriers between users and website owners. Any kind of obstacle or difficulty in filling in online forms can lead to increased frustration by the user, resulting in drop-outs and information loss.

In 2010, a set of 20 guidelines to optimize web forms was published by researchers from the University of Basel in Switzerland, including best practices aimed to improve web forms and reduce frustration, errors and drop-outs. For instance, guideline no. 13 states that if answers are required in a specific format, the imposed rule should communicated in advance; or no. 15 that states that forms should never clear already completed fields after an error occurs.

To investigate the impact of applying these rules, we conducted a study and presented our results at CHI 2014: Designing usable web forms: empirical evaluation of web form improvement guidelines. In the study, we examined a sample of high traffic online forms and rated them based on how well they followed the form guidelines outlined by the 2010 publication. We then selected three different online forms of varying qualities (low, medium and high), and improved them by applying the guidelines, with the high quality form needing less modification than the medium and low quality forms. We then tested both the original and improved forms extensively with 65 participants in a controlled lab environment.

In our study, the modified forms showed significant improvements over the original forms in the time users needed to complete a form, an increase in successful first-trial submissions and higher user satisfaction. As expected, the impact was highest when the original form was of low quality, but even high quality forms showed improved metrics.

Furthermore, user interviews with participants in the study revealed which guidelines were most impactful in improving the forms:

  • Format specifications (e.g., requiring a minimum password length) should be stated in the form, prior to submission. The application of this guideline had a large positive impact on user performance, subjective user ratings and was also mentioned frequently in user interviews.
  • Error messages must be placed next to the erroneous field and designed in a way users are easily able to fix the problem. Doing this reduced form-filling time and increased subjective ratings.
  • Most frequently users mentioned that it was key to be able to tell apart optional and mandatory fields.

Example Guideline: State format specification in advance
 Example Guideline :Place error message next to erroneous fields
Example Guideline: Distinguish optional and mandatory fields
Putting field labels above rather than adjacent to the fields in the form led also to improvements in the way users scanned the form. Using eye-tracking technology, our study shows that users needed less number of fixations, less fixation time and fewer saccades before submitting the form for the first time.


Figure 4.png
Scan path for an original and improved form
From our study, we conclude that optimizing online forms is well worth the resource investment. With easy to implement actions, you can improve your forms, increase the number of successful transactions, and end up with more satisfied users. Google is currently working on implementing these findings on our own forms.

We wish to thank our co-authors at the University of Basel, Switzerland for their collaboration in this work: Silvia Heinz, Klaus Opwis and Alexandre Tuch.
Read More..

PowerShell v3 Type Accelerators Cheat and a lot of Hot Wind

This is straight off of Hals Google+.
[PSObject].Assembly.GetType(System.Management.Automation.TypeAccelerators)::Get.GetEnumerator() | sort key | select key 
Now, to get a little more into the arcane side of all things PowerShelly, heres a little sidenote (and history): this was shifted from being a public class in v2 to an internal class in v3 as indicated by James ONeill: System.Management.Automation.TypeAccelerators broken in V3 CTP2.

To get around to seeing whats buried in there with v3 you have to resort to a little trickery (calling the assembly itself...which references all exported objects...then drill down into the DLR indirectly). This explains why you are unable to see a "clean" list of TypeAccelerators in v3. For example, v3 shows the following with my hopped up command:
# Type accelarators
[PSObject].Assembly.GetType(System.Management.Automation.TypeAccelerators)::Get.GetEnumerator() |
sort key|
select key|
% {$_.key.ToString().Trim()}
and it returns:
adsi
adsisearcher
Alias
AllowEmptyCollection
AllowEmptyString
AllowNull
array
bigint
bool
byte
char
ciminstance
CmdletBinding
cultureinfo
datetime
decimal
double
float
guid
hashtable
int
int16
int32
int64
ipaddress
long
mailaddress
NullString
OutputType
Parameter
powershell
pscredential
pscustomobject
PSDefaultValue
pslistmodifier
psmoduleinfo
psobject
psprimitivedictionary
PSTypeNameAttribute
ref
regex
runspace
runspacefactory
sbyte
scriptblock
securestring
single
string
SupportsWildcards
switch
timespan
type
uint16
uint32
uint64
uri
ValidateCount
ValidateLength
ValidateNotNull
ValidateNotNullOrEmpty

Adobe Flash CS3 Professional Portable

Adobe Flash CS3 is used to create interactive content for websites as well as enrich games whether they are destined for PC, mobile phones or portable devices. Adobe Flash (formerly called Macromedia Flash and Shockwave Flash) is a multimedia and software platform used for creating vector graphics, animation, browser games, rich Internet applications, desktop applications, mobile applications and mobile games. Flash displays text, vector and raster graphics to provide animations, video games and applications. It allows streaming of audio and video, and can capture mouse, keyboard, microphone and camera input.

This program includes the following features:
  • Impressive integration with other Adobe programs, especially Photoshop and Illustrator
  • New Paste dialog box
  • Convert any animation created into ActionScript 3.0 with an advanced debugger
  • Quite intuitive user interface following Adobe’s signature style
  • Possibility of importing native Fireworks CS3 files
  • Create content for mobile devices thanks to Adobe Device Central
  • New drawing tools which stand out are the Pen Tool, Convert Anchor Point Tool, Delete Anchor Point Tool and Add Anchor Point Tool
  • New components for ActionScript 3.0
  • Advanced QuickTime export system
  • New video encoding options

Adobe Flash CS3 Professional Portable.




SHARE BY GK
Computer Knowledge
Read More..

PowerShell v3 Function Change ProcessPriority

Not sure why I didnt put this one out when I wrote it. I come up with way too many functions...
function Change-ProcessPriority
{
      <#
            .EXAMPLE 1
                  Change-ProcessPriority "High"
                 
            .NOTES
                  Author: Will Steele (wlsteele@gmail.com)
                  Last Modified Date: 06/14/2012
                 
            .PARAMETER Priority
                  A mandatory string indicating the process level to which you want to
                  update a processes priority level.
      #>
           
      param(
            [Parameter(
                  Mandatory = $true
            )]
            [ValidateSet("AboveNormal","BelowNormal","High","Idle","Low","Normal","RealTime")]
            $Priority
      )
     
      if((Get-Process -Id $PID).PriorityClass -eq $Priority)
      {
            Write-Output "The process priority for PID ($PID) is already set to $($Priority).";
      }
      else
      {
            Write-Output "Setting the process priority for PID ($PID) to $($Priority).";
            (Get-Process -Id $PID).PriorityClass = $Priority;
      }
}
Read More..

Welcome to Computer Class week 1

This site serves as our jumping off point for all of our lessons and projects. Instead of a text book we have web pages with instructions, examples, links and videos. If you are ever unsure of what you need to do, check this site first.

Should there ever be a substitute on a computer day, all your instructions for the day will be on this home page. We are beginning our computer class this year with typing practice. Learning to type fast is so important for todays world and the future. It takes practice to get faster. No matter how fast you type now, your goal for this unit is to improve your personal speed.

Click on your grade level above and then click on Unit 1.

Read More..

After Effects Basic Tutorial In Hindi By Media Masters



After Effects Basic Tutorial In Hindi By Media Masters.


SHARE BY GK
Computer Knowledge
Read More..

How to find the IP address of the sender in Yahoo! mail

When you receive an email, you receive more than just the message. The email comes with headers that carry important information that can tell where the email was sent from and possibly who sent it. For that, you would need to find the IP address of the sender. The tutorial below can help you find the IP address of the sender. Note that this will not work if the sender uses anonymous proxy servers.

Finding IP address in Yahoo! Mail

1. Log into your Yahoo! mail with your username and password.
2. Click on Inbox or whichever folder you have stored your mail.
3. Open the mail.
4. If you do not see the headers above the mail message, your headers are not displayed. To display the headers,
* Click on Options on the top-right corner
* In the Mail Options page, click on General Preferences
* Scroll down to Messages where you have the Headers option
* Make sure that Show all headers on incoming messages is selected
* Click on the Save button
* Go back to the mails and open that mail.
5. You should see similar headers like this:Yahoo! headers : nameLook for Received: from followed by the IP address between square brackets [ ]. Here, it is 202.65.138.109.That is be the IP address of the sender!
6. Track the IP address of the sender
Read More..

PowerShell v3 in a Year Day 4 about Arithmetic Operators

Much of the arithmetic operator information is straightforward, as you would assume it to be in algebra or math class:

  • + : adds the value on the right to the value on the left
  • - : subtracts the value on the right from the value on the left
  • - : preceding a number, negates it
  • * : multiples two numbers
  • * : copies strings/arrays the number of times specified
  • / : divides the two numbers
  • % : returns the modulo, aka, the remainder of a division operator
One of the really important things about the arithmetic operators is the order of precedence. Knowing this can solve a lot of little mysteries in weird results. This is straight from the help:
  • Parentheses ()
  • - (for a negative number)
  • *, /, %
  • +, - (for subtraction)
And a series of demonstrations straight from the help to give examples of how it plays out in actual practice:
  • 3+6/3*4= 11
  • 10+4/2 = 12
  • (10+4)/2 = 7
  • (3+3)/(1+1) =
And a few more interest variable evaluations:
  • a= 0
  • $b = 1,2
  • $c = -1,-2
  • $b[$a] = $c[$a++]
  • $b returns 1, -1
Rounding in PowerShell is similar to your standard algebra. If a value is equal to or greater than 0.5 it rounds to the higher integer value. Otherwise, it rounds down.

Interestingly, non-numeric types respond to the arithmetic operators, as in strings, arrays and hashtables. Both addition and multiplication can be done with the above, excluding hashtables. You cant multiply hashtables. When you add any of the above, they are merely concatenated. In the process a new object is created, so if you are doing massive computations, realize memory will get taxed fairly heavily. So, if we have two arrays:
  • $a= 1,2,3
  • $b = 4,5,
    Adding them together gives you:
    • $a+ $b = 1,2,3,4,5,
    One gotcha here is that, if you are performing arithmetic with objects of various types (lets say an int, a string and an array) the leftmost value is what all values are attempted to convert to. If all successfully convert, the operation succeeds. If not, it fails. Here are four examples:
    • "file"+ 16 = file16
    • $array= 1,2,3; $array + 16 = 1,2,3,16
    • $array+ "file"; 1,2,3,file
    • "file"* 3 = filefilefile
    Hash tables and arrays are a bit unique and reading the help can give you more precise example to demonstrate the value. 
    • If you add a hashtable to an array, its an array with a hashtable. 
    • If you add two hashtables, its one larger hashtable. 
    • Hashtables and non-collections cannot be added. 
    • Hashtables with identical keys cannot be added since that invalidates the uniqueness condition of a hashtable key set.
    Using the += operator can add elements to both arrays and hashtables. The syntax for both is different. Not that you must wrap a key/value pair, for a hashtable, to use the += approach, otherwise, you need to use .Add(key,value):
    • $array+= 1
    • $hashtable+= @{d =1}
    When adding two different types, for instance, an int and a decimal, the cast to retain greatest precision is automatically performed. Similarly, if two datatypes require an automatic widening conversion, PowerShell handles it without remark.

    Performing arithmetic operations with variables is essentially the same thing as working with the underlying variable values. For instance, if I have this:
    • $a= 1
    • $b= 1
    • $a+ $b = 2
      Similarly, referring back to the leftmost type determines conversion type rule:
      • $a= Windows
      • $b = PowerShell
      • $c = 3
      • $a + $b + $c = Windows PowerShell 3
      Not only can operators be used with expressions in numbers, strings and arrays... Objects are also subject to the rules. Take the example of Get-Date
      • Get-Date returns Wednesday, September12, 2012 2:30:16 AM 
      • $day= new-timespan-day 1; (get-date) + $day returns Thursday, September13, 2012 2:36:39 AM
      Note the help says get-date + $day, but, when I tested this, you had to run a (get-date) subexpression evaluation first. I threw this in Connect as a doco bug fix if you want to upvote. Lowly, but, anyway...
        A second example:

        • get-process| where {($_.ws * 2) -gt 50mb}  returns a list of process objects whose doubled Working Sets sizes were greater than 50Mb. The key here is to realize you can use calculations on the fly with operators (in this case *, not just +).
        A series of basic arithmetic operators:
        • 1+ 1 = 2
        • 1 - 1 = 0
        • -(6 + 3) = -9
        • * 2 = 12 
        • / 2 = 3.5
        • 7 % 2 = 1
        • w * 3 = www
        There are plenty of further examples that could be explored, but, many of the quirks you will run into are explored above. As you have time, try out combinations of weird things you think you know the answer to so as to validate PowerShells computational rules against your own. This is key to avoiding some of the most confusing of all problems: unexpressed conceptual fundamentals. 

          Read More..

          3DS Max Cloth Modifier Tutorials By Wendy Huther



          3DS Max Cloth Modifier. Easy To Follow Step By Step Tutorials. Enjoy!


          SHARE BY GK
          Computer Knowledge
          Read More..

          Nikon School D SLR Tutorials In Hindi By Nikon India



          1 Tutorial. 12 Sessions. Now in Hindi to understand your Nikon D-SLR better.


          SHARE BY GK
          Computer Knowledge
          Read More..

          MAKE YOUR MENUS LOAD FASTER

          Go to Start then Run


          Type Regedit then click Ok


          Find "HKEY_CURRENT_USERControl PanelDesktop"
          Select "MenuShowDelay"


          Right click and select "Modify


          Reduce the number to around "100"


          This is the delay time before a menu is opened. You can set it to "0" but it can make windows really hard to use as menus will open if you just look at them - well move your mouse over them anyway.
           I tend to go for anywhere between 50-150 depending on my mood.

          Read More..

          PowerShell v3 Function Set UACState

          A current project has me building common provisioning tasks into a scripted solution. One of the tasks is disabling UAC. There are plenty of posts on how to do this, but, the one I started with is from Technet forum,
          How to disable UAC
          in which Hil Liao provides this answer,
          The best way is to change the registry key at registry::HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionpoliciessystem; key = EnableLUA

          You can use the following powershell code to check the value:
          Code Snippet
          $UAC = Get-ItemProperty -Path registry::HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionpoliciessystem -Name EnableLUA
          $UAC.EnableLUA

          To change the value and disable UAC:
          Code Snippet
          Set-ItemProperty -Path registry::HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionpoliciessystem -Name EnableLUA -Value 0

          You need to reboot to make it take effect.
          Porting this into a function, I came up with this set of functions (some of which are purely utility functions):
          function Get-UACState
          {
                 [CmdletBinding()]
                 param()

                 $UAC = Get-ItemProperty -Path hklm:SoftwareMicrosoftWindowsCurrentVersionpoliciessystem -Name EnableLUA
                 if($UAC.EnableLUA -eq 0)
                 {
                       Write-Verbose "$(Get-TimeStamp): UAC is disabled.";
                       $UAC.EnableLUA
                 }
                 elseif($UAC.EnableLUA -eq 1)
                 {
                       Write-Verbose "$(Get-TimeStamp): UAC is enabled.";
                       $UAC.EnableLUA
                 }
          }

          function Get-TimeStamp
          {
                 param(
                       $Format = yyyy-MM-dd HH:mm:ss
                 )
                
                 Get-Date -Format $Format;
          }

          function IsUserElevated
          {
                 [CmdletBinding()]
                 param()
                
                 $isuserelevated = ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] "Administrator")
                 if($isuserelevated)
                 {
                       Write-Verbose "$(Get-TimeStamp): User is elevated.";
                       $isuserelevated;                       
                 }
                 elseif(-not($isuserelevated))
                 {
                       Write-Verbose "$(Get-TimeStamp): User is not elevated.";
                       $isuserelevated;                              
                 }
          }

          function Set-UACState
          {
                 [CmdletBinding(
                       DefaultParameterSetName = Disable
                 )]
                 param(
                       [Parameter(
                              ParameterSetName = Disable
                       )]
                       [Switch]
                       $Disable = $true,
                      
                       [Parameter(
                              ParameterSetName = Enable
                       )]
                       [Switch]
                       $Enable = $false
                 )
                
                 if(IsUserElevated)
                 {
                       if($Enable)
                       {
                              Set-ItemProperty -Path hklm:SoftwareMicrosoftWindowsCurrentVersionpoliciessystem -Name EnableLUA -Value 1
                       }
                       elseif($Disable)
                       {
                              Set-ItemProperty -Path hklm:SoftwareMicrosoftWindowsCurrentVersionpoliciessystem -Name EnableLUA -Value 0
                       }
                       elseif($Enable -and $Disable)
                       {
                              throw "$(Get-TimeStamp): You must use one of either -Disable or -Enable. Both cannot be selected simultaneously.";
                       }
                 }
                 else
                 {
                       throw Read More..