Archive for November, 2013

When you’re deploying your Web Application from TFS to an IIS Web Application you might encounter the error Web deployment task failed. (Site http: does not exist.)

Web deployment task failed.

If you got this error, it’s probably because in TFS you set the”/p:DeployIISAppPath” to the URL of a website, for example /p:DeployIISAppPath=”http://vlad.domain.com” . The correct way to specify the parameter is giving the actual name of the website from IIS, for example /p:DeployIISAppPath=”Default Web Site” . Now your error should go away!

Leave  a comment and don’t forget to like us on Facebook here and to follow me on Google+ here and on Twitter here  for the latest news and technical articles on SharePoint.  Also, don’t forget to check out SharePoint Community.Net for more great SharePoint Content

No ratings yet.

Please rate this

As the year ends and the new one begins, a lot of Developer New Year’s Resolutions or even 2013 objectives will be to get certified on SharePoint 2013! I mean who doesn’t want to be up to date with your skills, as well as having the ability to put the cool MCSD logo on your CV? However, being certified is no easy task and that is why Microsoft Learning created the Microsoft Virtual Academy! Your company will also be happy if you pass them since it will be a requirement for the Content and Collaboration Competency in early 2014!  You can now learn for the SharePoint 2013 MCSD with FREE MVA Courses

SharePoint 2013 MCSD with FREE MVA Courses

What is MVA?

Successful technologists never stop learning and great technology never stops evolving. Microsoft Virtual Academy (MVA) offers online Microsoft training delivered by experts to help technologists continually learn, with hundreds of courses, in 11 different languages. Our mission is to help developers, knowledgeable IT professionals and advanced students learn the latest technology, build their skills, and advance their careers. MVA is free of charge, and the entire service is hosted on Windows Azure. 

Even though MVA has a lot of great resources, I filtered down most of the ones that are directly for you SharePoint Developers. So here are the Resources you can and should use to study for this high level Certification! I have separated them by exam and also added a small description for each of them!

Exam 70-480

HTML5 & CSS3 Fundamentals: Development for Absolute Beginners

Want to learn a different language? Over the course of 21 episodes, our friend Bob Tabor will teach you the fundamentals of HTML5 & CSS3 programming. Tune in to learn concepts about web pages, CSS3 styles and HTML5 features.

We’ll walk you through getting the web principals, writing code and much more! Each concept is broken into its own video so you can search for and focus on the information you need.

Make sure you are logged in into MVA and View it here: HTML5 & CSS3 Fundamentals: Development for Absolute Beginners

Developing in HTML5 with JavaScript and CSS3 Jump Start

This course provides an accelerated introduction to HTML5, CSS3, and JavaScript and helps students learn basic HTML5/CSS3/JavaScript programming skills. It focuses on using HTML5/CSS3/JavaScript to implement programming logic, define and use variables, perform looping and branching, develop user interfaces, capture and validate user input, store data, and create well-structured applications. This course uses Visual Studio 2012, running on Windows 8. The course is intended for developers who have at least six months of professional experience and who are interested in developing applications using HTML5 with JavaScript and CSS3 (either Windows Store apps or IE10 apps for the Web). While the students may have little or no HTML5 coding experience, they should have some experience with HTML4. This is a course for intermediate to advanced learners and helps you prepare for Microsoft exam 70-480.

Make sure you are logged in into MVA and View it here: Developing in HTML5 with JavaScript and CSS3 Jump Start

Exam 70-486

Developing ASP.NET MVC4 Web Applications Jump Start

Developers for the Microsoft platform: take this course if you are ready to start building enterprise web applications or if you just need to ramp up on the new MVC (Model View Control) features or update your Microsoft certification. This is the meat and potatoes course that will tell you what you need to know and follows the Developing in HTML5 with JavaScript and CSS Jump Start. It’ll also help you prepare for Exam 70-486.

Make sure you are logged in into MVA and View it here: Developing ASP.NET MVC4 Web Applications Jump Start

Building Web Apps with ASP.NET Jump Start

This Jump Start is tailored for experienced application developers interested in leveraging ASP.NET and Visual Studio 2012t o offer modern apps that target modern browsers. Three of Microsoft’s most seasoned ASP.NET speakers provide an accelerated introduction to building web applications development with ASP.NET 4.5 and ASP.NET MVC 4 targeting key scenarios like building mobile ready websites, social web applications, and much more. This is a course for intermediate to advanced learners and helps you prepare for Microsoft exam 70-486.

Make sure you are logged in into MVA and View it here: Building Web Apps with ASP.NET Jump Start

Exam 70-488

Developing SharePoint Server 2013 Core Solutions Jump Start

Are you a developer for the Microsoft platform, interested in helping your organization collaborate and manage workflow using SharePoint solutions? Take this course to learn the core skills common to most SharePoint development activities. Find out how to work with backend data and front end user interfaces and security. You’ll get some guidelines and best practices that will help you optimize your SharePoint applications. You’ll see some cool demos that will show you how to create an app, deploy it to a catalog, and install it. And you’ll see workflows inside the dramatically enhanced SharePoint Designer.

COURSE OUTLINE

   – SharePoint as a Developer Platform
– Managing Custom Components
– Working with SharePoint Objects using a Client Side Object Model
– Developing SharePoint and Auto-hosted and Hosted SharePoint Apps
– Developing Remote Hosted SharePoint Apps
– Publishing and Distributing Apps
– Automating Business Processes

Make sure you are logged in into MVA and View it here: Developing SharePoint Server 2013 Core Solutions Jump Start

Exam 70-489[Register Now]

Developing SharePoint Server Advanced Solutions

SharePoint Server developers, if you want to find out how to incorporate SharePoint’s social networking features into your own application, how to call SharePoint Server Search from a client, or how to enhance your Business Connectivity Services (BCS) implementation, this is the Jump Start for you. Learn to write the server and client side code that will enable your users to work more collaboratively, find the information they want more easily, and communicate with the outside world.

This course also servers a foundation for learning the skills you’ll need to pass Exam 70-489.

Register now! The course is happening on December 13th! : http://www.microsoftvirtualacademy.com/liveevents/developing-sharepoint-server-advanced-solutions#?fbid=V_N0ZRiqqUo

Don’t Keep all this cool Knowledge to yourself! Share it with your followers on twitter by clicking the big bird image right under or view the end of the post for more options!

Leave  a comment and don’t forget to like us on Facebook here and to follow me on Google+ here and on Twitter here  for the latest news and technical articles on SharePoint.  Also, don’t forget to check out SharePoint Community.Net for more great SharePoint Content

No ratings yet.

Please rate this

When creating a new Web Application in SharePoint 2013 you might get this message in the “pop up” window: Internet Explorer cannot display the webpage like in the following ScreenShot:

Internet Explorer cannot display the webpage when creating new Web Application in SharePoint 2013

This is usually because you either have too many Web Applications in your SharePoint Server, or because your SharePoint Server is slow! As part of the Web Application creation process, SharePoint resets IIS. By Default, the application pool only allows for 90 seconds for all the connections to close before it down by force. If you got this message it’s because 90 seconds wasn’t enough and we need to increase that limit.

The solution to this is to allow the process a longer amount of time before it is forcibly shutdown.

  • On the server(s) hosting Central Admin, open IIS manager.
  • In the tree view, expand the server name and click on Application Pools.
  • Locate the SharePoint Central Administration v4 application pool. Right click on it and choose Advanced Settings.

  • In the Process Model section, set the Shutdown Time Limit to a greater value. As an example, 300.

  • Restart IIS.

You should now be able to create Web Applications without any troubles!

Leave  a comment and don’t forget to like us on Facebook here and to follow me on Google+ here and on Twitter here  for the latest news and technical articles on SharePoint.  Also, don’t forget to check out SharePoint Community.Net for more great SharePoint Content

No ratings yet.

Please rate this

Introduction

Creating a SharePoint Development Virtual Machine is something you might have to do quite a few times as a Developer. Even if it’s a pretty easy process, on a slow machine it can easily kill 4-5 hours of your day only to install SQL, SharePoint, Visual Studio and all the others tools you might need to get started. What if you could just script it so it’s all done automatically while you go take coffee, chat on SharePoint Community or whatever else you enjoy doing? In this tutorial we will learn how to build a script that we will keep using for as long as you keep developing on SharePoint 2013. The tutorial will be split in a few sections since in order to keep them focused and short, and at the end they will all be published in a downloadable PDF. I strongly encourage you to not only copy the scripts, but actually read the blog posts of why I did them like this and there are some parts where you will need to work as well!

Sections:

  1. Introduction & Prerequisites & Creating the Domain and Service Accounts
  2. Installing software prerequisites + SQL
  3. Installing SharePoint 2013
  4. Installing Visual Studio 2012 and Optional Software
  5. Basic Optimizing and Summary
  6. Advanced Optimizing of the scripts!
  7. An eBook Guide of the 6 sections and a video!  (You are here)

Summary

The finalized script is now done, and with only a few changes such as the PC name, you and your developers can create SharePoint 2013 development Virtual Machines with all the required tools with only a few clicks!  I know the instructions weren’t the easiest, but the task wasn’t easy either! I hope you enjoyed and learned from this series as much as I enjoyed doing it and believe it or not, I wasn’t even sure it was doable when I first started the series.

PowerShell is a really powerful tool, and it can really create things that we couldn’t believe were possible a few years ago without additional software like MDT or SCCM.    You can view the final video on YouTube here:

Full Guide

Share this post with your followers on twitter:

Leave  a comment and don’t forget to like us on Facebook here and to follow me on Google+ here and on Twitter here  for the latest news and technical articles on SharePoint.  Also, don’t forget to check out SharePoint Community.Net for more great SharePoint Content

No ratings yet.

Please rate this

I am glad to announce the release of the second version of The ultimate SharePoint 2013 Certification Guide V2 on my Blog!  The Guide has been out since September 17th , however it was exclusive to  SharePoint Community Members.  This guide is aimed at anyone who is considering studying for SharePoint Certifications either to improve their knowledge or to validate existing knowledge about SharePoint.

In June 2013, we saw that there was a huge amount of questions around the SharePoint Server 2013 Certifications and we release the Ultimate SharePoint 2013 Certification Guide, which now has over 6000 views!

However since then, quite a few things changed with certifications and we decided to add even more value to the guide by adding more info about Cloud Certification and Business Intelligence specialists, and even Yammer Certifications! Furthermore, we have added a ton more learning material and background information for every certification.

Here is what’s new!

  • MCSD exams got confirmed!
  • Yammer Certifications!
  • Added information about Cloud Certifications!
  • Added information for BI Specialists!
  • Information about the July 1st and October first MCSM Changes!
  • A TON of new learning resources for every exam!

In this Guide, you will find graphical summaries of the exams you need to take in order to achieve your desired Certification as well as the Information, Costs, and Benefits of each one!I

Share this post with your followers on twitter:

Guide to SharePoint Server 2013 Certification

No ratings yet.

Please rate this

Introduction

Creating a SharePoint Development Virtual Machine is something you might have to do quite a few times as a Developer. Even if it’s a pretty easy process, on a slow machine it can easily kill 4-5 hours of your day only to install SQL, SharePoint, Visual Studio and all the others tools you might need to get started. What if you could just script it so it’s all done automatically while you go take coffee, chat on SharePoint Community or whatever else you enjoy doing? In this tutorial we will learn how to build a script that we will keep using for as long as you keep developing on SharePoint 2013. The tutorial will be split in a few sections since in order to keep them focused and short, and at the end they will all be published in a downloadable PDF. I strongly encourage you to not only copy the scripts, but actually read the blog posts of why I did them like this and there are some parts where you will need to work as well!

Sections:

  1. Introduction & Prerequisites & Creating the Domain and Service Accounts
  2. Installing software prerequisites + SQL
  3. Installing SharePoint 2013
  4. Installing Visual Studio 2012 and Optional Software
  5. Basic Optimizing and Summary
  6. Advanced Optimizing of the scripts! (You are here)
  7. An eBook Guide of the 6 sections and a video! 

Advanced Optimization

Welcome to the advanced optimization part of the script. With this section we will make our script go from 6 scripts, to only running one script and then not touching it until it’s done! I warn you that this section will go a lot “Faster” trough the steps because I assume after the first 5 tutorials you got a better understanding of PowerShell! First of all, I want you to create a “Launchers” Folder and a config.xml file in the C:\SharePoint folder. We will see what we put in them later!

Open the config.xml file and we will add the following things. The localadminpassword is the password of your “local administrator” (the account you use before creating the domain), and the serviceaccountpwd is the password you will use for your Service Accounts!

<autovm>
<localadminpassword>pass@word1</localadminpassword>
<serviceaccountpwd>pass@word1</serviceaccountpwd>
</autovm>

Now, open the preparepc.ps1 script and add the following after the “Add-WindowsFeature -Name “ad-domain-services” -IncludeAllSubFeature –IncludeManagementTools” line.

$xmlconfig = &quot;C:\SharePoint\config.xml&quot;
$propertiesInput = Get-Content $xmlconfig
$password = $propertiesInput.autovm.localadminpassword
New-Item -Path &quot;HKCU:\Software\Microsoft\Windows\CurrentVersion\&quot; -Name RunOnce -ErrorAction SilentlyContinue | Out-Null
New-ItemProperty -Path &quot;HKCU:\Software\Microsoft\Windows\CurrentVersion\RunOnce&quot; -Name SPVM -Value &quot;<code>&quot;C:\SharePoint\Launchers\createdomain.bat</code>&quot; &quot; -Force | Out-Null
Set-ItemProperty -Path &quot;HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon&quot; -Name DefaultUserName -Value &quot;Administrator&quot;
Set-ItemProperty -Path &quot;HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon&quot; -Name DefaultPassword -Value $password
Set-ItemProperty -Path &quot;HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon&quot; -Name AutoAdminLogon -Value &quot;1&quot;
Set-ItemProperty -Path &quot;HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon&quot; -Name ForceAutoLogon -Value &quot;1&quot;
Restart-Computer

Let’s see what we did there! First, we took the password from the config.xml file and saved it in a variable called $password. Afterwards, since we have a reboot we will need a way to start the scripts… so we will use the “RunOnce” registry key. The RunOnce key is what the PC will do the next time a user logs on… in this case we will run “C:\SharePoint\Launchers\createdomain.bat” which we haven’t yet created! Now, the “Winlogon” registry values are there for the autologin. We know our initial account is called “Administrator” and using the $password variable, Windows will be able to automatically log us in!

Now go in the Launchers Folder, and create a file called createdomain.bat that has the following inside:

"%SYSTEMROOT%\system32\windowspowershell\v1.0\powershell.exe" -Command Start-Process "$PSHOME\powershell.exe" -Verb RunAs -ArgumentList "'-NoExit -ExecutionPolicy Bypass C:\SharePoint\2-createdomain.ps1'"

Microsoft’s PowerShell Script scheduling isn’t 100% there yet, and I prefer to use .bat files to start our programs. This .bat will start PowerShell as an administrator and run the createdomain.ps1 script!

Now, let’s open the createdomain.ps1 script and at the beginning of the script add the following:

# Windows PowerShell script for AD DS Deployment
$PlainPassword = &quot;pass@word1&quot;
$SecurePassword = $PlainPassword | ConvertTo-SecureString -AsPlainText -Force
$xmlconfig = &quot;C:\SharePoint\config.xml&quot;
$propertiesInput = Get-Content $xmlconfig
$password = $propertiesInput.autovm.localadminpassword
New-Item -Path &quot;HKCU:\Software\Microsoft\Windows\CurrentVersion\&quot; -Name RunOnce -ErrorAction SilentlyContinue | Out-Null
New-ItemProperty -Path &quot;HKCU:\Software\Microsoft\Windows\CurrentVersion\RunOnce&quot; -Name SPVM -Value &quot;<code>&quot;C:\SharePoint\Launchers\createusers.bat</code>&quot; &quot; -Force | Out-Null
Set-ItemProperty -Path &quot;HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon&quot; -Name DefaultUserName -Value &quot;Administrator&quot;
Set-ItemProperty -Path &quot;HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon&quot; -Name DefaultPassword -Value $password
New-ItemProperty -Path &quot;HKLM:\Software\Microsoft\Windows NT\CurrentVersion\WinLogon&quot; -Name DefaultDomainName -Value &quot;VLADDEV&quot;
Set-ItemProperty -Path &quot;HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon&quot; -Name AutoAdminLogon -Value &quot;1&quot;
Set-ItemProperty -Path &quot;HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon&quot; -Name ForceAutoLogon -Value &quot;1&quot;

The $PlainPassword and $SecurePassword are the same string which will be used for the SafeModeAdministrator password, so it doesn’t ask us for the password anymore. The rest is a bit the same except since we will now be in a domain, we added a new-itemproperty (DefaultDomainName).. makesure you change VLADDEV to your actual domain. While in the same script, we will add this line “-SafeModeAdministratorPassword:$SecurePassword " somewhere in the Install-ADDSForest command. It will look something like this:

SharePoint 2013 Development Environment Tutorial

Now we go in Launchers and create the "createusers.bat" file which will contain the following:

"%SYSTEMROOT%\system32\windowspowershell\v1.0\powershell.exe" -Command Start-Process "$PSHOME\powershell.exe" -Verb RunAs -ArgumentList "'-NoExit -ExecutionPolicy Bypass C:\SharePoint\3-createaccounts.ps1'"

We are going to edit the createaccounts.ps1 file to look something like this:

#Name: createaccounts.ps1
#Purpose: Creates Service Accounts
cd c:\SharePoint\sp\serviceaccounts
.\sp2013serviceaccounts.ps1 -Level high -SPOU "SP Service Accounts" -SQLOU "SQL Service Accounts" -SQLLevel high -OptionalAccounts $true
cd c:\SharePoint
.\4.prereqsandfeatures.ps1

The Reason is that the account script and prereqs script can be done with the same users without reboot, so might as well queue them. Now open the sp2013serviceaccounts.ps1 file and find the line where you have $defaultpassword = Read-host .... . We are going to replace it with the password we get from our config file. So it should look something like this:

# get default password. If user put new password in XML, the XML will have priority
$xmlconfig = "C:\SharePoint\config.xml"
$propertiesInput = Get-Content $xmlconfig
$defaultpassword = $propertiesInput.autovm.serviceaccountpwd

Now Open the prereqsandfeatures.ps1 file and before the Restart-Computer command, add the following:

New-Item -Path &quot;HKLM:\Software\Microsoft\Windows\CurrentVersion\&quot; -Name RunOnce -ErrorAction SilentlyContinue | Out-Null
New-ItemProperty -Path &quot;HKLM:\Software\Microsoft\Windows\CurrentVersion\RunOnce&quot; -Name SPVM -Value &quot;</code>&quot;C:\SharePoint\Launchers\installsql.bat<code>&quot; &quot; -Force | Out-Null
Set-ItemProperty -Path &quot;HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon&quot; -Name DefaultUserName -Value &quot;sql_admin&quot;
Set-ItemProperty -Path &quot;HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon&quot; -Name DefaultPassword -Value $password
New-ItemProperty -Path &quot;HKLM:\Software\Microsoft\Windows NT\CurrentVersion\WinLogon&quot; -Name DefaultDomainName -Value $env:USERDOMAIN -PropertyType &quot;String&quot; -Force | Out-Null
Set-ItemProperty -Path &quot;HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon&quot; -Name AutoAdminLogon -Value &quot;1&quot;
Set-ItemProperty -Path &quot;HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon&quot; -Name ForceAutoLogon -Value &quot;1&quot;

Now, in the Launchers folder, create the installsql.bat file with this inside:

"%SYSTEMROOT%\system32\windowspowershell\v1.0\powershell.exe" -Command Start-Process "$PSHOME\powershell.exe" -Verb RunAs -ArgumentList "'-NoExit -ExecutionPolicy Bypass C:\SharePoint\5.installsql.ps1'"

Good so now we got everything up until SQL to do itself. Now, open the installsql.ps1 script and after the .\SQLBinaries…. Line add the following

$xmlconfig = &quot;C:\SharePoint\config.xml&quot;
$propertiesInput = Get-Content $xmlconfig
$password = $propertiesInput.autovm.serviceaccountpwd
New-Item -Path &quot;HKLM:\Software\Microsoft\Windows\CurrentVersion\&quot; -Name RunOnce -ErrorAction SilentlyContinue | Out-Null
New-ItemProperty -Path &quot;HKLM:\Software\Microsoft\Windows\CurrentVersion\RunOnce&quot; -Name SPVM -Value &quot;</code>&quot;C:\SharePoint\Launchers\installSharePoint.bat`&quot; &quot; -Force | Out-Null
Set-ItemProperty -Path &quot;HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon&quot; -Name DefaultUserName -Value &quot;sp_admin&quot;
Set-ItemProperty -Path &quot;HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon&quot; -Name DefaultPassword -Value $password
New-ItemProperty -Path &quot;HKLM:\Software\Microsoft\Windows NT\CurrentVersion\WinLogon&quot; -Name DefaultDomainName -Value $env:USERDOMAIN -PropertyType &quot;String&quot; -Force | Out-Null
Set-ItemProperty -Path &quot;HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon&quot; -Name AutoAdminLogon -Value &quot;1&quot;
Set-ItemProperty -Path &quot;HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon&quot; -Name ForceAutoLogon -Value &quot;1&quot;
shutdown -l

Now, in the Launchers folder, create the installSharePoint.bat file with this inside:

"%SYSTEMROOT%\system32\windowspowershell\v1.0\powershell.exe" -Command Start-Process "$PSHOME\powershell.exe" -Verb RunAs -ArgumentList "'-NoExit -ExecutionPolicy Bypass C:\SharePoint\6.installSharePoint.ps1'"

Now we're OK up to the installation of SharePoint. Open the script AutoSPInstallerMain.ps1 from C:\SharePoint\SP\AutoSPInstaller\ and go at the very end. (Try to do a search for " If ($isTracing) {Stop-Transcript; $script:isTracing = $false}" ) . After that line, add the following:

cd c:\sharepoint
.\7.installvs2012andtools.ps1

Now... we do not have that PowerShell file yet however since both VisualStudio2012 and the Tools and Software are done with the same user, we will combine script 7 & 8 in one script that will be called: 7.installvs2012andtools.ps1 . We will also modify how we see if Visual Studio 2012 is installed. In theory, there is a switch called /forcereboot that would reboot when Visual Studio is done installing... However, it doesn't workL. So, I had the creative and ghetto idea to do this: Log the installation and when there is no writing in the logs for 5 minutes, it means that the installation is finished! So here is how the Visual Studio 2012 installation is now done:

Write-Host "Installing Visual Studio 2012"
New-Item -ItemType directory -Path C:\AutoInstallLogs
cd C:\SharePoint\Software\VisualStudio2012
.\vs_ultimate.exe /full /noweb /quiet /ProductKey XXXXXXXYYYYZZZZJJDJDJ /Log C:\AutoInstallLogs\VS2012.txt
Start-Sleep -Seconds 240
$path = "C:\AutoInstallLogs"
$y = gci $path |where{!($_.psiscontainer)}|sort -desc lastwritetime|select -first 1
$a = Get-Date
$timespan = New-TimeSpan -Start $y.lastwritetime -End $a
while ($timespan.Minutes -lt 5)
{
Start-Sleep -Seconds 120
$y = gci $path |where{!($_.psiscontainer)}|sort -desc lastwritetime|select -first 1
$a = Get-Date
$timespan = New-TimeSpan -Start $y.lastwritetime -End $a
}
Write-Host "Visual Studio 2012 Installation Done"

It's probably not the best or cleanest way... however it works perfectly! Here is the rest of the script:

Write-Host "Installing Microsoft Office Developer Tools for Visual Studio 2012"
C:\SharePoint\Software\OfficeToolsForVS2012RTW\WebPlatformInstaller_amd64_en-US.msi /q
Start-Sleep -s 120
C:\SharePoint\Software\OfficeToolsForVS2012RTW\bin\WebpiCmd.exe /install /products:OfficeToolsForVS2012RTW /XML:C:\SharePoint\Software\OfficeToolsForVS2012RTW\feeds\latest\webproductlist.xml /AcceptEula

Write-Host "Installing NotePad++"
cd C:\SharePoint\Software\NotePad++
.\npp.6.5.Installer.exe /S
Start-Sleep -s 120

Write-Host "Installing Goolge Chrome"
Cd C:\SharePoint\Software\Chrome
Msiexec /q /I GoogleChromeStandaloneEnterprise.msi
Start-Sleep -s 120

Write-Host "Installing FireFox"
cd C:\SharePoint\Software\FireFox
.\ffsetup.exe -ms
Start-Sleep -s 120

Write-Host "Installing SharePoint Designer 2013"
cd C:\SharePoint\Software\SPDesigner
.\setup.exe /adminfile updates\adminfile.msp
Start-Sleep -s 200

Write-Host "Copying standalone programs"
Copy-Item C:\SharePoint\Software\StandAlone\* C:\Users\sp_admin\Desktop
Write-Host "DONE"

I know there weren't many images in this part as in the other one, so here are some to give you an idea what it should look like at the end:

Hope you enjoyed and head over to Part 7 (19-11-2013) which is the final Summary and a 1h30 long video of how your installation will look like!

Share this post with your followers on twitter:

Leave  a comment and don’t forget to like us on Facebook here and to follow me on Google+ here and on Twitter here  for the latest news and technical articles on SharePoint.  Also, don’t forget to check out SharePoint Community.Net for more great SharePoint Content

No ratings yet.

Please rate this

I had a problem at a client who had SharePoint 2013 MySites and a couple of WebApplications. Users were able to follow sites and they appeared in their mysite as usual, however when they clicked on them, they had this error: This link no longer works, because it may have been moved or deleted. You can try to find it and follow it in its new location. The environment is in French, so I am not sure if this is the exact error in English, however I used Bing Translator to go from French to English… because I bet that’s what Microsoft uses! Here is the screenshot

This link no longer works, because it may have been moved or deleted

And for the sake of indexing if anyone is searching for the related ULS log Errors:

Original error: Microsoft.Office.Server.UserProfiles.FollowedContentException: InternalError : Could not find item http://url.vlad.local
at Microsoft.Office.Server.UserProfiles.FollowedContent.RefreshFollowedItem(FollowedItem item, SPS2SAppExecutionPolicy policy)
at Microsoft.Office.Server.UserProfiles.FollowedContent.FindAndUpdateFollowedItem(Uri url)
at Microsoft.Office.Server.UserProfiles.FollowedContentServerStub.InvokeMethod(Object target, String methodName, XmlNodeList xmlargs, ProxyContext proxyContext, Boolean&amp;amp;amp; isVoid)
at Microsoft.SharePoint.Client.ServerStub.InvokeMethodWithMonitoredScope(Object target, String methodName, XmlNodeList args, ProxyContext proxyContext, Boolean&amp;amp;amp; isVoid)
at Microsoft.SharePoint.Client.ClientMethodsProcessor.InvokeMethod(Object obj, String methodName, XmlNodeList xmlargs, Boolean&amp;amp;amp; isVoid)
at Microsoft.SharePoint.Client.ClientMethodsProcessor.ProcessMethod(XmlElement xe)
at Microsoft.SharePoint.Client.ClientMethodsProcessor.ProcessOne(XmlElement xe)
at Microsoft.SharePoint.Client.ClientMethodsProcessor.ProcessStatements(XmlNode xe)
at Microsoft.SharePoint.Client.ClientMethodsProcessor.Process()

FollowedContent.FindAndUpdateFollowedItem(http://url.vlad.local /) : Local execution failed; Could not open followed item http://url.vlad.local: Exception: InternalError : Could not find item http://url.vlad.local

Exception occured in scope Microsoft.Office.Server.UserProfiles.FollowedContent.FindAndUpdateFollowedItem. Exception=Microsoft.Office.Server.UserProfiles.FollowedContentException: InternalError : Could not find item http://url.vlad.local
at Microsoft.Office.Server.UserProfiles.FollowedContent.RefreshFollowedItem(FollowedItem item, SPS2SAppExecutionPolicy policy)
at Microsoft.Office.Server.UserProfiles.FollowedContent.FindAndUpdateFollowedItem(Uri url)
at Microsoft.Office.Server.UserProfiles.FollowedContentServerStub.InvokeMethod(Object target, String methodName, XmlNodeList xmlargs, ProxyContext proxyContext, Boolean&amp;amp;amp; isVoid)
at Microsoft.SharePoint.Client.ServerStub.InvokeMethodWithMonitoredScope(Object target, String methodName, XmlNodeList args, ProxyContext proxyContext, Boolean&amp;amp;amp; isVoid)

The actual error is because the way Microsoft designed SharePoint 2013 to use only 1 Web Application, therefore only 1 Application Pool account that has access on all content databases. However, for 75% of the enterprises who are still on premise, they have separate Web Applications for the MySites and for the content, and if they followed Service Account security properly they will have a different Application Pool account for MySites Web Applications then the rest of the Web Applications.

However, when a user clicks on a site on the MySite, the MySite Web Application Pool account goes to check in the followed site content database if that site still exists. By default, SharePoint 2013 won’t give the Application Pool Account of the MySite Web Application access on the other Web Applications Content Databases, and that’s normal because we’re putting them in different Web Applications to separate them right?

To solve the problem go in SQL and give the account that runs the MySite Application Pool, and give it “SPDataAcces”. Everything should now work properly!

Leave  a comment and don’t forget to like us on Facebook here and to follow me on Google+ here and on Twitter here  for the latest news and technical articles on SharePoint.  Also, don’t forget to check out SharePoint Community.Net for more great SharePoint Content

No ratings yet.

Please rate this

Introduction

Creating a SharePoint Development Virtual Machine is something you might have to do quite a few times as a Developer. Even if it’s a pretty easy process, on a slow machine it can easily kill 4-5 hours of your day only to install SQL, SharePoint, Visual Studio and all the others tools you might need to get started. What if you could just script it so it’s all done automatically while you go take coffee, chat on SharePoint Community or whatever else you enjoy doing? In this tutorial we will learn how to build a script that we will keep using for as long as you keep developing on SharePoint 2013. The tutorial will be split in a few sections since in order to keep them focused and short, and at the end they will all be published in a downloadable PDF. I strongly encourage you to not only copy the scripts, but actually read the blog posts of why I did them like this and there are some parts where you will need to work as well!

Sections:

  1. Introduction & Prerequisites & Creating the Domain and Service Accounts
  2. Installing software prerequisites + SQL
  3. Installing SharePoint 2013
  4. Installing Visual Studio 2012 and Optional Software
  5. Basic Optimizing and Summary
  6. Advanced Optimizing of the scripts! (You are here)
  7. An eBook Guide of the 6 sections and a video! (19/11/2013)

Basic Optimizing

As the title says, this part of the tutorial is really just BASIC optimizing. All the “cool” and advanced stuff will be done in the next part, however if you don’t mind doing a minimum of manual Work, you can stop here! All our scripts are now ready, however look at the following screenshot and what do you see?

SharePoint 2013 Development Environment Tutorial

That’s right… a bunch of scripts that aren’t really in order or descriptive! Now, if you give this like that to a developer, chances are he might run the scripts in incorrect order and have lots of errors. Let’s fix that a bit!

A lot better! However, I still don’t find it clean enough + the sp2013serviceaccounts.ps1 script is there with no number? Let’s move the “sp2013serviceaccounts.ps1” file and the XML folder into a new folder under “C:\SharePoint\SP\ServiceAccounts”

We also have to change the “createaccounts.ps1” script to now represent the new path. Your new script will now be this:

cd c:\SharePoint\sp\serviceaccounts
.\sp2013serviceaccounts.ps1 -Level high -SPOU &amp;quot;SP Service Accounts&amp;quot; -SQLOU &amp;quot;SQL Service Accounts&amp;quot; -SQLLevel high -OptionalAccounts $true

The Next thing that I find really not cool is the random “sxs” folder. All the other folders have a descriptive and logical name, except the sxs one. Luckily, under “C:\SharePoint\SP\2013\SharePoint\PrerequisiteInstallerFiles\” there is another “sxs” folder that is used for the same thing by AutoSPInstaller (if we didn’t do it before). Let’s move the “SXS” folder from the “C:\SharePoint” to “C:\SharePoint\SP\2013\SharePoint\PrerequisiteInstallerFiles\”

We Now also have to change the “prereqsandfeatures.ps1” script to show the new path! So, change the “Add .Net Framework” section part to show this command;

#Add .Net FrameWork
Import-Module ServerManager
DISM.exe /Online /Enable-Feature /FeatureName:NetFx3 /All /LimitAccess /Source:&amp;quot;C:\SharePoint\SP\2013\SharePoint\PrerequisiteInstallerFiles\sxs&amp;quot;

We are now left with a clean, professional folder that is ready to install you a SharePoint 2013 Development Environment with minimal input!

Next, we see that number 8 and 9 are done by the same user, one after the other and PowerShell can simply queue them… so let’s combine them and change the name to 8. Installtools.ps1. The insides will be something like this:

#Name: installtools.ps1
#Purpose: Installs Microsoft Office Developer Tools for Visual Studio 2012 &amp;amp; Other Software
Write-Host &amp;quot;Installing Microsoft Office Developer Tools for Visual Studio 2012&amp;quot;
C:\SharePoint\Software\OfficeToolsForVS2012RTW\WebPlatformInstaller_amd64_en-US.msi /q
Start-Sleep -s 120
C:\SharePoint\Software\OfficeToolsForVS2012RTW\bin\WebpiCmd.exe /install /products:OfficeToolsForVS2012RTW /XML:C:\SharePoint\Software\OfficeToolsForVS2012RTW\feeds\latest\webproductlist.xml /AcceptEula
Write-Host &amp;quot;Installing NotePad++&amp;quot;
cd C:\SharePoint\Software\NotePad++
.\npp.6.5.Installer.exe /S
Start-Sleep -s 120
Write-Host &amp;quot;Installing Goolge Chrome&amp;quot;
Cd C:\SharePoint\Software\Chrome
Msiexec /q /I GoogleChromeStandaloneEnterprise.msi
Start-Sleep -s 120
Write-Host &amp;quot;Installing FireFox&amp;quot;
cd C:\SharePoint\Software\FireFox
.\ffsetup.exe -ms
Start-Sleep -s 120
Write-Host &amp;quot;Installing SharePoint Designer 2013&amp;quot;
cd C:\SharePoint\Software\SPDesigner
.\setup.exe /adminfile updates\adminfile.msp
Start-Sleep -s 200
Write-Host &amp;quot;Copying standalone programs&amp;quot;
Copy-Item C:\SharePoint\Software\StandAlone\* C:\Users\sp_admin\Desktop
Write-Host &amp;quot;DONE&amp;quot;

That’s it for basic optimizing! If you want to go further in automating your Development Machine, make sure you go to Part 6 (Advanced Optimizing of the scripts! (12/11/2013)

Summary

Five Blog Posts and about 7000 words later, we now got what we wanted … all the scripts to create a SharePoint 2013 Development machine as well as all the sources that you can put on a network Share and every developer in your company can use! At the end, look at all the programs we can now install automatically!

I really hope this was useful for you and you enjoyed not only copying the scripts from a blog post, but also learn the steps and understand why we ran those scripts and the configurations we did. If you are satisfied with the level of automation that we got, you can back up this gold mine on a network share, create an Instructions Manual on how to run it for yourself or your developers and stop wasting time installing SharePoint 2013 Development Virtual Machines! If you are more of a PowerShell fan and want to achieve ultimate automation, check out the next section which will show you how to do so!

Share this post with your followers on twitter:

Leave  a comment and don’t forget to like us on Facebook here and to follow me on Google+ here and on Twitter here  for the latest news and technical articles on SharePoint.  Also, don’t forget to check out SharePoint Community.Net for more great SharePoint Content

No ratings yet.

Please rate this