copy from : http://geekswithblogs.net/bjackett/archive/2011/03/25/powershell-script-to-display-all-sharepoint-site-collection-administrators-in.aspx
=======================================================================
$siteUrl = Read-Host "Enter Site URL"
$rootSite = New-Object Microsoft.SharePoint.SPSite($siteUrl)
$spWebApp = $rootSite.WebApplication
foreach($site in $spWebApp.Sites)
{
foreach($siteAdmin in $site.RootWeb.SiteAdministrators)
{
Write-Host "$($siteAdmin.ParentWeb.Url) - $($siteAdmin.DisplayName)"
}
$site.Dispose()
}
========================================================================
keep track and sharing on my sharepoint knowledge :) nice to meet you all
which country user step here?
Tag Cloud
MOSS
(47)
SharePoint 2007
(37)
SharePoint 2013
(31)
SharePoint 2010
(23)
MOSS admin
(17)
PowerShell
(17)
admin
(17)
developer
(16)
List
(15)
WSS
(14)
sql query
(14)
MOSS SP2
(13)
end user
(11)
scripting
(11)
wss V3
(11)
permission
(10)
sql
(9)
Moss issue
(8)
search
(8)
database
(7)
RBS
(6)
Service Pack
(6)
reportadmin
(6)
workflow
(6)
CU
(5)
Excel
(5)
Patch
(5)
client object model
(5)
Client Code
(4)
Command
(4)
Cumulative Updates
(4)
IIS
(4)
SharePoint 2019
(4)
SharePoint designer
(4)
office 365
(4)
stsadm
(4)
user porfile
(4)
ASP.NET
(3)
Content Database
(3)
Groove
(3)
Host Named Site Collections (HNSC)
(3)
SharePoint 2016
(3)
Tutorial
(3)
alert
(3)
authentication
(3)
batch file
(3)
codeplex
(3)
domain
(3)
error
(3)
incomming email
(3)
issue
(3)
restore
(3)
upload
(3)
Caching
(2)
DocAve 6
(2)
Folder
(2)
Index
(2)
Internet
(2)
My Site Cleanup Job
(2)
My Sites
(2)
News
(2)
People Picker
(2)
Share Document
(2)
SharePoint admin
(2)
View
(2)
Web Development with ASP.NET
(2)
add user
(2)
audit
(2)
coding
(2)
column
(2)
deploy solution
(2)
download
(2)
enumsites
(2)
exam
(2)
export
(2)
june CU
(2)
load balance
(2)
mySites
(2)
network
(2)
orphan site
(2)
performance
(2)
profile
(2)
project server
(2)
query
(2)
security
(2)
server admin
(2)
theme
(2)
timer job
(2)
training
(2)
web master
(2)
web.config
(2)
wsp
(2)
70-346
(1)
70-630
(1)
AAM
(1)
Anonymous
(1)
Approval
(1)
AvePoint
(1)
Cerificate
(1)
Consultants
(1)
Content Deployment
(1)
Content Type
(1)
DOS
(1)
Document Library
(1)
Drive Sapce
(1)
Excel Services
(1)
Export to Excel
(1)
Feature
(1)
GAC
(1)
Get-SPContentDatabase
(1)
Get-WmiObject
(1)
HTML calculated column
(1)
ISA2006
(1)
IT Knowledge
(1)
ITIL
(1)
Install
(1)
Link
(1)
MCTS
(1)
Macro
(1)
Masking
(1)
Migration
(1)
NLBS
(1)
Nintex
(1)
Office
(1)
Open with Explorer
(1)
ROIScan.vbs
(1)
Reporting Services
(1)
SPDisposeCheck.exe
(1)
SQL Instance name
(1)
SSRS
(1)
Sandbox
(1)
SharePoint Online
(1)
SharePoint farm
(1)
Shared Services Administration
(1)
Site Collection Owner
(1)
Site template
(1)
Skype for business
(1)
Steelhead
(1)
Teams
(1)
URLSCAN
(1)
VLOOKUP
(1)
WSS SP2
(1)
XCOPY
(1)
abnormal incident
(1)
admi
(1)
app
(1)
application pool
(1)
aspx
(1)
availabilty
(1)
backup
(1)
binding
(1)
blob
(1)
branding sharepoint
(1)
cache
(1)
calendar
(1)
change password
(1)
connection
(1)
copy file
(1)
counter
(1)
crawl
(1)
custom list
(1)
domain security group
(1)
event
(1)
excel 2013
(1)
facebook
(1)
filter
(1)
fun
(1)
group
(1)
iis log
(1)
import
(1)
import list
(1)
improment
(1)
interview
(1)
keberos
(1)
licensing
(1)
log in
(1)
metada
(1)
migrate
(1)
mossrap
(1)
notepad++
(1)
onedrive for business
(1)
operation
(1)
owa
(1)
process
(1)
publishing feature
(1)
resource
(1)
send email
(1)
size
(1)
sps2003
(1)
sql201
(1)
sql2012
(1)
sub sites
(1)
system
(1)
table
(1)
task list
(1)
today date
(1)
trial
(1)
vbs
(1)
video
(1)
web part
(1)
web server
(1)
widget
(1)
windows 2008
(1)
windows 2012 R2
(1)
windows Azura
(1)
windows account
(1)
windows2012
(1)
wmi
(1)
Friday, August 14, 2015
Wednesday, August 12, 2015
The script appears to run outside administrator context
Scenario :
Error message :
- Running ROIScan.vbs and show the error message below
- Running PowerShell script check the serrver hard disk space unable to remote in
Error message :
- ROIScan.vbs : The script appears to run outside administrator context
- PowerShelll : Get-WmiObject : Not found
Solution : copy from here
1. winmgmt /verifyrepository
- Got error Repository inconsistent
2. winmgmt /salvagerepository
- Once successful everything started working fine
/verifyrepository []
Performs a consistency check on the WMI repository. When you add the
/verifyrepository switch without the argument, then the live
repository currently used by WMI is verified. When you specify the path
argument, you can verify any saved copy of the repository. In this
case, the path argument should contain the full path to the saved
repository copy. The saved repository should be a copy of the entire
repository folder.
/salvagerepository
Performs a consistency check on the WMI repository, and if an
inconsistency is detected, rebuilds the repository. The content of the
inconsistent repository is merged into the rebuilt repository, if it
can be read. The salvage operation always works with the repository
that the WMI service is currently using. MOF files that contain the
#pragma autorecover preprocessor statement are restored to the
repository.
1. winmgmt /verifyrepository
- Got error Repository inconsistent
2. winmgmt /salvagerepository
- Once successful everything started working fine
/verifyrepository [
Performs a consistency check on the WMI repository. When you add the
/verifyrepository switch without the
repository currently used by WMI is verified. When you specify the path
argument, you can verify any saved copy of the repository. In this
case, the path argument should contain the full path to the saved
repository copy. The saved repository should be a copy of the entire
repository folder.
/salvagerepository
Performs a consistency check on the WMI repository, and if an
inconsistency is detected, rebuilds the repository. The content of the
inconsistent repository is merged into the rebuilt repository, if it
can be read. The salvage operation always works with the repository
that the WMI service is currently using. MOF files that contain the
#pragma autorecover preprocessor statement are restored to the
repository.
Tuesday, August 11, 2015
PowerShell Script : copy file to multiple target Computer/Server
Scenario to be done : Copy 4 file (ROIScan.vbs ,MspFixUp.vbs , wiCollectFiles.vbs, run fixup.txt) to target server.
target server list keep at "C:\Users\Desktop\Computers.txt"
Save below file as powershell file format .ps1 . run it . done.
========================================================================
$ServerName = Get-Content "C:\Users\Desktop\Computers.txt"
foreach ($Server in $ServerName) {
Copy-Item -Path D:\software\ROIScan.vbs -Destination \\$Server\d$\software\
Copy-Item -Path D:\software\MspFixUp.vbs -Destination \\$Server\d$\software\
Copy-Item -Path D:\software\wiCollectFiles.vbs -Destination \\$Server\d$\software\
}
========================================================================
target server list keep at "C:\Users\Desktop\Computers.txt"
Save below file as powershell file format .ps1 . run it . done.
========================================================================
$ServerName = Get-Content "C:\Users\Desktop\Computers.txt"
foreach ($Server in $ServerName) {
Copy-Item -Path D:\software\ROIScan.vbs -Destination \\$Server\d$\software\
Copy-Item -Path D:\software\MspFixUp.vbs -Destination \\$Server\d$\software\
Copy-Item -Path D:\software\wiCollectFiles.vbs -Destination \\$Server\d$\software\
}
========================================================================
Monday, August 10, 2015
Script Creating SharePoint User MySites using PowerShell
While working on a large migration project (SharePoint 2010 to SharePoint 2013), I had a requirement to script the creation of user MySites for hundreds of users. I knocked this little PowerShell function together to do just that!
You can call the function like this (for a single user):
Or call it like this, for a batch of users:
Function Create-MySite { [CmdletBinding()] Param ( [Parameter(Mandatory = $True,Position=2,valueFromPipeline=$true)][String]$Username, [Parameter(Mandatory = $True,Position=1)][String]$MySiteRootURL ) [void][reflection.assembly]::Loadwithpartialname("Microsoft.Office.Server"); $site=new-object Microsoft.SharePoint.SPSite($MySiteRootURL); try { $serviceContext = Get-SPServiceContext $site; $upm = new-object Microsoft.Office.Server.UserProfiles.UserProfileManager($serviceContext); if($upm.UserExists($Username) -eq $false) { Write-Host "User $Username was not found in the profile store." -f yellow; return; } $userProfile = $upm.GetUserProfile($Username); if($userProfile.PersonalSite -eq $Null) { Write-Host "Creating MySite for user $Username" -f darkyellow; $userProfile.CreatePersonalSite(); Write-host "Successfully created MySite for user $Username" -f green; } else { Write-Host "User $Username already has a MySite." -f darkgreen; } } catch { Write-Host "Encountered an error creating a MySite for user $Username. Error:"$_.Exception -f Red; } finally { $site.Dispose(); } }
You can call the function like this (for a single user):
#Example - Create a MySite for user "tonyj" Create-MySite -MySiteRootURL "http://mysite.bigintranet.com.au" -Username "tonyj"
Or call it like this, for a batch of users:
#To Create for an array of users $users = @('tonyj','bobh','markf','billd') $users | Foreach {Create-MySite -MySiteRootURL "http://mysite.bigintranet.com.au" -username $_}
Wednesday, August 5, 2015
Disable incoming email settings pages for SharePoint server 2007
TO restrict user to change incoming
email settings, we must customize some of aspx files.
Implementation Instructions
1.
Logon to the servers, and open “C:\Program Files\Common Files\Microsoft Shared\Web Server
Extensions\12\template\LAYOUTS”.
2.
Take back up following 2 aspx files, and place them on same
directory.
* new.aspx
* EmailSettings.aspx
* new.aspx
* EmailSettings.aspx
3.
Change file name that you back up now as below
* new.aspx → new_xxx.aspx
* EmailSettings.aspx → EmailSettings_xxx.aspx
* new.aspx → new_xxx.aspx
* EmailSettings.aspx → EmailSettings_xxx.aspx
4.
Open new.aspx(Original). And add “disabled="disabled"” in the following
code.
Around
line 412…
disabled="disabled"
>disabled="disabled"
disabled="disabled">
Around line 504….
disabled="disabled">
disabled="disabled">
5.
Save and close.
6.
Open EmailSettings.aspx(Original). And change code
as following.
Around line 97…
Original
function _spBodyOnLoad()
{
SetControlsDisabled(document.getElementById("<%= EnabledFalse.ClientID %>").checked);
}
New
function _spBodyOnLoad()
{
//SetControlsDisabled(document.getElementById("<%= EnabledFalse.ClientID %>").checked);
SetControlsDisabled(document.getElementById("<%= EnabledFalse.ClientID %>").disabled = true);
SetControlsDisabled(document.getElementById("<%= EnabledTrue.ClientID %>").disabled = true);
}
Around line 97…
Original
function _spBodyOnLoad()
{
SetControlsDisabled(document.getElementById("<%= EnabledFalse.ClientID %>").checked);
}
New
function _spBodyOnLoad()
{
//SetControlsDisabled(document.getElementById("<%= EnabledFalse.ClientID %>").checked);
SetControlsDisabled(document.getElementById("<%= EnabledFalse.ClientID %>").disabled = true);
SetControlsDisabled(document.getElementById("<%= EnabledTrue.ClientID %>").disabled = true);
}
7.
Save and close.
8.
Repeat above step for all WFEs.
how to open the setting page
how to open the setting page
1.
Open the document library you just
created.
2.
Click Settings – document library settings.
3.
Under Communication Settings click E-Mail
Settings.
4.
Change URL as below.
http:/xxx/sites/xxx/_layouts/EmailSettings.aspx?List=xxx
↓
http:/xxx/sites/xxx/_layouts/EmailSettings_xxx.aspx?List=xxx
http:/xxx/sites/xxx/_layouts/EmailSettings.aspx?List=xxx
↓
http:/xxx/sites/xxx/_layouts/EmailSettings_xxx.aspx?List=xxx
Subscribe to:
Posts (Atom)