SPSync v0.9 is now available

4. February 2014 12:15 by marco in SPSync, SharePoint 2013, SharePoint, .NET, Software  //  Tags:   //   Comments (0)

Ok, the last version is almost 9 month old, but now I finally had some time to look through all comments on uservoice and now proudly present the new version.

What's new?

The major change is: SPSync now supports Office 365 authentication which means, you can finally use SPSync with SharePoint Online and SkyDrive Pro. Just select "Office365" from the authentication list and enter your username (user@customdomain.com or user@customdomainpart.onmicrosoft.com) and your password. Domain is not required.

image

Also an issue with creating folders is now fixed and it doesn't matter anymore whether the title of a document library is not the same as the URL of the document library.

A reminder: The "Conflict Handling" is a setting just for conflicts. If you select "Overwrite local changes" it does not mean that a full sync is done. A conflict is if a file is modified locally and remotely. All other files are sync'ing independently from this setting.

Download the new version here: http://spsync.net and leave a comment or drop me a line at
support (at) spsync(dot) net

Windows Phone 8: StadtRAD Finder

17. August 2013 13:09 by marco in .NET, Software, Windows Phone  //  Tags:   //   Comments (0)

Leider gibt es für das StadtRAD in Hamburg bisher nur iOS und Anroid Apps. Ich habe daher die Gelegenheit genutzt und eine Windows Phone 8 App gebaut. Sie zeigt den aktuellen Standort und alle Standorte der StadtRAD Stationen inkl. der Anzahl verfügbarer Fahrräder.

Einfach downloaden und testen:

258x67_WPS_Download_DE_cyan

stadtradfinderapp

Chocolatey: Package Manager für Windows

29. May 2013 21:28 by marco in .NET, NuGet, ProxySwitcher, Software  //  Tags:   //   Comments (0)

Aus Linux kennt man ggf. apt-get um Software/Tools zu installieren. Für Windows gibt es eine wirklich gute Alternative: https://chocolatey.org

Das ganze basiert auf http://nuget.org dem Microsoft .NET Package Manager. Es gibt bereits extrem viele Pakete und man kann problemlos eigene Pakete erstellen und hinzufügen.

Um Chocolatey zu installieren, einfach folgendes in die Kommandozeile eingeben:

@powershell -NoProfile -ExecutionPolicy unrestricted -Command "iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))" && SET PATH=%PATH%;%systemdrive%\chocolatey\bin

Zum Test habe ich direkt Proxy Switcher als Paket hinzugefügt. Um Proxy Switcher zu installieren muss nun einfach folgendes eingegeben werden:

image

SPSync v0.8

18. May 2013 16:05 by marco in .NET, SPSync, Software, SharePoint, SharePoint 2013  //  Tags:   //   Comments (0)

SPSync is now available in version 0.8. It has a bunch of bug fixes and a better tested sync engine.
Also it is tested on Windows 7 and Windows 8 against SharePoint 2010 and SharePoint 2013.

With Office 2013 you get SkyDrive Pro for free which is the Microsoft tool to sync a local folder with a SharePoint document library. However, this tool has some disadvantages:

  • Obviously, you need Office 2013. SkyDrive Pro cannot be downloaded independently.
  • You can define only one root folder, where all of your document libraries will show up. With SPSync you can sync any folder you like.
  • With SkyDrivePro you have no control what happens with conflicts. In SPSync you can define whether you would like to see a conflict dialog, always overwrite local changes or always overwrite remote changes.

SPSync now has a new installer and is no longer a "ClickOnce" application. It does not require administrator rights.

Download here: http://spsync.net

To provide feedback use support (at) spsync(dot)net or the FEEDBACK button on http://spsync.net

SharePoint 2013: SkyDrive Pro couldn't sync this library

25. March 2013 12:56 by marco in SharePoint 2013, Microsoft, SharePoint, Software  //  Tags:   //   Comments (0)

On SharePoint 2013 I have a basic document library with enterprise keywords enabled and one additional "People or Group" column set to "People only" (not as a multi value field).

Now I try to sync the library with SkyDrive Pro. It fails with the following error message:

image

The message details:

The query cannot be completed because the number of lookup columns it contains exceeds the lookup column threshold enforced by the administrator. Error code=0x80070093; Error source=Groove

Ok, if you count the enterprise keywords and the people field as lookup fields I have 2. The default "List View Lookup Threshold" (Central Admin –> Web Application –> Resource Throttling) is 8.

Then I tried to set the value to 16. Bam! Now everything is working again. I have no idea why and how 8 shouldn't be enough with my 2 additional columns (which are of course not even lookup columns).

SPSync 0.7 available

12. June 2012 21:37 by marco in SPSync, Software, SharePoint  //  Tags:   //   Comments (1)

A new version of the SharePoint / Windows Explorer synchronization tool is available. It provides now a lot more robust synchronization mechanism, especially for renaming of files on the server-side.

ADFS authentication now works regardless how long the app is running. If the authentication cookie is expired it will automatically be renewed.

There are also a lot of minor issues resolved, so download the new version now. If you have the previous version make sure that you uninstall it and install the new version manually, because there was an issue with the setup so you won’t get updated automatically.

Please update to the latest version now. DOWNLOAD HERE

To provide feedback use support (at) spsync(dot)net or the FEEDBACK button on http://spsync.net

A new version of SPSync is available

3. June 2012 15:12 by marco in SPSync, Software, SharePoint, Microsoft  //  Tags:   //   Comments (2)

SPSync gets one step closer to a final version.

The most important thing: It can now connect to SharePoint sites by using NTLM or ADFS claims based authentication. Also SPSync now uses ClickOnce so it can start without the need for administrator permissions and updates automatically. Furthermore a lot of minor fixes are included to improve the sync capabilities.

Regarding the setup process, I will include a “standard” MSI install package for the final version to be ready for enterprise automatic software deployments.

One known issue: Only HTTPS servers are supported right now. The next version should include HTTP support also.

Please update to the latest version now. DOWNLOAD HERE

To provide feedback use support (at) spsync(dot)net or the FEEDBACK button on http://spsync.net

SPSync Beta

24. May 2012 20:35 by marco in SPSync, SharePoint, Microsoft, Software  //  Tags:   //   Comments (0)

SPSync is now available as a public beta. You can download it here. It works now with large files. I’m currently working on integrating ADFS/Claims authentication. Currently only Windows authentication (NTLM) is supported.

I would like to know, what else you would expect from such an application. Please provide feedback via the feedback button on http://spsync.net or directly via uservoice here.

Sync SharePoint Document Libraries in Windows Explorer like Dropbox

10. April 2012 23:57 by marco in .NET, SharePoint, Software, SPSync  //  Tags:   //   Comments (2)

A few weeks ago I started working on a new tool. All of you know Dropbox: It has nearly zero UI and just do what it is supposed to do.

I’m working a lot with SharePoint 2010 as it is my job and I also really like it. What I don’t like is how to work with document libraries that are mainly used as a file store. Of course, I know meta data and all these stuff what you can do with SharePoint, but sometimes you just want to synchronize a folder within Windows Explorer with a document library in SharePoint.

Microsoft already created a tool for that (or better: bought it from Groove ;-) It is now called SharePoint Workspace. It can sync document libraries and also custom lists. You then have an offline copy of an entire SharePoint site. BUT: It is somewhere “within SharePoint Workspace”. You cannot define a “normal” folder on your hard disk as the sync target.

That’s why I’ve created a new tool called SPSync which is intended to close the gap.

User Interface

The UI of SPSync mainly consists of an icon in your taskbar:

image

 


It has a context menu, where you can manage all sync configurations:

image

image

 

 

 

 

 

 

A configuration consists of a name, the local folder, the SharePoint site URL, the title of the document library, the conflict handling mode and the credentials to use. If the conflict handling mode is set to manual, a balloon will popup on any conflict and you can choose what you want to do.

That’s all for now what you can configure, but I will extend it in the next weeks/months.

Technical Details

First of all: The password is stored encrypted with the Windows Data Protection API and bound to the current user. Therefore it cannot be decrypted on any other machine or by any other user on the same machine.

The communication with SharePoint is done by the SharePoint Client Object Model (Client OM). The sync core is built from scratch and contains a meta data store to also be able to handle deleted files. SPSync checks for changes automatically every 30 minutes and also actively monitors the local folder for any changes. That means local changes are sync’d immediately to SharePoint.

Currently there are no overlay icons within the Windows Explorer (like you have it for the Dropbox folder), because those Explorer Shell Extensions require a native (C++) implementation.

How to get it?

Visit http://spsync.net to get more information.

A great tool if you have more than one computer on your desk

6. April 2011 07:32 by marco in Software, Windows 7  //  Tags:   //   Comments (0)

A few years ago, I found a tool to share the keyboard and mouse of one computer with another computer. That looks like this:

image
(Source: http://synergy-foss.org/)

As you can see, the tool also runs on any platform not only Windows.

Today I have two laptops on my desk and thought about that great tool. Now I found it again. It is called “Synergy” and can be downloaded for free here. The author updated it and it works very well.

Configuration

The configuration is farely easy:
On the computer with the keyboard and mouse, start the tool, click “Configure Server” and you will get this dialog:

image

There you can drag computers around your existing one where they physical are placed.
Now save and click start.

On the other computers select “Client” and enter the hostname or IP address of the host computer. Done.

Task Spotter–A location based ToDo list app for Windows Phone 7

3. January 2011 15:40 by marco in Software, Windows Phone 7  //  Tags:   //   Comments (0)

My location based ToDo list app for Windows Phone is now available on the marketplace!

DesktopMarketplace

With this app, you can create tasks for a specific location. On the “here” page, you only see the tasks assigned to your current location.

Screen1Screen3Screen4

Download it now:

wp7_480x80_green

My first Windows Phone 7 application: MySite for WP7 - Part 1

17. November 2010 20:48 by marco in Avanade, SharePoint, Silverlight, Software, Windows Phone 7  //  Tags:   //   Comments (0)

A few weeks ago, my employer, Avanade Germany, announced an internal “Windows Phone 7 Contest”. The goal is to create a (business) app for Microsofts new Windows Phone 7 (WP7) system. I just had some ideas and decided to go with “MySite for WP7”. At least because I’m working in the “Portals & Collaboration” Service Line and I really like the new SharePoint 2010 MySite. That, and because the price for the best three apps is an Xbox 360 with Kinect. Winking smile

Overview

If you have no idea, what the SharePoint 2010 MySite is, here is a short introduction: Think about a “little” Facebook (social network) within your company. You can write status messages, see a newsfeed about your colleagues, post comments on the note boards of your colleagues, upload pictures, etc.

I know, that WP7 comes with SharePoint integration, but without a cool client for the MySite. I will try to build one (and hopefully win the Xbox).

Start with WP7

I will not give you an overview what you need to start, because there are a lot of resources to learn WP7 development. I already know .NET, C#, SharePoint and Silverlight and that’s everything you need to start. Download the Development Toolkit (for free) and start up Visual Studio.

First of all I decided to go with the Panorama Template, because it is easy to use and looks really nice. Also it supports my idea of different MySite tasks. The design-time support is great as well. If you click on the panorama page in the XAML code, the designer shows the corresponding page.

image

But before I go into much UI details, we should thought about the backend.

How to connect to SharePoint?

SharepPoint 2010 provides a web services API (WCF and legacy ASMX) to access most of the SharePoint functionality. Therefore I tried to access these services directly from the phone, but that did not work, because of two main points:

So obviously a workaround is required. Here is my idea of a “proxy service”:

image

That means, the WP7 app connects to an SSL secured WCF (silverlight-enabled) proxy service (without authentication) in the cloud. The service then connects to the SharePoint service with the provided credentials. For privacy reasons, a company that do not want to transmit sensitive data over the cloud service can host their own proxy service within their secure environment to make it accessible by their employees.

The proxy service can for example get the current status message from your MySite:

public string GetStatus(AccountCredentials credentials)
{
  var client = GetProfileServiceClient(credentials);

  string fqnUsername = credentials.Domain + "\\" + credentials.Username;
  var data = client.GetUserProfileByName(fqnUsername);

  var statusProp = (from d in data
                    where d.Name == "SPS-StatusNotes"
                    select d).FirstOrDefault();

  return statusProp.Values[0].Value.ToString();
}

I defined a class AccountCredentials which contains username, domain, password and SharePoint MySite URL. This data is entered in the WP7 app by the user. Now the proxy service is called with this data and calls the SharePoint profile service (with the URL provided) to get the current status message.

This approach is not only for communicating with SharePoint, but can also be used with other services which cannot directly be called from the phone.

Alternative to a Proxy Service: UAG

Another fairly new (at least for me) way is the Forefront Unified Access Gateway (UAG). See also this video from TechED. In the video you can see, that Microsoft requires a company to have a UAG in place to use the build-in SharePoint features of WP7. So it seems, that also Microsoft cannot use NTLM on WP7.

WP7 with UAG uses HTTPS for all communications and what is know as basic authentication. One problem why I’m currently not supporting UAG in my App is, because there are no developer resources how to integrate it in your own application. The only info you got from the video is to use signUrl.asp to get the token after authentication. If anyone has more info, please add a comment.

Learn more in part 2 of the series in a few days where I will talk about the User Interface.

Proxy Switcher – Version 3.1

19. July 2010 19:39 by marco in ProxySwitcher, Software  //  Tags:   //   Comments (0)

Es ist soweit und Proxy Switcher steht in einer komplett überarbeiteten Version bereit. Inzwischen ist auch die Version 3.0 übersprungen und die neue Version enthält eine Menge neuer Funktionen. Mehr dazu auf der Projekt Seite und im Changelog.

Nur die Group Policy Funktionen sind leider immer noch nur eingeschränkt verfügbar, stehen aber für die nächste Version ganz oben auf der Liste.

Wünsche und Fehler können wie gehabt im Forum angesprochen werden oder direkt im Bug Tracker eingetragen werden.

Proxy Switcher 3 – BETA

3. May 2010 20:46 by marco in .NET, ProxySwitcher, Software, Windows 7  //  Tags:   //   Comments (0)

Ab sofort gibt es den Proxy Switcher v3 als öffentliche Beta zum download.

DOWNLOAD HIER

Wichtig: .NET Framework 4 wird benötigt.
Desweiteren liefen die Tests bisher nur auf Windows 7.

Alle auftretenden Probleme und Vorschläge bitte hier eintragen:

http://bugs.mwiedemeyer.de

 

Ein paar Highlights:

Komplettes Re-Design (Sichtbar und im Hintergrund)
MEF als AddIn Framework
Ribbon User Interface (http://fluent.codeplex.com/)
Windows 7 Location API Integration

Windows 7 Location API – A new feature for Proxy Switcher

28. April 2010 10:53 by marco in .NET, C# Code, Microsoft, ProxySwitcher, Software, Windows 7  //  Tags:   //   Comments (2)

Overview

Currently, I’m investigating what can be improved in the new release of Proxy Switcher.

For those of you, who don’t know what Proxy Switcher is a few facts:

  • Proxy Switcher automatically set the proxy depending on your current network connection
  • Beside of that, it can set other things too. E.g.: Execute scripts, change default printer, etc.
  • Click here to go to the project site for more info

Windows 7 Sensor and Location Platform

With Windows 7 Microsoft created a new “Sensor and Location Platform”. Until now, there is not much hardware compatible with it, but this hopefully will change in the near future.
With this API, applications can easily access the available sensors. Here you can find some examples and also a “manual” location provider by clicking on a map.

For the location API, there is a cool free “software” device called Geosense. From their website:

Geosense is designed to use a hybrid mix of geolocation service providers and geolocation methods to pinpoint the most accurate location information possible - including but not limited to WiFi triangulation, cell tower triangulation and IP lookup. Source: http://www.geosenseforwindows.com/

While your laptop vendor has not yet integrated a Windows 7 compatible hardware GPS sensor, Geosense is a good compromise.

Proxy Switcher Integration

For Proxy Switcher this will become a new option for switching proxy configurations, or doing some other stuff as you can see here:

image  (click to open in a new window)

 

Code

To access the Windows 7 location API all you need is the .NET Framework 4. There is a new System.Device.dll (contained in the Client Profile of the .NET Framework). Adding a reference allows you to access the current location.

First, add the following using statement:

using System.Device.Location;

Use the following code  to get the address:

GeoCoordinateWatcher watcher = new GeoCoordinateWatcher();
watcher.TryStart(false, TimeSpan.FromMilliseconds(1000));
// Get the location, including lat, long, speed, altitude, etc.
GeoCoordinate location = watcher.Position.Location;
// Try to get the current address, including street, city, etc.
CivicAddressResolver resolver = new CivicAddressResolver();
CivicAddress address = resolver.ResolveAddress(location);

Summary

With this new functionality, Proxy Switcher is not a pure “Proxy Switcher” anymore, but a multi-functional network/location based “generic” extensible execution tool. New actions can be easily created by developers through the MEF AddIn Framework. More on this in a later post.

 

If you want to become a beta tester, feel free to contact me at “mail” at thisdomain.