If you have a large number of laptops with all of thier home directories using offline caching to a networked share and that share fails or is migrated then you are in deep trouble.
With several machines lots of forced GPUpdate /Yes etc just didnt do the trick. Even if you did manage to get your home directory to connect to the new server then all the registry links for applications like VS2005 still need to be changed.
After spending a lot of time trying to fix this I used 2 tools to assist. The first is a Client-Side Caching Command Line Tool from Microsoft. This includes the ability to change the share that cached files reference and the exporting of the whole or just modified versions of files in the cache to a specified location. The Microsoft KB article here
The second is a registry editing app from Macecraft software called JV16 power tools that allows you to find and replace registry entries. It found 69 entries and replaced them intelligently saving a couple of hours hunting around manually. JV16 has a suite of other useful utilities beyond find and replace as well - highly recommended! (obviously use at own risk....;)
Peter Maddern posted this entry about OneNote 2007 searching in the Microsoft.Public.OneNote discussion (Note this is pre Beta2TR) For a couple of days, searching my newly downloaded OneNote 2007 multiple
notebooks using Windows desktop search 3 didn't work for me at all. I was
able to search within the page I was in but not in multiple notebooks. I
tried every combination of actions to fix this, for example, uninstalling
WDS3, rebooting and reinstalling as well as repairing OneNote 2007.
I did the following and it fixed things for me:-
Control panel
Indexing options
Modify
Deselected all folders except my OneNote folders (I figured that I only
wanted to index my OneNote folders - indexing my whole hard drive was
unnecessary and too time-consuming and in any case, I use Yahoo desktop
search for that)
Advanced
File types
Scroll down to file type ".one"
Select "Index Properties and File Contents" in the button selection area at
the bottom
Close
I left indexing to run overnight.
Result - full OneNote indexing now worked well and was extremely fast too!
Prior to this procedure I had selected "Index Properties and File Contents"
and thought that this selection applied globally to all file types. Then I
realised you have to make that selection for each specific file type.
Graphite is a drawing program that allows you to generate Visio-style diagrams using digital ink. I use Visio a lot in my work and, frankly, it's not a very Tablet PC-friendly application. Graphite looks like a great way to augment Visio with and ink-friendly environment for capturing ideas quickly.
More information can be found on the Graphite blog.
Visual Xpath is a free Visual Studio addin that helps you test your XPATH statements against a source XML file.
One of my current projects is to use Microsoft SSIS to import a complex type XML file into SQL. As I only need certain types and data from the XML file, an XPATH query using the SSIS XML Task seems like a good idea. Trouble is I have to learn XPath. I'll add any good references I find to this post.
A good allround tool for XML work is http://www.stylusstudio.com
This utility takes ASCII source code and performs the following operations
- It substitutes HTML entities for all non-ascii characters and HTML reserved characters
- It colour-codes the SQL according to the classic style of the Query Analyser
- It substitutes hard spaces for tabs
- it converts all SQL Keywords to upper case
All you need to do is to paste your code in the SQL window, and the results are rendered in the results window. You can click between the windows using the tabs.
SELECT c.*, s.* FROM tblasd c left outer join tblS s on s.St = c.Ct where Office ='London' order by s.St, c.ca
Becomes......
SELECT c.*, s.* FROM tblasd c LEFT OUTER JOIN tblS s ON s.St = c.Ct WHERE Office ='London' ORDER BY s.St, c.ca
VNC (an abbreviation for Virtual Network Computing) is a great client/server software package allowing remote network access to graphical desktops. http://www.tightvnc.com/intro.html
Connecting to multiple IEEE 802.11 networks with one WiFi card
VirtualWiFi is a virtualization architecture for wireless LAN (WLAN) cards. It abstracts a single WLAN card to appear as multiple virtual WLAN cards to the user. The user can then configure each virtual card to connect to a different wireless network. Therefore, VirtualWiFi allows a user to simultaneously connect his machine to multiple wireless networks using just one WLAN card. This new functionality introduced by VirtualWiFi enables many new applications, which were not possible earlier using a single WLAN card.
Full article: http://research.microsoft.com/netres/projects/virtualwifi/
Upgrade a server or virtual server To upgrade your server to Microsoft Windows SharePoint Services, run Setupsts.exe. Running Setupsts.exe upgrades your server and the default virtual server. If you have additional virtual servers to upgrade, you can upgrade each virtual server individually by using the upgrade operation with the Stsadm.exe command-line tool.
How?
Click Start, point to All Programs, point to Accessories, and then click Command Prompt. Navigate to the C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\60\Bin folder. Type stsadm.exe -o upgrade -url <URL>, where <URL> is the URL of the virtual server you want to upgrade.
After finding a very good File Sync and pier to pier application for normal files. Here is a list of items which take this to the next level. Images, Video and even TV can be streamed from your home machine to authorised users via the Net. (Microsoft is also rumoured to be developing this feature on their Windows Media platform)
www.orb.com
Hardware solutions:
On instaling an Iomega 250Gb network (1Gb) external harddrive I was surprised that it had access to a service called Foldershare.
This is an online service that allows Folders to be sync'd and files accessed remotely from your home PC or device. Because the Iomega has the FolderShare software built in it just works.
HOWEVER Microsoft found this such a good piece of technology that they have bought it and the service is to terminate. Presumably some form of Foldershare will appear in MSN Live, however until it does here are some links to other apps that do a similar thing. (None of them seem to rate as highly as FolderShare)
BelSync
BearShare Pro 4.0 Full review
Morpheus 2.0
Qtraxmax 1.0.4
PC Mag article (full version)
Today, however, there are any number of inexpensive, Web-based applications that let you move files between point A and point B. You can use a remote access tools like Laplink Everywhere or 01 Communique's I'm InTouch. And if you'd like to swap files with friends, family, and colleagues, you can use private peer-to-peer apps like Grouper, Qnext, or ShareDirect. Then there are apps like BeInSync and ByteTaxi's FolderShare. With these tools, you can easily swap files among your own machines and also with friends and family. And you can automatically synchronize files and folders across multiple machines, avoiding manual transfers entirely. If you change a file on one machine, it's automatically changed on all the others.
Note: Updated 1st April 2006 for SP2
I needed to create an eventsync in Windows Sharepoint Portal 2.0. This should have been reasonably straight forward, however with the scenario I found myself in it has taken 3 days of research and pondering to get the job done.
This is my environment and I explain after that how I managed to do it.
Dev Machine XPSP2, VS2005 Dev Server W2k3, Sharepoint Services 2.0
- First thing was to copy the Microsoft.SharePoint.dll from the Server to the Dev Machine so a reference could be made to it.
- Create a class library and add a reference to the sharepoint dll
Example using C#
using Microsoft.SharePoint;
namespace iwaszko.com.STS_EventHandler { public class BaseEventSync : Microsoft.SharePoint.IListEventSink { void IListEventSink.OnEvent(Microsoft.SharePoint.SPListEvent evt) { DispEvt(evt); } } }
- Strong name
Because a strong name is needed for the assembly then in VS2003 you would normally had the path to an assemblykey as an assembly attribute: Such as [assembly: AssemblyKeyFile("Local_Drive:\\DocLibHandler.snk")]
However it is different for VS2005. You need to open the properties of the Project->Signing, tick the sign the assembly check box and add a path to the strong name keyfile. (you can create a new Strong name key file in this section if required)
- Build your project and the next stage is to add your dll to the servers GAC. You can do this by dragging you dll into the c:\windows\assembly directory
However this is where things started to go wrong !
- Firstly make sure you have dotNet 2.0 installed on the server. Adding a dotNet 2.0 assembly to a machine without it gives and odd and unhelpful error.
(I found a reboot of the server after installing dotNet 2.0 helped as well but this may not be required)
- Normally, to configure Sharepoint Services to handle events with your assembly you just need to enter its information into the document library advanced settings, however there are a few steps you need to watch out for !
a) Because VS2005 creates a dotNet 2.0 assembly and Sharepoint 2.0 is working on dotNet 1.x you cant register your event handler
I didnt want to revert to VS2003 so I tried to see if you could use dotNet 1.x with VS2005 - according to Microsoft you cant !
"Visual Studio 2005 ships with version 2.0 of the .NET Framework. Visual Studio 2005 does not allow you to choose to support version 1.0 or version 1.1 of the .NET Framework. You can only create projects that support version 2.0." Details here
b) Thus I need to make Sharepoint on the Dev server run on dotNet 2.0 1) You must make sure that the Sharepoint 2.0 SP2 upgrade is installed. This will allow Sharepoint to run on dotNet 2.0
2) Open IIS Administrator, open the properties on the Sharepoint Web Site, Choose the ASP.Net Tab, select 2.0.x as the ASP.Net version. Note: This will temporarily break you sharepoint installation, but dont panic!
If you try to access the site you will recieve the following message: This Windows SharePoint Services virtual server has not been configured for use with ASP.NET 2.0.50727.42. For more information, please refer to Knowledge Base article 894903 at http://go.microsoft.com/fwlink/?LinkId=42660.
2) Because of the different security model in dotNet 2.0 you must run the following On the Sharpoint server [full details here]: stsadm.exe –o upgrade –forceupgrade –url http://URLOftheVirtualServer
3) Register and install your dotNet 2.0 assembly into the EventHandler section for the Document Library you require. (Information below from Sharepoint SDK)
- On the Virtual Server General Settings page in SharePoint Central Administration, select On in the Event Handlers section to enable use of event handlers on the virtual server.
Note: To implement the handler in a document library, versioning must be enabled on the Document Library Settings page for the library.
- From a view of the document library to which you want to attach the event handler assembly, click Modify settings and columns, and then click Change advanced settings on the page for customizing the document library.
- On the Document Library Advanced Settings page, type the strong name for the assembly in the Assembly Name box. For example,
DocLibHandler, Version=1.0.0.0, Culture=Neutral, PublicKeyToken=0fafac2a0cc92888. You can get the values used in the strong name by right-clicking the DLL of your assembly in the Local_Drive:\WINDOWS\assembly directory and then clicking Properties on the shortcut menu.
- Type the fully qualified, case-sensitive name of the class in the Class Name box, which in this example is
DocLibEventHandler.DocVersionHandler.
- Reset IIS by typing
iisreset at a command prompt.
I can now use VS2005 with dotNet 2.0 dll's handling the events for Sharepoint Services site which is running on dotNet 2.0 - The best of all worlds - its just a shame these things take so long the first time around. So if you need to do something similar I hope this helps.
Testing Office 12 is both a delight and a challenge. Its integration into Sharepoint 3.0 is fantastic.
Reviews on office 12 are available at the following:
Andre de Costa
Paul Thurrott's
Ed Bott
Ive found a utility that allows you to drag and drop emails from Outlook into STS and SPS site document libraries and it works a dream.
It consists of a webservice that runs on the server and a dotNet client that adds into Outlook, both use dotNet 1.1
Now I know that Office12 might do something similar, but its a long way off, so until then this works and its FREE from a UK company. at http://www.tesl.com
Update
Release 3 (Beta 4):
Note: we have released this, though still in beta as we haven't tested as much as we would like to, because it is stable and we have high demand for the new features. New features include:
The ability to upload mail messages to announcement lists and discussion boards. The mail body is used as the item body text and the mail message is added as an item attachment.
Support for dragging and dropping many objects, not just mail messages. E.g. attachments and files from windows explorer.
The ability to run in the system tray so that you can use it outside Outlook.
Extension points so that developers can add support for custom metadata
Various bug fixes
full info at http://www.dasblog.info/
In the <dir>\siteconfig directory update the following 2 config files.
Setup basic information in site.config - such as
<Title>Mark Iwaszko's Blog!</Title> <Subtitle>An IT Liverymans ramblings</Subtitle> <Theme>BlogXP</Theme> <Description /> <Contact>mark@iwaszko.com</Contact> <Root>http://blogs.iwaszko.com/mark/</Root> <Copyright>Mark Iwaszko</Copyright>
Setup security information in siteSecurity.config
<User> <Name>user</Name> <Password>password</Password> <Role>admin</Role> <Ask>true</Ask> </User>
Install instructions readme.rtf (37.21 KB)
DAEMON Tools is a virtual cd/dvd-rom emulator. It is able to emulate nearly all known copy protections on the market today.
Both 32bit and x64 versions have beeb released. Download here
Windows Live is based on one simple idea: that your online world gets better when everything works simply and effortlessly together. So all the things you care about online - your friends, the latest information, your e-mails, searching the Net - all come together in one place. Windows Live is a brand new Internet experience designed to put you in control. And this is just the beginning-you'll see many more new products in the coming months.
When MSRS exports to Excel it creates a new worksheet for each page, which is great, however it would be even better if you could control the naming of each of those pages. Apparently you cant do this yet.
Info at microsoft.public.sqlserver.reportingsvcs
|
In summary to query SMS from the Admin fron end you enter a psuedo language called WQL. This is translated, by SMS into SQL and the original WQL and its translated SQL is stored in an SMS table called Collection_Rules_SQL.
Thus you can learn the mapping that SMS is doing from WQL to SQL and if required update the SQL directly.
------------------------------------------------------------------------------------------------------
The link to the source of this page seems to be broken, so a copy of the article is below: |
 | By: Dave Fuller Posted On: 6/12/2003
When you create dynamic Collections in SMS using query based rules, you have to define the query using WQL. This is fine in most circumstances, but as you have probably already found, WQL is nowhere near as rich in functions as SQL and whereas a query could be created using SQL to get the result set you want, you just can’t get the same from WQL.
Consider the scenario where you want to create a Collection that contains all workstations that have not reported Hardware Inventory for more than 14 days. To perform the query in SQL, you could use the GetDate() function to return the current date and use the DateDiff() function to compare the current date with the LastHWScan date and return all workstations where this value was greater than 14, as demonstrated below.
select sys.ItemKey, sys.DiscArchKey, sys.Name0, sys.SMS_Unique_Identifier0, sys.Resource_Domain_OR_Workgr0, sys.Client0 from System_DISC AS sys JOIN WorkstationStatus_DATA AS wks on sys.ItemKey = wks.MachineID where DATEDIFF(dd,wks.LastHWScan,GetDate()) > 30
When you create a Query Based Rule in the SMS Administrator console, SMS stores the WQL and also translates the WQL into a SQL query. The WQL and SQL are stored in the Collection_Rules_SQL table, which uses the CollectionID and query index as key. When SMS performs Collection Evaluation, it uses the SQL query in the SQL column of this table rather than the WQL. Therefore, if you create a Query Based Rule in the console, but don’t set any criteria, you can then modify the translated SQL to whatever you like, and the Collection membership will then be evaluated based on that query. As long as you don’t change the WQL by editing the Collection in the SMS Admin Console, this provides a useful workaround.
Here’s how you do it: 1. Create the Collection in the SMS Administrator Console. Create a single Query based rule, but don’t define any criteria. 2. Determine the Collection ID (you could run the WQL query ‘select CollectionID from SMS_Collection where name = ‘<collection name>’’) 3. Using SQL Query Analyser, run the following query to update the SQL query rule for the new Collection Update Collection_Rules_SQL set SQL = ‘select SMS_R_System.ItemKey, SMS_R_System.DiscArchKey, SMS_R_System.Name0, SMS_R_System.SMS_Unique_Identifier0, SMS_R_System.Resource_Domain_OR_Workgr0, SMS_R_System.Client0 from System_DISC AS SMS_R_System JOIN WorkstationStatus_DATA AS wks on SMS_R_System.ItemKey = wks.MachineID where DATEDIFF(dd,wks.LastHWScan,GetDate()) > 30’ where CollectionID = <CollectionID> 4. Update the Collection membership and the Collection will now contain all machines that have not reported inventory within the last 14 days. Be sure not to modify the query using the Administrator console, or the SQL will be overwritten!
A short but very illustrative example of using the output of and SSIS package as the data source for a Reports Services Report
Trond Brande from Norway presenting SQL Integration Services (SSIS) and DataReader Destination. The streaming version is here, and the downloadable version is here, or available via podcasting our RSS Feed.
| |