Thursday, April 26, 2012

Change password in windows 7 Biztalk, SSO, etc.

If you change your windows password and use this account for SQL/Biz/Enterprise SSO then you'll need to change it in a few places. I learned this when I tried to delete an application in Biztalk and got this error; 


"could not contact the sso server biztalk" and "Check that SSO is configured and that SSO Service is running on that server".


Changing your password in Enterprise SSO involved opening Enterprise SSO Admin Config under All Programs and adding my local box as the Server, and then changing the password. I don't remember where exactly you change your password but i just clicked around some. Real scientific like. You should Enable / Disable the Enterprise SSODB in this snap in as well.


To change your password in Biztalk just double click on the in process host in Biztalk and click configure. 


I recommend restarting things at this point, and if you still don't solve whatever SSO/Biz problem you're having then restart your box.


Another thing that is helpful to try if your password hasn't been changed recently is to get a dos prompt with admin privs and CD to "C:\Program Files\Common Files\Enterprise Single Sign-On"  then 
Type: ssomanage -server [SSO Server Name Here]

Wednesday, April 18, 2012

Biztalk applications sharing a resource.

When using Biztalk 2010 and adding two or more applications at a time that use the same .dll, some care should be taken. The thing I have learned more than once is that when a .dll is added as a resource to one application, that application adds it to the GAC(you are given the option of specifying when this happens under 'add resource', but it does happen at least by the time the application is started). When the .dll is in the GAC there will be no need(nor will there be the option) to add this .dll resource to the other applications. So it seems to me you must choose which application adds it and the rest will just have to make do, assuming its there. I believe adding a reference from the application that doesn't have the .dll in its resources to the application that owns this .dll is probably the way you should actually do this. It can feel like overkill but actually this makes a good bit of sense to me the more I think about it. 

Thursday, April 12, 2012

wait for msiexec to finish

If you are trying to use msiexec the windows installer, my experience has taught me that it immediately returns command to the user as soon as it starts executing. This is a problem in a script that depends on the install being done. If you want control to be returned only if the install is complete then try Start-Process. I didnt get all the way through the documentation for it but i did get as far as solving my problem;


msiexec /i "SSOMMCSnapInSetup.msi" /qr /log somelog.txt
returns right away but


Start-Process -FilePath msiexec -ArgumentList /i, "SSOMMCSnapInSetup.msi", /qr, /log, somelog.txt -Wait
only returns after the install is finished.