Run CC with minimum rights

Our users can not have local admin rights, but CC wants full admin to run or update. We use a Dell product called Privilege Manager where I can give admin rights to just certain applications. So my question is, what are the applications/process that need admin rights? I have given them to Creative Cloud.exe, Adobe CEF Help.exe, etc. with no success. It still tells me it needs admin rights. If anyone knows what apps/processes actually are used when installing/updating, please let me know.

To run CC withput admin rights you have to install them via CC packager and grant full rights for Users to:
C:\Program Files (x86)\Common Files\Adobe\SLCache
To install updates, either you create updáte packages with the cc packager and deploy them, or you use the remote update manager

Similar Messages

  • Does UCCX 8.5.1 Historical Reporting Client run only with admin rights?

    I installed UCCX 8.5.1 Historical Reporting Client on a Windows Vista machine. When I try to open it as a regular user, it gives me an error message "Unexpected error: Quitting". I can only open it when I log into the machine as administrator. Does anyone know this is the normal behaviour? If so, then every supervisor of my contact center will need to have admin rights in the computer?

    hi,
    The Historical Reports client uses Windows's secondary logon service.  It uses this to run
    the software with the CiscoHistRptUsr when the agent or supervisor is logged into the PC
    with their own account.  This is the service that gives you the Run As option when you
    right click on executables. Check to see if they have this ability on the PC, and make
    sure the "Secondary Logon" service shows as Started in the Windows services (Run -->
    Services.msc)"
    So, on one of the PCs with the issue, look for Secondary Login: Start >Settings >
    Control Panel > Administrative Tools > Services. Scroll down to Secondary Logon and
    verify that this service is started.
    Also, if the service is running, please look for the application, right click on it and
    select "Run as Administrator"
    Hope that helps!
    Thanks,
    Karthik

  • How can you run a command with elevated rights on a remote server with invoke-command ?

    I am trying to run a script on a remote server with invoke-command.  The script is starting and is running fine, but the problem is that it should be running with elevated rights on the remote server.  On the server where I start the invoke-command, my account has the necessary rights.
    The server were I launch the invoke-command is a W2K8 R2.  The remote box is a W2K3 with powershell v2.0 installed.
    When I launch the script on the remote-box from the command line, I don't get the access denied's.
    Is there a way to do this ?
    Thanks in advance

    The script that I want to run is to install the windows updates.  I get an access denied on the download of the updates.
    When I execute the script on an W2K8 box, (not remotely) and I run it with non-elevated rights, I get the same error.
    The script is running fine when it is launched on W2K3 box locally with a domain account that has local admin rights, or on a W2K8 R2 server with a domain account that has local admin rights, but with elevated rights.
    Thanks in advance for your help.
    #=== start script ====
    param($installOption="TESTINSTALL",$rebootOption="NOREBOOT")
    Function Show-Help
    Write-Host ""
    Write-Host "SCRIPT: $scriptName <installOption> <RebootOption>"
    Write-Host ""
    Write-Host "DESCRIPTION: Installatie van WSUS updates op de lokale server"
    Write-Host ""
    Write-Host "PARAMETERS"
    Write-Host " -installOption <[INSTALL|TESTINSTALL]>"
    Write-Host " -rebootOption <[REBOOT|NOREBOOT|REBOOT_IF_UPDATED]>"
    Write-Host ""
    Write-Host "EXAMPLE:"
    Write-Host "$ScriptName -installOption INSTALL -rebootOption REBOOT_IF_UPDATED"
    Write-Host "$ScriptNAme INSTALL NOREBOOT"
    Write-Host ""
    Write-Host "Indien beide parameter weggelaten worden zijn de defaultwaarden :"
    Write-Host " installOption=TESTINSTALL "
    Write-Host " RebootOption=NOREBOOT"
    Write-Host ""
    Exit
    #Include alle globale variablen
    $CEIF_WIN_PATH = (get-content env:CEIF_WIN_PATH)
    $includeFile=$CEIF_WIN_PATH + "\Scripts\include_win.ps1"
    . $includeFile
    #initialiseer error count
    $errcnt=0
    $scriptName=$MyInvocation.MyCommand.Name
    #argumenten controleren
    $arrInstallOption= "TESTINSTALL", "INSTALL" # Mandatory variable with predefined values
    If (!($arrInstallOption –contains $installOption)){ Show-Help }
    $arrRebootOption = "REBOOT", "NOREBOOT","REBOOT_IF_UPDATED" # Mandatory variable with predefined values
    If (!($arrRebootOption –contains $rebootOption)){ Show-Help }
    #Logfile opbouwen
    $logfile = get-logfileName($MyInvocation.MyCommand.Name)
    Log-scriptStart $MyInvocation.MyCommand.Name $logfile
    function Get-WIAStatusValue($value)
    switch -exact ($value)
    0 {"NotStarted"}
    1 {"InProgress"}
    2 {"Succeeded"}
    3 {"SucceededWithErrors"}
    4 {"Failed"}
    5 {"Aborted"}
    function boot-server()
    if ($installOption -eq "TESTINSTALL")
    logger "TESTINSTALL : - Reboot local Server" $logfile
    else
    logger " - Reboot local Server" $logfile
    $thisServer = gwmi win32_operatingsystem
    $thisServer.psbase.Scope.Options.EnablePrivileges = $true
    $thisServer.Reboot()
    $logmsg="Install option = " + $installOption + ", RebootOption = $rebootOption"
    logger "$logmsg" $logfile
    logger "" $logfile
    logger " - Creating WU COM object" $logfile
    $UpdateSession = New-Object -ComObject Microsoft.Update.Session
    $UpdateSearcher = $UpdateSession.CreateUpdateSearcher()
    logger " - Searching for Updates" $logfile
    $SearchResult = $UpdateSearcher.Search("IsAssigned=1 and IsHidden=0 and IsInstalled=0")
    logger " - Found [$($SearchResult.Updates.count)] Updates to Download and install" $logfile
    $Updates=$($SearchResult.Updates.count)
    logger "" $logfile
    foreach($Update in $SearchResult.Updates)
    if ($Update.EulaAccepted -eq 0)
    $Update.AcceptEula()
    # Add Update to Collection
    $UpdatesCollection = New-Object -ComObject Microsoft.Update.UpdateColl
    $UpdatesCollection.Add($Update) | out-null
    if ($installOption -eq "TESTINSTALL")
    else
    # Download
    logger " + Downloading Update $($Update.Title)" $logfile
    $UpdatesDownloader = $UpdateSession.CreateUpdateDownloader()
    $UpdatesDownloader.Updates = $UpdatesCollection
    $DownloadResult = $UpdatesDownloader.Download()
    $Message = " - Download {0}" -f (Get-WIAStatusValue $DownloadResult.ResultCode)
    if ($DownloadResult.ResultCode -eq 4 )
    { $errcnt = 1 }
    logger $message $logfile
    # Install
    logger " - Installing Update" $logfile
    $UpdatesInstaller = $UpdateSession.CreateUpdateInstaller()
    $UpdatesInstaller.Updates = $UpdatesCollection
    $InstallResult = $UpdatesInstaller.Install()
    $Message = " - Install {0}" -f (Get-WIAStatusValue $InstallResult.ResultCode)
    if ($InstallResult.ResultCode -eq 4 )
    { $errcnt = 1 }
    logger $message $logfile
    logger "" $logfile
    #Indien er een fout gebeurde tijdens download/installatie -> stuur mail naar windowsteam
    if ( $errcnt -gt 0 )
    logger " - Fout tijdens de uitvoering van script -> send mail" $logfile
    $mailSubject=$MyInvocation.MyCommand.Name
    $msg = new-object Net.Mail.MailMessage
    $att = new-object Net.Mail.Attachment($logfile)
    $smtp = new-object Net.Mail.SmtpClient($smtpServer)
    $msg.From = $mailFrom
    $msg.To.Add($mailTo)
    $msg.Subject = $mailSubject
    $msg.Body = “Meer details in attachement”
    $msg.Attachments.Add($att)
    $smtp.Send($msg)
    #Moet de server herstart worden ?
    if ($rebootOption -eq "REBOOT_IF_UPDATED" )
    if ($Updates -gt 0)
    #Reboot the server when updates are installed
    boot-server
    elseif ($rebootOption -eq "REBOOT")
    #reboot the server always
    boot-server
    else
    #Do not reboot the server
    logger "Do not reboot the server" $logfile
    Log-scriptEnd $MyInvocation.MyCommand.Name $logfile
    exit 0

  • Running the net or sc commands with the rights of the local System

    Hi
    In Windows 7 SP1, how do I run the net or sc commands with the rights of the local System?
    Thanks
    Bye
    Balubeto

    Hi,
    I agree with
    T. Kujala , it's easy to achieve this goal with PsExec.exe, the tool is easy to download and use.
    http://blogs.technet.com/b/askds/archive/2008/10/22/getting-a-cmd-prompt-as-system-in-windows-vista-and-windows-server-2008.aspx
    If you don't want to use external utilities, then this link below might give you some hints
    http://blogs.msdn.com/b/adioltean/archive/2004/11/27/271063.aspx
    Yolanda Zhu
    TechNet Community Support

  • Adobe Updater can be run only by users with administrator rights error on 2003 termianl server

    I just installed the latest security update of 8.1.7 on my two terminal servers. Now when each users logs in, they get the following error.
    Insufficient Rights (title)
    Adobe Updater can be run only by usrs with administrator rights.
    They simply click OK and it goes away but it is very annoying. It seems like every time their is an update to Adobe Reader, something goes wrong.
    Does anybody have any thoughts on how to stop the Adobe Updater from loading when my users login? Thanks,
    Justin

    I ended up finding the solution at this link.
    http://forums.adobe.com/message/1770665
    Erech_Belt said
    5. Aug 14, 2008 7:22 AM in response to: (LeaAnn_Coldren)
    Re: Insufficient Rights Window for non-admins after 8.1.2 successful install
    Here is the solution I found.
    "Renaming %program files%/Common Files/Adobe/updater5 to something else removed the error."
    This seems like a brute force approach, but it does work. I checked the event logs after doing this and don't see any errors in the App or System logs. This folder is the location of AdobeUpdater.exe and all of the Adobe .cer files, so it makes sense that this works, but seems like it should generate other errors...
    This is not how I wanted to solve the problem but it did solve it.
    Justin

  • [FIXED] Compiz runs only with emerald and crashes with metacity

    Hey,
    I currently try to use a metacity theme and have compiz enabled but apparently that's something compiz doesn't really like.
    One think i noticed in fusion-icon is that the entire metacity option under: "Select Window Devorator" is just not there.. (or was that always the case?)
    Oke, things i have done so far:
    - Search this forum (obviously) nothing found with a solution
    - Searched the wiki (same results)
    - in gconf-editor /desktop/gnome/session/required_components/windowmanager set to compiz (like said in the Compiz wiki page on archlinux.org
    - disabled metacity as compositing manager (tried with enabled as well but the same results)
    - right now i have the compiz bash script from ubuntu (tweaked a little) and that starts up compiz just fine but not with metacity
    And incase you want the script:
    #!/bin/sh
    # Compiz Manager wrapper script
    # Copyright (c) 2007 Kristian Lyngstøl <[email protected]>
    # This program is free software; you can redistribute it and/or modify
    # it under the terms of the GNU General Public License as published by
    # the Free Software Foundation; either version 2 of the License, or
    # (at your option) any later version.
    # This program is distributed in the hope that it will be useful,
    # but WITHOUT ANY WARRANTY; without even the implied warranty of
    # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
    # GNU General Public License for more details.
    # You should have received a copy of the GNU General Public License
    # along with this program; if not, write to the Free Software
    # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
    # Contributions by: Treviño (3v1n0) <[email protected]>, Ubuntu Packages
    # Much of this code is based on Beryl code, also licensed under the GPL.
    # This script will detect what options we need to pass to compiz to get it
    # started, and start a default plugin and possibly window decorator.
    COMPIZ_BIN_PATH="/usr/bin/" # For window decorators and compiz
    PLUGIN_PATH="/usr/lib/compiz/"
    GLXINFO="/usr/bin/glxinfo"
    KWIN="/usr/bin/kwin"
    METACITY="/usr/bin/metacity"
    XFWM="/usr/bin/xfwm"
    COMPIZ_NAME="compiz" # Final name for compiz (compiz.real)
    # For Xgl LD_PRELOAD
    LIBGL_NVIDIA="/usr/lib/nvidia/libGL.so.1.2.xlibmesa"
    LIBGL_FGLRX="/usr/lib/fglrx/libGL.so.1.2.xlibmesa"
    # Minimum amount of memory (in kilo bytes) that nVidia cards need
    # to be allowed to start
    # Set to 262144 to require 256MB
    NVIDIA_MEMORY="65536" # 64MB
    NVIDIA_SETTINGS="nvidia-settings" # Assume it's in the path by default
    # For detecting what driver is in use, the + is for one or more /'s
    XORG_DRIVER_PATH="/usr/lib/xorg/modules/drivers/+"
    FALLBACKWM="xterm"
    if [ x"$KDE_FULL_SESSION" = x"true" ]; then
    FALLBACKWM="${KWIN}";
    elif [ x"$GNOME_DESKTOP_SESSION_ID" != x"" ]; then
    FALLBACKWM="${METACITY}"
    elif xprop -root _DT_SAVE_MODE | grep ' = \"xfce4\"$' >/dev/null 2>&1; then
    FALLBACKWM="${XFWM}"
    fi
    FALLBACKWM_OPTIONS="--replace $@"
    # Driver whitelist
    WHITELIST="nvidia intel ati radeon i810 fglrx"
    # blacklist based on the pci ids
    # See http://wiki.compiz-fusion.org/Hardware/Blacklist for details
    #T=" 1002:5954 1002:5854 1002:5955" # ati rs480
    #T="$T 1002:4153" # ATI Rv350
    #T="$T 8086:2982 8086:2992 8086:29a2 8086:2a02 8086:2a12" # intel 965
    T="$T 8086:2a02 " # Intel GM965
    T="$T 8086:3577 8086:2562 " # Intel 830MG, 845G (LP: #259385)
    BLACKLIST_PCIIDS="$T"
    unset T
    COMPIZ_OPTIONS="--ignore-desktop-hints --replace"
    COMPIZ_PLUGINS="core"
    ENV=""
    # Use emerald by default if it exist
    USE_EMERALD="yes"
    # No indirect by default
    INDIRECT="no"
    # Default X.org log if xset q doesn't reveal it
    XORG_DEFAULT_LOG="/var/log/Xorg.0.log"
    # Set to yes to enable verbose
    VERBOSE="yes"
    # Echos the arguments if verbose
    verbose()
    if [ "x$VERBOSE" = "xyes" ]; then
    printf "$*"
    fi
    # abort script and run fallback windowmanager
    abort_with_fallback_wm()
    if [ "x$SKIP_CHECKS" = "xyes" ]; then
    verbose "SKIP_CHECKS is yes, so continuing despite problems.\n"
    return 0;
    fi
    if [ "x$CM_DRY" = "xyes" ]; then
    verbose "Dry run failed: Problems detected with 3D support.'n"
    exit 1;
    fi
    verbose "aborting and using fallback: $FALLBACKWM \n"
    if [ -x $FALLBACKWM ]; then
    exec $FALLBACKWM $FALLBACKWM_OPTIONS
    else
    printf "no $FALLBACKWM found, exiting\n"
    exit 1
    fi
    # Check if we run with the Software Rasterizer, this happens e.g.
    # when a second screen session is opened via f-u-a on intel
    check_software_rasterizer()
    verbose "Checking for Software Rasterizer: "
    if glxinfo 2> /dev/null | egrep -q '^OpenGL renderer string: Software Rasterizer' ; then
    verbose "present. \n";
    return 0;
    else
    verbose "Not present. \n"
    return 1;
    fi
    # Check for non power of two texture support
    check_npot_texture()
    verbose "Checking for non power of two support: "
    if glxinfo 2> /dev/null | egrep -q '(GL_ARB_texture_non_power_of_two|GL_NV_texture_rectangle|GL_EXT_texture_rectangle|GL_ARB_texture_rectangle)' ; then
    verbose "present. \n";
    return 0;
    else
    verbose "Not present. \n"
    return 1;
    fi
    # Check for presence of FBConfig
    check_fbconfig()
    verbose "Checking for FBConfig: "
    if [ "$INDIRECT" = "yes" ]; then
    $GLXINFO -i | grep -q GLX.*fbconfig
    FB=$?
    else
    $GLXINFO | grep -q GLX.*fbconfig
    FB=$?
    fi
    if [ $FB = "0" ]; then
    unset FB
    verbose "present. \n"
    return 0;
    else
    unset FB
    verbose "not present. \n"
    return 1;
    fi
    # Check for TFP
    check_tfp()
    verbose "Checking for texture_from_pixmap: "
    if [ $($GLXINFO 2>/dev/null | grep -c GLX_EXT_texture_from_pixmap) -gt 2 ] ; then
    verbose "present. \n"
    return 0;
    else
    verbose "not present. \n"
    if [ "$INDIRECT" = "yes" ]; then
    unset LIBGL_ALWAYS_INDIRECT
    INDIRECT="no"
    return 1;
    else
    verbose "Trying again with indirect rendering:\n";
    INDIRECT="yes"
    export LIBGL_ALWAYS_INDIRECT=1
    check_tfp;
    return $?
    fi
    fi
    # Check wether the composite extension is present
    check_composite()
    verbose "Checking for Composite extension: "
    if xdpyinfo -queryExtensions | grep -q Composite ; then
    verbose "present. \n";
    return 0;
    else
    verbose "not present. \n";
    return 1;
    fi
    # Detects if Xgl is running
    check_xgl()
    verbose "Checking for Xgl: "
    if xvinfo | grep -q Xgl ; then
    verbose "present. \n"
    return 0;
    else
    verbose "not present. \n"
    return 1;
    fi
    # Check if the nVidia card has enough video ram to make sense
    check_nvidia_memory()
    if [ ! -x "$NVIDIA_SETTINGS" ]; then
    return 0
    fi
    MEM=$(${NVIDIA_SETTINGS} -q VideoRam | egrep Attribute\ \'VideoRam\'\ .*: | cut -d: -f3 | sed 's/[^0-9]//g')
    if [ $MEM -lt $NVIDIA_MEMORY ]; then
    verbose "Less than ${NVIDIA_MEMORY}kb of memory and nVidia";
    return 1;
    fi
    return 0;
    # Check for existence if NV-GLX
    check_nvidia()
    if [ ! -z $NVIDIA_INTERNAL_TEST ]; then
    return $NVIDIA_INTERNAL_TEST;
    fi
    verbose "Checking for nVidia: "
    if xdpyinfo | grep -q NV-GLX ; then
    verbose "present. \n"
    NVIDIA_INTERNAL_TEST=0
    return 0;
    else
    verbose "not present. \n"
    NVIDIA_INTERNAL_TEST=1
    return 1;
    fi
    # Check if the max texture size is large enough compared to the resolution
    check_texture_size()
    # Check how many screens we've got and iterate over them
    N=$(xdpyinfo | grep -i "number of screens" | sed 's/.*[^0-9]//g')
    for i in $(seq 1 $N); do
    verbose "Checking screen $i"
    TEXTURE_LIMIT=$(glxinfo -l | grep GL_MAX_TEXTURE_SIZE | sed -n "$i s/^.*=[^0-9]//g p")
    RESOLUTION=$(xdpyinfo | grep -i dimensions: | sed -n -e "$i s/^ *dimensions: *\([0-9]*x[0-9]*\) pixels.*/\1/ p")
    VRES=$(echo $RESOLUTION | sed 's/.*x//')
    HRES=$(echo $RESOLUTION | sed 's/x.*//')
    verbose "Comparing resolution ($RESOLUTION) to maximum 3D texture size ($TEXTURE_LIMIT): ";
    if [ $VRES -gt $TEXTURE_LIMIT ] || [ $HRES -gt $TEXTURE_LIMIT ]; then
    verbose "Failed.\n"
    return 1;
    fi
    verbose "Passed.\n"
    done
    return 0
    # check driver whitelist
    running_under_whitelisted_driver()
    LOG=$(xset q|grep "Log file"|awk '{print $3}')
    if [ "$LOG" = "" ]; then
    verbose "xset q doesn't reveal the location of the log file. Using fallback $XORG_DEFAULT_LOG \n"
    LOG=$XORG_DEFAULT_LOG;
    fi
    if [ -z "$LOG" ];then
    verbose "AIEEEEH, no Log file found \n"
    verbose "$(xset q) \n"
    return 0
    fi
    for DRV in ${WHITELIST}; do
    if egrep -q "Loading ${XORG_DRIVER_PATH}${DRV}_drv\.so" $LOG &&
    ! egrep -q "Unloading ${XORG_DRIVER_PATH}${DRV}_drv\.so" $LOG;
    then
    return 0
    fi
    done
    verbose "No whitelisted driver found\n"
    return 1
    # check pciid blacklist
    have_blacklisted_pciid()
    OUTPUT=$(lspci -n)
    for ID in ${BLACKLIST_PCIIDS}; do
    if echo "$OUTPUT" | egrep -q "$ID"; then
    verbose "Blacklisted PCIID '$ID' found \n"
    return 0
    fi
    done
    OUTPUT=$(lspci -vn | grep -i VGA)
    verbose "Detected PCI ID for VGA: $OUTPUT\n"
    return 1
    build_env()
    if check_nvidia; then
    ENV="__GL_YIELD=NOTHING "
    fi
    if [ "$INDIRECT" = "yes" ]; then
    ENV="$ENV LIBGL_ALWAYS_INDIRECT=1 "
    fi
    if check_xgl; then
    if [ -f ${LIBGL_NVIDIA} ]; then
    ENV="$ENV LD_PRELOAD=${LIBGL_NVIDIA}"
    verbose "Enabling Xgl with nVidia drivers...\n"
    fi
    if [ -f ${LIBGL_FGLRX} ]; then
    ENV="$ENV LD_PRELOAD=${LIBGL_FGLRX}"
    verbose "Enabling Xgl with fglrx ATi drivers...\n"
    fi
    fi
    ENV="$ENV FROM_WRAPPER=yes"
    if [ -n "$ENV" ]; then
    export $ENV
    fi
    build_args()
    if [ "x$INDIRECT" = "xyes" ]; then
    COMPIZ_OPTIONS="$COMPIZ_OPTIONS --indirect-rendering "
    fi
    if [ ! -z "$DESKTOP_AUTOSTART_ID" ]; then
    COMPIZ_OPTIONS="$COMPIZ_OPTIONS --sm-client-id $DESKTOP_AUTOSTART_ID"
    fi
    if check_nvidia; then
    if [ "x$INDIRECT" != "xyes" ]; then
    COMPIZ_OPTIONS="$COMPIZ_OPTIONS --loose-binding"
    fi
    fi
    # Execution begins here.
    # Read configuration from XDG paths
    if [ -z "$XDG_CONFIG_DIRS" ]; then
    test -f /etc/xdg/compiz/compiz-manager && . /etc/xdg/compiz/compiz-manager
    for f in /etc/xdg/compiz/compiz-manager.d/*; do
    test -e $f && . $f
    done
    else
    OLD_IFS=$IFS
    IFS=:
    for CONFIG_DIR in $XDG_CONFIG_DIRS
    do
    test -f $CONFIG_DIR/compiz/compiz-manager && . $CONFIG_DIR/compiz/compiz-manager
    for f in $CONFIG_DIRS/compiz/compiz-manager.d/*; do
    test -e $f && . $f
    done
    done
    IFS=$OLD_IFS
    unset OLD_IFS
    fi
    if [ -z "$XDG_CONFIG_HOME" ]; then
    test -f $HOME/.config/compiz/compiz-manager && . $HOME/.config/compiz/compiz-manager
    else
    test -f $XDG_CONFIG_HOME/compiz/compiz-manager && . $XDG_CONFIG_HOME/compiz/compiz-manager
    fi
    # Don't use compiz when running the failsafe session
    if [ "x$GNOME_DESKTOP_SESSION_ID" = "xFailsafe" ]; then
    abort_with_fallback_wm
    fi
    if [ "x$LIBGL_ALWAYS_INDIRECT" = "x1" ]; then
    INDIRECT="yes";
    fi
    # if we run under Xgl, we can skip some tests here
    if ! check_xgl; then
    # if vesa or vga are in use, do not even try glxinfo (LP#119341)
    if ! running_under_whitelisted_driver || have_blacklisted_pciid; then
    abort_with_fallback_wm
    fi
    # check if we have the required bits to run compiz and if not,
    # fallback
    if ! check_tfp || ! check_npot_texture || ! check_composite || ! check_texture_size; then
    abort_with_fallback_wm
    fi
    # check if we run with software rasterizer and if so, bail out
    if check_software_rasterizer; then
    verbose "Software rasterizer detected, aborting"
    abort_with_fallback_wm
    fi
    if check_nvidia && ! check_nvidia_memory; then
    abort_with_fallback_wm
    fi
    if ! check_fbconfig; then
    abort_with_fallback_wm
    fi
    fi
    # load the ccp plugin if present and fallback to plain gconf if not
    if [ -f ${PLUGIN_PATH}libccp.so ]; then
    COMPIZ_PLUGINS="$COMPIZ_PLUGINS ccp"
    elif [ -f ${PLUGIN_PATH}libgconf.so ]; then
    COMPIZ_PLUGINS="$COMPIZ_PLUGINS glib gconf"
    fi
    # enable gnomecompat if we run under gnome
    if [ x"$GNOME_DESKTOP_SESSION_ID" != x"" ] && [ ! -e ~/.compiz-gnomecompat ]; then
    verbose "running under gnome seesion, checking for gnomecompat\n"
    if ! gconftool -g /apps/compiz/general/allscreens/options/active_plugins|grep -q gnomecompat; then
    verbose "adding missing gnomecompat\n"
    V=$(gconftool -g /apps/compiz/general/allscreens/options/active_plugins|sed s/mousepoll,/mousepoll,gnomecompat,/)
    if ! echo $V|grep -q gnomecompat; then
    verbose "can not add gnomecompat, reseting\n"
    gconftool --unset /apps/compiz/general/allscreens/options/active_plugins
    else
    gconftool -s /apps/compiz/general/allscreens/options/active_plugins --type list --list-type=string $V
    fi
    touch ~/.compiz-gnomecompat
    fi
    fi
    # get environment
    build_env
    build_args
    if [ "x$CM_DRY" = "xyes" ]; then
    verbose "Dry run finished: everything should work with regards to Compiz and 3D.\n"
    verbose "Execute: ${COMPIZ_BIN_PATH}${COMPIZ_NAME} $COMPIZ_OPTIONS "$@" $COMPIZ_PLUGINS \n"
    exit 0;
    fi
    ${COMPIZ_BIN_PATH}${COMPIZ_NAME} $COMPIZ_OPTIONS "$@" $COMPIZ_PLUGINS || exec $FALLBACKWM $FALLBACKWM_OPTIONS
    That's it so far.
    So again what i try to do is running compiz with metacity decorations.
    I hope someone can help me here,
    Mark.
    Last edited by markg85 (2009-06-28 00:26:04)

    whoops wrote:
    Wait, what, I thought metacity isn't as window decorator, it is a window manager, right? I don't really get what you're trying to do... maybe install compiz-decorator-gtk and use it instead of emerald?
    edit: aaah, yes, I think you're missing compiz-decorator-gtk, try that, look at fusion icon "window decorator" option again.
    Strange.. i was under the impression that pacman -S compiz-fusion would install GTK and QT decorators... guess not.
    This issue is fixed now. Running metacity decorations now WITH compiz.

  • MacBook Pro fan running constantly with no utilization

    Just got my boss's MacBook Pro (Retina, Mid 2012) model back from Apple after a GPU related repair (which appears resolved).  They replaced logic board amongst other things.
    As soon as I turn it on I hear the fan, quietly running.  If I close the lid, it runs for about 20 seconds then stops. This is not loud; they are not running full blast (that is a much different sound).  But I can hear it in a quiet room.  Owner of the laptop was complaining about fan noise before; I assumed he was stressing the CPU but now I can see what he was complaining about.
    Activity Monitor (with 'All Processes' selected), sorted by CPU, shows nothing running more than 1-2%, and 'Idle' at the bottom is showing about 99.65%.  So there are no runaway processes. The room (ambient temp) is about 66F (not overly hot). The laptop is on a tile counter - no obstacles to airflow. Same issue occurs on battery and wall power. Over a several hour period, I never hear the fan stop.
    I did an SMC reset (ctrl-opt-shift-Power) and this seems to have no effect (this seems to be the magic bullet for most of these issues, after tracking down runaway processes).
    So my question is - does anyone know what the design is - could it be that the fans are designed to run all the time on this model, but they are (supposed to be) super quiet and not audible at low RPM, and maybe these fans have been become noisy, therefore I'm hearing it?  Was this a specific design issue for this model of MacBook pro (with NVidia GPU)?

    Update.  I downloaded a nice free program called "Macs Fan Control" from MacUpdate. It shows me that I have two fans "Left Side" and "Right Side" and they are both running at the minimum RPM; the window shows Min RPMs as 2160 and 2000 (left/right), and the 'current' is 2161/2005 (changes all the time but very close to the minimum). Max RPM shows 5940/5499 (left/right).  "Control" is auto, meaning the program is not trying to control the speed.
    I tried setting the minimum below the values above (eg, I tried changing the minimum to 1,500) but it would not let me. I tried setting the minimums above the values shown, and it allowed me. There is obviously a 'safety' feature in the fan program to prevent slowing down the fans to a value below what is considered safe.
    I then installed the same program on my MacBook air.  I cannot hear any fan on my MacBook air, but - Macs Fan Control shows a single 'Exhaust' fan running at minimum value of 1200. If I press my ear hard against the bottom of the MacBook air, I can just about hear a faint, faint noise.
    So my theory now is - the fans are always running on every MacBook (Air, Pro, etc) - the issue is, how fast they run.  And, it would appear (from my MacBook Air experience) that the fans are generally quiet.
    I then used the program to speed up the left side fan; the noise grew significantly and was unpleasant. At 4,000 RPM it was a deep, throaty sound.  I then slowed it back down, and did the same to the right side fan; at 4,000 RPM it was a gentle 'whoosh' sound. SO ... this tells me the left side fan is messed up (bad bearings, etc).  I PRESUME the two fans are the same, and should sound 'similar'.  Would others agree with my assessment?

  • Running your memory the right way/ running 4 DIMM slots on P55 boards

    Dear Forumers,
    Lately there are a lot of questions, about motherboards from the P55 range not starting on first boot.
    This could be due to wrongly arranged memory DIMM's in your slots.
    Some people out there, like me, were convinced that you could choose either dualchannel.
    Well, its not the case.
    Like I was pointed out earlier, you must use a certain slot, otherwise the memory will not be detected properly.
    According to Intel specs, DIMM0, must always be populated.
    This means that to run dualchannel with only 2 DIMM's, that you must check your manual and look carefully which slot is for DIMM0.
    According to the manual, it will be slot DIMM1 on your board, but watch out, this is not the slot closest to cpu, on current MSI P55 boards, (CD-53, GD-41, GD-45, GD-55, GD-65, GD-80 and the Big Bang Trinergy), its the second slot from cpu.
    Picture of P55 mainboard:
    From a manual from a MSI P55 board:
    So for dualchannel with 2 sticks, you must populate the black slots, DIMM1 and DIMM3 and for single channel with one stick DIMM1 most be used.
    Please bear in mind that DIMM0 in Intel spec.sheets means DIMM1 on your board.
    The link to technical sheet from intel about : i7 8xx cpu's
    http://download.intel.com/design/processor/datashts/322164.pdf
    A short quote with the relevant data:
    Quote
    Rules for Populating Memory Slots
    In all modes, the frequency of system memory is the lowest frequency of all memory
    modules placed in the system, as determined through the SPD registers on the
    memory modules. The system memory controller supports one or two DIMM
    connectors per channel for unbuffered DIMMs. For dual-channel modes, both channels
    must have at least one DIMM connector populated and for single-channel mode only a
    single-channel may have one or more DIMM connectors populated.
    Note: DIMM0 must always be populated within any memory configuration. DIMM0 is the
    furthest DIMM within a channel and is identified by the CS#[1:0], ODT[1:0], and
    CKE[1:0] signals.
    For more info, please read datasheet
    Also, let me remind you that this goes for ALL P55 boards out there, its not just an MSI thing.
    This has to do with the fact that the memorycontroller now sits on die on the Lynnfield cpu's.
    Im hoping to end the debate, like I had (and I was wrong), about the fact that you should be able to use any channel, like you could on the S775 boards, you just cant anymore.
    Update 26 december 2009:
    Running all 4 DIMM slots with memorysticks
    It seems that a lot of people are having problems running with all memoryslots occupied, e.g. not booting, BSOD and other crazy stuff.
    If you have such problems try the following first, before running back to the store to swap stuff out.
    - Raise Vdimm to 1.65V, its still a save voltage for the board and this way the memory gets a little more power and in 99% of the cases, this will solve the issue.
    - Try booting/installing with one stick first in DIMM1 on the board  (see above).
    - If it boots/installs, let it go all the way till windows is done.
    - Turn off pc and add a second DIMM in DIMM slot 3, restart and let i boot all the way again in windows till its done.
    - Do the same again for DIMM2 and last DIMM4.
    We know its a bit of a hassle, but it worked for a lot of people, so be sure to try this before anything else.
    And again, its not just an MSI thing, there are more manufacturers out there with the same issues, this also has to do with the fact the memorycontroller now sits on die with cpu.
    I'll edit if new boards come out.
    --I made your images clickable
      Click the modify button to see how I did it.
    --Mike

    Upgrading Mother Board (P55-GD65 with i3 processor) BIOS [/b] from 1.3 to 1.6 corrected my Computer re-starting soon after the Boot sequence began.  Putting the four 2GB RAM in one at a time in the suggested order in sequence with the socket numbers fixed the problem earlier, but only for the next, one boot.  The problem then returned as long as all 4 DRAM were installed.  Raising the DRAM voltage did not improve things. 
    I used the Forum's program for flashing the new version of Bios using USB Flash Memory for boot into DOS.
    Thank you, DaLoona, for your post notifying me this had to do with the motherboard and was probably not a failure, but a "normal" occurance in certain conditions.  I was no longer inclined to return the board and perhaps end up with the same error in the replacement, and no longer worried about the rebooting doing damage. 
    In Bios Setup I had already reduced an entry to do with number of overclocking tries from 3 to 1 (the minimum choice) which reduced the number of re-boots to 1.

  • VSTS loadtest error while running Loadtest with Runsettings as No of test iterations , ERROR is : could not read result repository: unknown transaction id in results:

    Subject: VSTS loadtest error while running Loadtest with Runsettings as  No of test iterations ,  ERROR is :  could not read result repository: unknown transaction
    id in results:
    Hello All,
    I am facing the following error while running a loadtest (when i choose the scenario to be executed for No of test iterations). But the same loadtest with the Run duration for X minutes is running fine without any issues. 
    Any suggestions on the issue i am facing
    error is :
    could not read result repository: unknown transaction id in results:
    or
    could not read result repository: unknown request id in results: 
    Thanks
    Satish

    Hi Kotapati,
    >>Subject: VSTS loadtest error while running Loadtest with Runsettings as  No of test iterations ,  ERROR is :  could not read result repository: unknown transaction
    id in results:
    According to your description, you mean that when you run your load test using the Test Iterations way and then get the error message, am I right?
    If yes, please you try to close the VS, and then open this VS again. Then clean your load test project/solution and then re-build it, run your load test again check this issue again.
    In addition, I suggest you could try to create a new load test and then run it using Test Iterations way check if you get the issue for the specified load test or all load tests.
    If possible, I suggest you could share me simple load test for us so that we will further help you.
    You could upload your load test to OneDrive and then copy link here.
    Best Regards,
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • Photoshop CS6 keeps crashing. I am using a brand new IMAC, I have 16GB RAM recently updated as it was running slow with 8GB and lots of hardrive space. When it crashes, i lose all my presents and it changes my preferences, it also fails to save or produce

    Photoshop CS6 keeps crashing. I am using a brand new IMAC, I have 16GB RAM recently updated as it was running slow with 8GB and lots of hardrive space. When it crashes, i lose all my presents and it changes my preferences, it also fails to save or produce a recovered file despite settings asking it to do so every 5 mins now. When i try to report the problem, it says it has found an issue and gives me a link to a solution....but wont let me click on the link.... PLEASE HELP! It's killing my productivity.

    If the crash started right after you added RAM, it could be a bad Ram dimm. You can try this - change the amount of RAM in Photoshop to 4G, this should stop Photoshop from using the higher ram. If it doesn't crash, it's probably the ram. Or run a diagnostic app. You don't say when it crashes, what you're doing when it crashes - it there a pattern? Did it ever work on this computer? Did it work on your previous computer? Without a lot of data, it could be related to the new computer... What OS version? Did you recently update it? Have you updated Photoshop to the most recent update?
    Do you have any plug-ins loaded? Try restarting Photoshop, and immediately press & hold the shfit key to turn off plug-ins.

  • Why does the mouse 'run' to the lower right side of desktop and freeze when a SmartBoard is plugged into the USB port.  Running 10.8.5.   Sometimes the pointer has a cloud under it but it always freezes.

    I run SmartBoards connected to iMacs running 10.7 and 10.8 throughout my school.  On one of these computers the mouse has recently started freezing the minute a SmartBoard is plugged in to the USB port.  The mouse 'runs' to the bottom right side of the screen, a cloud often is under the pointer, and it is not longer interactive.  You can move the mouse upward a bit with the cloud following some of the time but it does not work.  Once the SmartBoard is unplugged the mouse works normally.  This particular computer worked fine with the SmartBoard until recenlty.  Any solutions or ideas?

    1. Reset the Pram and SMC
    http://support.apple.com/kb/ht3964
    http://support.apple.com/kb/ph14222
    If these don't relate to your computer a quick web search will get you details
    2. Run the Disk Utilty to verify the disk and then repair permissions.

  • I have a 4 yr. old iMac. I recently got a trojan on it that sent out emails to my address book. I got Norton Internet Security for Mac, and now my Mac is running slow, with way too many spinning beach balls of death. Was it a mistake to install Norton?

    I have a 4 yr. old iMac. I recently got a trojan on it that sent out emails to my address book. I got Norton Internet Security for Mac, and now my Mac is running slow, with way too many spinning beach balls of death. Was it a mistake to install Norton?

    yankeecat wrote:
    I have a 4 yr. old iMac. I recently got a trojan on it that sent out emails to my address book.
    There is no such Trojan or other malware known today that will do that using OS X nor has there ever been one. The most probable explanation is that somebody hacked into your e-mail account on the server, so you should change that password to something stronger right away. If it had come from your Mac then there would almost certainly be copies of those messages in your Sent Mail mailbox.

  • Firefox Silent updater will not work unless I launch Firefox.exe one time with Admin rights

    I am building a Firefox 17.0.4 ESR package to use for my Enterprise. Everything is working great except for the updater piece. I am using the configuration.ini file during the install with the command MaintenanceService=true turned on, and a mozilla.cfg file with updates enabled, pref("app.update.enabled", true). I am running the install both manually, and through SCCM with Admin rights, including the maintenance service. After the install runs, I open Firefox as a limited user and go to Help->About, and it says Updates are available at www.firefox.com, and that the browser is set to the ESR release channel.
    In all my troubleshooting, the only 2 sure ways I have found that make the auto updates work for a user were to run firefox.exe as an admin 1 time, or to install the base esr package as an admin after my install package. That will fix it for the logged in user only, but another user would run into the same issue. It appears that something is not installing correctly, but I cannot determine the cause.
    My install command is:
    Firefox Setup 17.0.3esr.exe /INI=%INST%\Configuration.ini

    In my organization, we have removed Admin rights from all users, but use a product that can elevate any .exe with create a policy for to run with Admin rights. We have a policy set for updater.exe and it does work for future updates, just not this first update after install until Firefox itself is run as Admin for the first time. My thought is that when Firefox and the Maintenance service are installed with Admin rights through SCCM, the maintenance service should have inherited rights from that install. Forgive me if I am wrong in my conclusion.

  • Sliding Window Table Partitioning Problems with RANGE RIGHT, SPLIT, MERGE using Multiple File Groups

    There is misleading information in two system views (sys.data_spaces & sys.destination_data_spaces) about the physical location of data after a partitioning MERGE and before an INDEX REBUILD operation on a partitioned table. In SQL Server 2012 SP1 CU6,
    the script below (SQLCMD mode, set DataDrive  & LogDrive variables  for the runtime environment) will create a test database with file groups and files to support a partitioned table. The partition function and scheme spread the test data across
    4 files groups, an empty partition, file group and file are maintained at the start and end of the range. A problem occurs after the SWITCH and MERGE RANGE operations, the views sys.data_spaces & sys.destination_data_spaces show the logical, not the physical,
    location of data.
    --=================================================================================
    -- PartitionLabSetup_RangeRight.sql
    -- 001. Create test database
    -- 002. Add file groups and files
    -- 003. Create partition function and schema
    -- 004. Create and populate a test table
    --=================================================================================
    USE [master]
    GO
    -- 001 - Create Test Database
    :SETVAR DataDrive "D:\SQL\Data\"
    :SETVAR LogDrive "D:\SQL\Logs\"
    :SETVAR DatabaseName "workspace"
    :SETVAR TableName "TestTable"
    -- Drop if exists and create Database
    IF DATABASEPROPERTYEX(N'$(databasename)','Status') IS NOT NULL
    BEGIN
    ALTER DATABASE $(DatabaseName) SET SINGLE_USER WITH ROLLBACK IMMEDIATE
    DROP DATABASE $(DatabaseName)
    END
    CREATE DATABASE $(DatabaseName)
    ON
    ( NAME = $(DatabaseName)_data,
    FILENAME = N'$(DataDrive)$(DatabaseName)_data.mdf',
    SIZE = 10,
    MAXSIZE = 500,
    FILEGROWTH = 5 )
    LOG ON
    ( NAME = $(DatabaseName)_log,
    FILENAME = N'$(LogDrive)$(DatabaseName).ldf',
    SIZE = 5MB,
    MAXSIZE = 5000MB,
    FILEGROWTH = 5MB ) ;
    GO
    -- 002. Add file groups and files
    --:SETVAR DatabaseName "workspace"
    --:SETVAR TableName "TestTable"
    --:SETVAR DataDrive "D:\SQL\Data\"
    --:SETVAR LogDrive "D:\SQL\Logs\"
    DECLARE @nSQL NVARCHAR(2000) ;
    DECLARE @x INT = 1;
    WHILE @x <= 6
    BEGIN
    SELECT @nSQL =
    'ALTER DATABASE $(DatabaseName)
    ADD FILEGROUP $(TableName)_fg' + RTRIM(CAST(@x AS CHAR(5))) + ';
    ALTER DATABASE $(DatabaseName)
    ADD FILE
    NAME= ''$(TableName)_f' + CAST(@x AS CHAR(5)) + ''',
    FILENAME = ''$(DataDrive)\$(TableName)_f' + RTRIM(CAST(@x AS CHAR(5))) + '.ndf''
    TO FILEGROUP $(TableName)_fg' + RTRIM(CAST(@x AS CHAR(5))) + ';'
    EXEC sp_executeSQL @nSQL;
    SET @x = @x + 1;
    END
    -- 003. Create partition function and schema
    --:SETVAR TableName "TestTable"
    --:SETVAR DatabaseName "workspace"
    USE $(DatabaseName);
    CREATE PARTITION FUNCTION $(TableName)_func (int)
    AS RANGE RIGHT FOR VALUES
    0,
    15,
    30,
    45,
    60
    CREATE PARTITION SCHEME $(TableName)_scheme
    AS
    PARTITION $(TableName)_func
    TO
    $(TableName)_fg1,
    $(TableName)_fg2,
    $(TableName)_fg3,
    $(TableName)_fg4,
    $(TableName)_fg5,
    $(TableName)_fg6
    -- Create TestTable
    --:SETVAR TableName "TestTable"
    --:SETVAR BackupDrive "D:\SQL\Backups\"
    --:SETVAR DatabaseName "workspace"
    CREATE TABLE [dbo].$(TableName)(
    [Partition_PK] [int] NOT NULL,
    [GUID_PK] [uniqueidentifier] NOT NULL,
    [CreateDate] [datetime] NULL,
    [CreateServer] [nvarchar](50) NULL,
    [RandomNbr] [int] NULL,
    CONSTRAINT [PK_$(TableName)] PRIMARY KEY CLUSTERED
    [Partition_PK] ASC,
    [GUID_PK] ASC
    ) ON $(TableName)_scheme(Partition_PK)
    ) ON $(TableName)_scheme(Partition_PK)
    ALTER TABLE [dbo].$(TableName) ADD CONSTRAINT [DF_$(TableName)_GUID_PK] DEFAULT (newid()) FOR [GUID_PK]
    ALTER TABLE [dbo].$(TableName) ADD CONSTRAINT [DF_$(TableName)_CreateDate] DEFAULT (getdate()) FOR [CreateDate]
    ALTER TABLE [dbo].$(TableName) ADD CONSTRAINT [DF_$(TableName)_CreateServer] DEFAULT (@@servername) FOR [CreateServer]
    -- 004. Create and populate a test table
    -- Load TestTable Data - Seconds 0-59 are used as the Partitoning Key
    --:SETVAR TableName "TestTable"
    SET NOCOUNT ON;
    DECLARE @Now DATETIME = GETDATE()
    WHILE @Now > DATEADD(minute,-1,GETDATE())
    BEGIN
    INSERT INTO [dbo].$(TableName)
    ([Partition_PK]
    ,[RandomNbr])
    VALUES
    DATEPART(second,GETDATE())
    ,ROUND((RAND() * 100),0)
    END
    -- Confirm table partitioning - http://lextonr.wordpress.com/tag/sys-destination_data_spaces/
    SELECT
    N'DatabaseName' = DB_NAME()
    , N'SchemaName' = s.name
    , N'TableName' = o.name
    , N'IndexName' = i.name
    , N'IndexType' = i.type_desc
    , N'PartitionScheme' = ps.name
    , N'DataSpaceName' = ds.name
    , N'DataSpaceType' = ds.type_desc
    , N'PartitionFunction' = pf.name
    , N'PartitionNumber' = dds.destination_id
    , N'BoundaryValue' = prv.value
    , N'RightBoundary' = pf.boundary_value_on_right
    , N'PartitionFileGroup' = ds2.name
    , N'RowsOfData' = p.[rows]
    FROM
    sys.objects AS o
    INNER JOIN sys.schemas AS s
    ON o.[schema_id] = s.[schema_id]
    INNER JOIN sys.partitions AS p
    ON o.[object_id] = p.[object_id]
    INNER JOIN sys.indexes AS i
    ON p.[object_id] = i.[object_id]
    AND p.index_id = i.index_id
    INNER JOIN sys.data_spaces AS ds
    ON i.data_space_id = ds.data_space_id
    INNER JOIN sys.partition_schemes AS ps
    ON ds.data_space_id = ps.data_space_id
    INNER JOIN sys.partition_functions AS pf
    ON ps.function_id = pf.function_id
    LEFT OUTER JOIN sys.partition_range_values AS prv
    ON pf.function_id = prv.function_id
    AND p.partition_number = prv.boundary_id
    LEFT OUTER JOIN sys.destination_data_spaces AS dds
    ON ps.data_space_id = dds.partition_scheme_id
    AND p.partition_number = dds.destination_id
    LEFT OUTER JOIN sys.data_spaces AS ds2
    ON dds.data_space_id = ds2.data_space_id
    ORDER BY
    DatabaseName
    ,SchemaName
    ,TableName
    ,IndexName
    ,PartitionNumber
    --=================================================================================
    -- SECTION 2 - SWITCH OUT
    -- 001 - Create TestTableOut
    -- 002 - Switch out partition in range 0-14
    -- 003 - Merge range 0 -29
    -- 001. TestTableOut
    :SETVAR TableName "TestTable"
    IF OBJECT_ID('dbo.$(TableName)Out') IS NOT NULL
    DROP TABLE [dbo].[$(TableName)Out]
    CREATE TABLE [dbo].[$(TableName)Out](
    [Partition_PK] [int] NOT NULL,
    [GUID_PK] [uniqueidentifier] NOT NULL,
    [CreateDate] [datetime] NULL,
    [CreateServer] [nvarchar](50) NULL,
    [RandomNbr] [int] NULL,
    CONSTRAINT [PK_$(TableName)Out] PRIMARY KEY CLUSTERED
    [Partition_PK] ASC,
    [GUID_PK] ASC
    ) ON $(TableName)_fg2;
    GO
    -- 002 - Switch out partition in range 0-14
    --:SETVAR TableName "TestTable"
    ALTER TABLE dbo.$(TableName)
    SWITCH PARTITION 2 TO dbo.$(TableName)Out;
    -- 003 - Merge range 0 - 29
    --:SETVAR TableName "TestTable"
    ALTER PARTITION FUNCTION $(TableName)_func()
    MERGE RANGE (15);
    -- Confirm table partitioning
    -- Original source of this query - http://lextonr.wordpress.com/tag/sys-destination_data_spaces/
    SELECT
    N'DatabaseName' = DB_NAME()
    , N'SchemaName' = s.name
    , N'TableName' = o.name
    , N'IndexName' = i.name
    , N'IndexType' = i.type_desc
    , N'PartitionScheme' = ps.name
    , N'DataSpaceName' = ds.name
    , N'DataSpaceType' = ds.type_desc
    , N'PartitionFunction' = pf.name
    , N'PartitionNumber' = dds.destination_id
    , N'BoundaryValue' = prv.value
    , N'RightBoundary' = pf.boundary_value_on_right
    , N'PartitionFileGroup' = ds2.name
    , N'RowsOfData' = p.[rows]
    FROM
    sys.objects AS o
    INNER JOIN sys.schemas AS s
    ON o.[schema_id] = s.[schema_id]
    INNER JOIN sys.partitions AS p
    ON o.[object_id] = p.[object_id]
    INNER JOIN sys.indexes AS i
    ON p.[object_id] = i.[object_id]
    AND p.index_id = i.index_id
    INNER JOIN sys.data_spaces AS ds
    ON i.data_space_id = ds.data_space_id
    INNER JOIN sys.partition_schemes AS ps
    ON ds.data_space_id = ps.data_space_id
    INNER JOIN sys.partition_functions AS pf
    ON ps.function_id = pf.function_id
    LEFT OUTER JOIN sys.partition_range_values AS prv
    ON pf.function_id = prv.function_id
    AND p.partition_number = prv.boundary_id
    LEFT OUTER JOIN sys.destination_data_spaces AS dds
    ON ps.data_space_id = dds.partition_scheme_id
    AND p.partition_number = dds.destination_id
    LEFT OUTER JOIN sys.data_spaces AS ds2
    ON dds.data_space_id = ds2.data_space_id
    ORDER BY
    DatabaseName
    ,SchemaName
    ,TableName
    ,IndexName
    ,PartitionNumber  
    The table below shows the results of the ‘Confirm Table Partitioning’ query, before and after the MERGE.
    The T-SQL code below illustrates the problem.
    -- PartitionLab_RangeRight
    USE workspace;
    DROP TABLE dbo.TestTableOut;
    USE master;
    ALTER DATABASE workspace
    REMOVE FILE TestTable_f3 ;
    -- ERROR
    --Msg 5042, Level 16, State 1, Line 1
    --The file 'TestTable_f3 ' cannot be removed because it is not empty.
    ALTER DATABASE workspace
    REMOVE FILE TestTable_f2 ;
    -- Works surprisingly!!
    use workspace;
    ALTER INDEX [PK_TestTable] ON [dbo].[TestTable] REBUILD PARTITION = 2;
    --Msg 622, Level 16, State 3, Line 2
    --The filegroup "TestTable_fg2" has no files assigned to it. Tables, indexes, text columns, ntext columns, and image columns cannot be populated on this filegroup until a file is added.
    --The statement has been terminated.
    If you run ALTER INDEX REBUILD before trying to remove files from File Group 3, it works. Rerun the database setup script then the code below.
    -- RANGE RIGHT
    -- Rerun PartitionLabSetup_RangeRight.sql before the code below
    USE workspace;
    DROP TABLE dbo.TestTableOut;
    ALTER INDEX [PK_TestTable] ON [dbo].[TestTable] REBUILD PARTITION = 2;
    USE master;
    ALTER DATABASE workspace
    REMOVE FILE TestTable_f3;
    -- Works as expected!!
    The file in File Group 2 appears to contain data but it can be dropped. Although the system views are reporting the data in File Group 2, it still physically resides in File Group 3 and isn’t moved until the index is rebuilt. The RANGE RIGHT function means
    the left file group (File Group 2) is retained when splitting ranges.
    RANGE LEFT would have retained the data in File Group 3 where it already resided, no INDEX REBUILD is necessary to effectively complete the MERGE operation. The script below implements the same partitioning strategy (data distribution between partitions)
    on the test table but uses different boundary definitions and RANGE LEFT.
    --=================================================================================
    -- PartitionLabSetup_RangeLeft.sql
    -- 001. Create test database
    -- 002. Add file groups and files
    -- 003. Create partition function and schema
    -- 004. Create and populate a test table
    --=================================================================================
    USE [master]
    GO
    -- 001 - Create Test Database
    :SETVAR DataDrive "D:\SQL\Data\"
    :SETVAR LogDrive "D:\SQL\Logs\"
    :SETVAR DatabaseName "workspace"
    :SETVAR TableName "TestTable"
    -- Drop if exists and create Database
    IF DATABASEPROPERTYEX(N'$(databasename)','Status') IS NOT NULL
    BEGIN
    ALTER DATABASE $(DatabaseName) SET SINGLE_USER WITH ROLLBACK IMMEDIATE
    DROP DATABASE $(DatabaseName)
    END
    CREATE DATABASE $(DatabaseName)
    ON
    ( NAME = $(DatabaseName)_data,
    FILENAME = N'$(DataDrive)$(DatabaseName)_data.mdf',
    SIZE = 10,
    MAXSIZE = 500,
    FILEGROWTH = 5 )
    LOG ON
    ( NAME = $(DatabaseName)_log,
    FILENAME = N'$(LogDrive)$(DatabaseName).ldf',
    SIZE = 5MB,
    MAXSIZE = 5000MB,
    FILEGROWTH = 5MB ) ;
    GO
    -- 002. Add file groups and files
    --:SETVAR DatabaseName "workspace"
    --:SETVAR TableName "TestTable"
    --:SETVAR DataDrive "D:\SQL\Data\"
    --:SETVAR LogDrive "D:\SQL\Logs\"
    DECLARE @nSQL NVARCHAR(2000) ;
    DECLARE @x INT = 1;
    WHILE @x <= 6
    BEGIN
    SELECT @nSQL =
    'ALTER DATABASE $(DatabaseName)
    ADD FILEGROUP $(TableName)_fg' + RTRIM(CAST(@x AS CHAR(5))) + ';
    ALTER DATABASE $(DatabaseName)
    ADD FILE
    NAME= ''$(TableName)_f' + CAST(@x AS CHAR(5)) + ''',
    FILENAME = ''$(DataDrive)\$(TableName)_f' + RTRIM(CAST(@x AS CHAR(5))) + '.ndf''
    TO FILEGROUP $(TableName)_fg' + RTRIM(CAST(@x AS CHAR(5))) + ';'
    EXEC sp_executeSQL @nSQL;
    SET @x = @x + 1;
    END
    -- 003. Create partition function and schema
    --:SETVAR TableName "TestTable"
    --:SETVAR DatabaseName "workspace"
    USE $(DatabaseName);
    CREATE PARTITION FUNCTION $(TableName)_func (int)
    AS RANGE LEFT FOR VALUES
    -1,
    14,
    29,
    44,
    59
    CREATE PARTITION SCHEME $(TableName)_scheme
    AS
    PARTITION $(TableName)_func
    TO
    $(TableName)_fg1,
    $(TableName)_fg2,
    $(TableName)_fg3,
    $(TableName)_fg4,
    $(TableName)_fg5,
    $(TableName)_fg6
    -- Create TestTable
    --:SETVAR TableName "TestTable"
    --:SETVAR BackupDrive "D:\SQL\Backups\"
    --:SETVAR DatabaseName "workspace"
    CREATE TABLE [dbo].$(TableName)(
    [Partition_PK] [int] NOT NULL,
    [GUID_PK] [uniqueidentifier] NOT NULL,
    [CreateDate] [datetime] NULL,
    [CreateServer] [nvarchar](50) NULL,
    [RandomNbr] [int] NULL,
    CONSTRAINT [PK_$(TableName)] PRIMARY KEY CLUSTERED
    [Partition_PK] ASC,
    [GUID_PK] ASC
    ) ON $(TableName)_scheme(Partition_PK)
    ) ON $(TableName)_scheme(Partition_PK)
    ALTER TABLE [dbo].$(TableName) ADD CONSTRAINT [DF_$(TableName)_GUID_PK] DEFAULT (newid()) FOR [GUID_PK]
    ALTER TABLE [dbo].$(TableName) ADD CONSTRAINT [DF_$(TableName)_CreateDate] DEFAULT (getdate()) FOR [CreateDate]
    ALTER TABLE [dbo].$(TableName) ADD CONSTRAINT [DF_$(TableName)_CreateServer] DEFAULT (@@servername) FOR [CreateServer]
    -- 004. Create and populate a test table
    -- Load TestTable Data - Seconds 0-59 are used as the Partitoning Key
    --:SETVAR TableName "TestTable"
    SET NOCOUNT ON;
    DECLARE @Now DATETIME = GETDATE()
    WHILE @Now > DATEADD(minute,-1,GETDATE())
    BEGIN
    INSERT INTO [dbo].$(TableName)
    ([Partition_PK]
    ,[RandomNbr])
    VALUES
    DATEPART(second,GETDATE())
    ,ROUND((RAND() * 100),0)
    END
    -- Confirm table partitioning - http://lextonr.wordpress.com/tag/sys-destination_data_spaces/
    SELECT
    N'DatabaseName' = DB_NAME()
    , N'SchemaName' = s.name
    , N'TableName' = o.name
    , N'IndexName' = i.name
    , N'IndexType' = i.type_desc
    , N'PartitionScheme' = ps.name
    , N'DataSpaceName' = ds.name
    , N'DataSpaceType' = ds.type_desc
    , N'PartitionFunction' = pf.name
    , N'PartitionNumber' = dds.destination_id
    , N'BoundaryValue' = prv.value
    , N'RightBoundary' = pf.boundary_value_on_right
    , N'PartitionFileGroup' = ds2.name
    , N'RowsOfData' = p.[rows]
    FROM
    sys.objects AS o
    INNER JOIN sys.schemas AS s
    ON o.[schema_id] = s.[schema_id]
    INNER JOIN sys.partitions AS p
    ON o.[object_id] = p.[object_id]
    INNER JOIN sys.indexes AS i
    ON p.[object_id] = i.[object_id]
    AND p.index_id = i.index_id
    INNER JOIN sys.data_spaces AS ds
    ON i.data_space_id = ds.data_space_id
    INNER JOIN sys.partition_schemes AS ps
    ON ds.data_space_id = ps.data_space_id
    INNER JOIN sys.partition_functions AS pf
    ON ps.function_id = pf.function_id
    LEFT OUTER JOIN sys.partition_range_values AS prv
    ON pf.function_id = prv.function_id
    AND p.partition_number = prv.boundary_id
    LEFT OUTER JOIN sys.destination_data_spaces AS dds
    ON ps.data_space_id = dds.partition_scheme_id
    AND p.partition_number = dds.destination_id
    LEFT OUTER JOIN sys.data_spaces AS ds2
    ON dds.data_space_id = ds2.data_space_id
    ORDER BY
    DatabaseName
    ,SchemaName
    ,TableName
    ,IndexName
    ,PartitionNumber
    --=================================================================================
    -- SECTION 2 - SWITCH OUT
    -- 001 - Create TestTableOut
    -- 002 - Switch out partition in range 0-14
    -- 003 - Merge range 0 -29
    -- 001. TestTableOut
    :SETVAR TableName "TestTable"
    IF OBJECT_ID('dbo.$(TableName)Out') IS NOT NULL
    DROP TABLE [dbo].[$(TableName)Out]
    CREATE TABLE [dbo].[$(TableName)Out](
    [Partition_PK] [int] NOT NULL,
    [GUID_PK] [uniqueidentifier] NOT NULL,
    [CreateDate] [datetime] NULL,
    [CreateServer] [nvarchar](50) NULL,
    [RandomNbr] [int] NULL,
    CONSTRAINT [PK_$(TableName)Out] PRIMARY KEY CLUSTERED
    [Partition_PK] ASC,
    [GUID_PK] ASC
    ) ON $(TableName)_fg2;
    GO
    -- 002 - Switch out partition in range 0-14
    --:SETVAR TableName "TestTable"
    ALTER TABLE dbo.$(TableName)
    SWITCH PARTITION 2 TO dbo.$(TableName)Out;
    -- 003 - Merge range 0 - 29
    :SETVAR TableName "TestTable"
    ALTER PARTITION FUNCTION $(TableName)_func()
    MERGE RANGE (14);
    -- Confirm table partitioning
    -- Original source of this query - http://lextonr.wordpress.com/tag/sys-destination_data_spaces/
    SELECT
    N'DatabaseName' = DB_NAME()
    , N'SchemaName' = s.name
    , N'TableName' = o.name
    , N'IndexName' = i.name
    , N'IndexType' = i.type_desc
    , N'PartitionScheme' = ps.name
    , N'DataSpaceName' = ds.name
    , N'DataSpaceType' = ds.type_desc
    , N'PartitionFunction' = pf.name
    , N'PartitionNumber' = dds.destination_id
    , N'BoundaryValue' = prv.value
    , N'RightBoundary' = pf.boundary_value_on_right
    , N'PartitionFileGroup' = ds2.name
    , N'RowsOfData' = p.[rows]
    FROM
    sys.objects AS o
    INNER JOIN sys.schemas AS s
    ON o.[schema_id] = s.[schema_id]
    INNER JOIN sys.partitions AS p
    ON o.[object_id] = p.[object_id]
    INNER JOIN sys.indexes AS i
    ON p.[object_id] = i.[object_id]
    AND p.index_id = i.index_id
    INNER JOIN sys.data_spaces AS ds
    ON i.data_space_id = ds.data_space_id
    INNER JOIN sys.partition_schemes AS ps
    ON ds.data_space_id = ps.data_space_id
    INNER JOIN sys.partition_functions AS pf
    ON ps.function_id = pf.function_id
    LEFT OUTER JOIN sys.partition_range_values AS prv
    ON pf.function_id = prv.function_id
    AND p.partition_number = prv.boundary_id
    LEFT OUTER JOIN sys.destination_data_spaces AS dds
    ON ps.data_space_id = dds.partition_scheme_id
    AND p.partition_number = dds.destination_id
    LEFT OUTER JOIN sys.data_spaces AS ds2
    ON dds.data_space_id = ds2.data_space_id
    ORDER BY
    DatabaseName
    ,SchemaName
    ,TableName
    ,IndexName
    ,PartitionNumber
    The table below shows the results of the ‘Confirm Table Partitioning’ query, before and after the MERGE.
    The data in the File and File Group to be dropped (File Group 2) has already been switched out; File Group 3 contains the data so no index rebuild is needed to move data and complete the MERGE.
    RANGE RIGHT would not be a problem in a ‘Sliding Window’ if the same file group is used for all partitions, when they are created and dropped it introduces a dependency on full index rebuilds. Larger tables are typically partitioned and a full index rebuild
    might be an expensive operation. I’m not sure how a RANGE RIGHT partitioning strategy could be implemented, with an ascending partitioning key, using multiple file groups without having to move data. Using a single file group (multiple files) for all partitions
    within a table would avoid physically moving data between file groups; no index rebuild would be necessary to complete a MERGE and system views would accurately reflect the physical location of data. 
    If a RANGE RIGHT partition function is used, the data is physically in the wrong file group after the MERGE assuming a typical ascending partitioning key, and the 'Data Spaces' system views might be misleading. Thanks to Manuj and Chris for a lot of help
    investigating this.
    NOTE 10/03/2014 - The solution
    The solution is so easy it's embarrassing, I was using the wrong boundary points for the MERGE (both RANGE LEFT & RANGE RIGHT) to get rid of historic data.
    -- Wrong Boundary Point Range Right
    --ALTER PARTITION FUNCTION $(TableName)_func()
    --MERGE RANGE (15);
    -- Wrong Boundary Point Range Left
    --ALTER PARTITION FUNCTION $(TableName)_func()
    --MERGE RANGE (14);
    -- Correct Boundary Pounts for MERGE
    ALTER PARTITION FUNCTION $(TableName)_func()
    MERGE RANGE (0); -- or -1 for RANGE LEFT
    The empty, switched out partition (on File Group 2) is then MERGED with the empty partition maintained at the start of the range and no data movement is necessary. I retract the suggestion that a problem exists with RANGE RIGHT Sliding Windows using multiple
    file groups and apologize :-)

    Hi Paul Brewer,
    Thanks for your post and glad to hear that the issue is resolved. It is kind of you post a reply to share your solution. That way, other community members could benefit from your sharing.
    Regards.
    Sofiya Li
    Sofiya Li
    TechNet Community Support

  • Unable to interact with Flash content when running Firefox with restricted user

    When running Firefox with limited Windows user on Windows XP the Flash elements are displayed, the content that is set to auto-play does so even, but the flash area doesn't receive any mouse input: e.g. when I right click in the area instead of the flash context menu I get the browser context menu as if the flash plug-in wasn't even there. The exact same page on the exact same computer but with Administrator user works as expected: can press buttons, interact with flash controls and the context menu upon right-click is of course the flash one. This behavior occurs even if I disable all add-ons.

    Try uninstalling your sound card driver in Device Manager and reboot your PC.

Maybe you are looking for