Due to popular demand, I have now included a compiled version of SPIEFolder 2.0 for Windows SharePoint Services 3.0/Microsoft Office SharePoint Server 2007 along with SharePoint Foundation 2010/SharePoint Server 2010 in the download package for SPIEFolder.
For details on this version, see my previous blog post here
Hope you enjoy!
– Keith
Hi~ thanks for your wonderful tool.but i found if OS is x64, SPIEFolder not working.
Could you Give me a x64 version Link? thanks a lot!
SPIEFolder for 2007 x64 Version .Thanks!!!
Keith, I just had to say thank you for this tool. Solved my problem.
People like you who share these helpful tools make the world a better place.
Thanks again.
Is there a x64 version of this tool?
If you mean for 2007, no there is not.
Please do a x64 version for 2007…. pretty please?
Gav, I’ll see what I can do about standing up an x64 VM this weekend and see about getting an x64/2007 version of the tool built. No promises, but we’ll see.
Many thanks Keith!
Please, there is a Claims based spiefolder.exe release? because I get 080070005 error, or some workaround
There is no Claims version, but if you run it as the farm account, you shouldn’t have any problems.
Hi Keith,
A thousand thanks for your awesome tools and also life saver for a SharePoint beginner.
It seem able help me to solve the direct import file problem.
But i was met some problem when use the spiefolder.exe.
Is there any method to contact you?
Sorry for that, i could not find your email address on the blog.
Looking forward to having the discuss with you.
Thanks and regards,
Zong
Hi,
i have sharepoint 2007 server and have been tasked with moving all data from there and perhaps keeping it stored somwhere in case it needs to be accessed. can this be done. i think you mention it can be exported to another sharepoint but we do not want to use sharepoint anymore.
hope this makes sense. much appreciate any help.
Vikas, the documentation contained in the archive shows examples of extracting the files to a file share.
Sorry but what Archive? I have no knowledge on sharepoint apart from what ive been reading online
SPIEFolder works great in our 2010 environment, but repeatedly receive the dreaded “The Web application at…” error. The URL I am using is valid. Our SP 20007 version is only up to April 2010 CU.
I could use the 64bit link to your tool. I have used it in a 32 bit environment and it worked great. I currently have a site that is running on a 64bit os and need to export the files. Your help would be greatly appreciated.
Kevin,
I’m not sure if this post is being monitored by the author, I left a message in February and got no response. I ended up using the below PowerShell script to accomplish what I needed:
—————————————————————————-
[CmdletBinding()]
Param(
[Parameter(Mandatory=$true)][System.String]$Url = $(Read-Host -prompt “Web Url”),
[Parameter(Mandatory=$true)][System.String]$Library = $(Read-Host -prompt “Document Library”),
[Parameter(Mandatory=$true)][System.String]$DestPath = $(Read-Host -prompt “Destination Folder”),
[Parameter(Mandatory=$true)][System.String]$LogDate = $(Read-Host -prompt “LogDate for Filename”)
)
[void][System.Reflection.Assembly]::LoadWithPartialName(“Microsoft.SharePoint”)
$site = new-object microsoft.sharepoint.spsite($Url)
$web = $site.OpenWeb()
$site.Dispose()
#$logfiledate = Get-Date -f s
#$logfiledate = $logfiledate -replace “:”,””
$logfilename = “$LogDate+”.log”
$logfileFolder = “E:\Export\Log”
$log = $logfileFolder+”\”+$logfilename
$folder = $web.GetFolder($Library)
$folder # must output it otherwise “doesn’t exist” in 2007
if(!$folder.Exists){
Write-Error “The document library cannot be found”
$web.Dispose()
return
}
#$directory = $pwd.Path
$directory = $DestPath+”/”+$LogDate
#$rootDirectory = Join-Path $pwd $folder.Name
$rootDirectory = Join-Path $DestPath $folder.Name
if (Test-Path $rootDirectory) {
Write-Error “The folder $Library in the current directory already exists, please remove it”
$web.Dispose()
return
}
#progress variables
$global:counter = 0
$global:total = 0
#recursively count all files to pull
function count($folder) {
# if ($folder.Name -ne “Forms”) {
if ($folder.Name -eq “IDR Documents”) {
$global:total += $folder.Files.Count
#$folder.SubFolders | Foreach { count $_ }
}
}
write “counting files, please wait…”
count $folder
#write “Total Number of files to copy $global:total”
Get-Date | Out-File $log -append
“Total Number of files to copy $global:total” | Out-File $log -append
“====================================================” | Out-File $log -append
function progress($path) {
$global:counter++
$percent = $global:counter / $global:total * 100
write-progress -activity “Pulling documents from $Library” -status $path -PercentComplete $percent
}
#Write file to disk
function Save ($file, $directory) {
$data = $file.OpenBinary()
$path = Join-Path $directory $file.Name
#progress $path
#”Copying—“+$path | Out-File $log -append
“Copying—“+$file | Out-File $log -append
[System.IO.File]::WriteAllBytes($path, $data)
}
#Forms folder doesn’t need to be copied
$formsDirectory = Join-Path $rootDirectory “Forms”
function Pull($folder, [string]$directory) {
$directory = Join-Path $directory $folder.Name
if ($directory -eq $formsDirectory) {
return
}
mkdir $directory | out-null
$folder.Files | Foreach { Save $_ $directory }
#$folder.Subfolders | Foreach { Pull $_ $directory }
}
#Write “Copying files recursively”
Pull $folder $directory
$Dest = $DestPath+”\”+$LogDate+”\PowerShell”
$NumFiles = (Get-ChildItem $Dest).Length
“====================================================” | Out-File $log -append
“Total files copied = $NumFiles out of $global:total” | Out-File $log -append
“====================================================” | Out-File $log -append
$web.Dispose()
—————————————————————————————–
Hope it helps
Hank
Thanks Hank I’ll give it a try.
It is being monitored 🙂 But sometimes I don’t get the notifications. I’m sorry I missed your previous post Hank, and thanks for sharing the PowerShell script with Kevin.
i am using -recursive but it still skips folders on export..any ideas
Could you give me a bit more insight into what exactly is being skipped?
Hello Keith,
I downloaded the execute file and use the command indicated in the document file. The message coming back is SYNTAX:…….. and there are no error messages.
I have checked and the syntax is correct.
What else should I do.
Thanks.
Keith,
I am using spiefolder for sharepoint 2007.
Can you copy paste your exact command line and error message?