Home > CRM Deployement, MSCRM General > VPC Development Environment for Microsoft Dynamics CRM 3.0 Projects

VPC Development Environment for Microsoft Dynamics CRM 3.0 Projects

After collapse of my QA server, I have been searching for various developments environment options for Microsoft Dynamics CRM 3.0 projects. As per my findings and discussion with other peer developers, most of them are using Virtual PC images for their development tasks. This is also recommended by Microsoft and a download at Microsoft website regarding VPC image is also available.  This will benefit in various ways: 

  1. Developers will not be dependant on other developers in performing their Customization tasks at the same time. In this way overlapping of customizations done by developers can refrained.
  2. In case of multiple clients, it’s the ideal option as we are not going to setup our QA server and Development Server for every client.
  3. Building new test environment will be a Zero copy deployment.
  4. One has the options to cut down Development Server cost by just adding more RAM to developer PCs.
  5. One can test various components developed by other vendors with no impact over our QA server and Development server.
  6. One can test various integration scenarios with no impact over QA and Development Server.
  7. Maintaining Microsoft Dynamics CRM server would be just as easy as importing and exporting Customizations to fresh VPC image.

If you have any issues regarding VPC please do comment. Thanks!

  1. Susan
    June 2, 2007 at 11:25 am

    Hello Ayaz,

    I have worked on VPC images & they are quite slow.
    I think doing development on VPC images will greatly hamper the speed of development being done.

    Kindly suggest me as whether to go for .Net development over VPC images.


  2. June 4, 2007 at 5:01 pm

    Hi Susan,

    You need a good PC to run VPC image of MS CRM. You must have at least 1 GB ram vacant for your VPC to run smoothly. Although its a bit slow but in this way you can have better control at your development specially when developing applications for multiple client.

    When developing SDK code, do it in VS.NET at your development machine rather to go for VPC. In this way you can greatly enhance your speed.

    Hope this helps,


  3. Susan
    July 13, 2007 at 9:54 am

    Hello Ayaz,

    I am working on a CRM VPC image.
    I have done the development work at my development CRM server
    & now I want to import the customisation file into
    the VPC environment, as I need to give a demo to my client.

    I am not able to export the customisation file.
    It gives me a SQL Time out error.
    I have tried doing it several times.
    The size of the XML File is only 864kb which is well supported.

    I do not know what to do.

    Please help me out….


  4. July 13, 2007 at 4:15 pm

    Hi Susan,

    please try the following tips:

    1) install CRM Update Rollup 1
    2) Install all Windows/CRM Updates
    3) install CRM Update Rollup 2

    Moreover, do you have enough RAM for CRM to import customization? It should be at lease 1GB available to CRM Server work properly. 512 MB Free RAM may work.

    Hope it helps,


  5. Susan
    July 17, 2007 at 6:50 am

    Hello Ayaz,

    I am not very clear, do I need to install updates inside the VPC image environment where I am working.????


  6. July 17, 2007 at 5:03 pm

    Yes, you need to install all updates over VPC too. If you have downloaded latest version of VPC from Microsoft Site then you need not to install MSCRM updates.



  7. Susan
    July 26, 2007 at 10:48 am

    Hi Ayaz ,

    Thanks I have installed the updates & everything seems to be working well.
    But now I am having a problem in creating a custom entity using CRmSdk in the VPc environment.
    My code works well in my local system but when I import the customisation & .Net application in VPC environment i get an error.
    It says Server unable to process request.

    Please help me out.
    I have mailed the error details from the Trace Directory…….

    # CRM Tracing Version 1.1
    # LocalTime: 2007-07-26 14:15:45.0
    # Categories:
    # Schedule: Daily
    # CallStackOn: False
    # ComputerName: DANUBECRM
    # CRMVersion: 3.0.5300.0
    [2007-07-26 14:15:45.0] Process: w3wp |Thread: 5672 |Category: Exception |User: 56eeda2e-d27f-da11-b5d0-0003ff0bbe00 |Level: Error | CrmObjectNotFoundException..ctor
    at CrmObjectNotFoundException..ctor(BusinessEntityMoniker moniker)
    at BusinessProcessObject.Retrieve(BusinessEntityMoniker moniker, EntityExpression entityExpression, ExecutionContext context)
    at BusinessProcessObject.Retrieve (BusinessEntityMoniker moniker, EntityExpression entityExpression)
    at UserQueryWebService.Retrieve(Guid id, ColumnSetBase columnSet)
    at RuntimeMethodInfo.InternalInvoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean isBinderDefault, Assembly caller, Boolean verifyAccess)
    at RuntimeMethodInfo.InternalInvoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean verifyAccess)
    at RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
    at LogicalMethodInfo.Invoke(Object target, Object[] values)
    at WebServiceHandler.Invoke()
    at WebServiceHandler.CoreProcessRequest()
    at SyncSessionlessHandler.ProcessRequest(HttpContext context)
    at CallHandlerExecutionStep.System.Web.HttpApplication+IExecutionStep.Execute ()
    at HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
    at HttpApplication.ResumeSteps(Exception error)
    at HttpApplication.System.Web.IHttpAsyncHandler.BeginProcessRequest(HttpContext context, AsyncCallback cb, Object extraData)
    at HttpRuntime.ProcessRequestInternal(HttpWorkerRequest wr)
    at HttpRuntime.ProcessRequest(HttpWorkerRequest wr)
    at ISAPIRuntime.ProcessRequest(IntPtr ecb, Int32 iWRType)
    >Crm Exception Message: userquery With Id = ac0be63a-1401-4f71-89ad-9d0a10e61a90 Does Not Exist, ErrorCode: -2147220969

  8. Alberto
    October 16, 2009 at 9:26 pm

    Hi Ayaz,

    We have a running MSCRM 3.0 and need to setup an isolated environment to develop and test some customizations and in the process to train new people to maintain them in the future.

    We have ASP/.Net trained programmers but the initial CRM deployment was made by some other company.

    We would like to start a new development setup, import current customizations and start from there our develoment. Later, when changes are aproved, deploy them to the production environment.

    Ready-to-run VPC solutions we could find around there seem outdated and are set to expire last year´s end.

    We suppose we´ll have to deploy a new server (perhaps on a VPC) but we´re no t sure about the impact it could have on the current setup. We´re not sure about AD, SQL Databases, Exchange and licensing issues we may encounter on the road ahead.

    Is there any hint you could give us ?

    Thanks a lot in advance !!


  9. October 19, 2009 at 5:22 am

    Hi Alberto,

    The MS VPC expires yearly so its not a good idea to use that VPC as Dev or Test Environment.

    You have to build a new VPC/Server for test/dev environment. If you are a Microsoft Partner then you will have licences for Microsoft CRM to use in test and dev environemnt otherwise you need lisence and need to talk to your regional Mcirosoft Contact to find out licence prices.

    You can use Same or Different AD.. no effect. Different ADs is always good … Managemability.

    You need to use diferent Databases and do not use same database server as of production as it will harm the performance of prod server. CRM uses SQL a lot so always install test or dev on different Servers.

    For Dev environemnt you can use Standalone Installation. Means all(CRM/AD/SQL/Exchange) in one machine.

    Licensing is always complex and depends on regions so always call Local MS agent or MS partner to find out licencing issues.

    Hope this helps

  10. Alberto
    October 19, 2009 at 3:05 pm

    Thank Ayaz,

    I´ve seen some sample scenarios for MSCRM 4.0 dev env deployment on MSDN (http://msdn.microsoft.com/en-us/library/ee294457.aspx)

    In your oppinion, are these scenarios applicable to CRM 3.0 ? Is there any additional considerations regarding CRM 3.0 ? Any CRM 4.0 characteristic not applicable to 3.0 ?

    Once we setup the developmemnt environment. Is just a matter of importing the customizarions XML and backup-restoring the SQL database from production to dev environment ?

    Thanks in advance !


  11. October 20, 2009 at 3:59 am

    Hi Alberto,

    CRM 4 is a multi tenent plateform. You can have morethan organization in one crm server deployement. You have the option to import and export organizations. (Organization = one full crm3 deployement)

    So keep in mind the multitenancy diff. Rest of all is fine.

    One more consideration is: you have to keep the Web route directory with you in crm3 and any changes to ISV/Sitemap needs to be manually backup. While in crm 4 ISV and Sitemap are also a part of organization database.

    Any custom code (Workflows/Plugin) needs to be backed up and moved during rollout.

    CRM Webservice Accesspoint needs to be reconfigured/updated after rollout.

    Any custom report developed needs to be rolled out.

    Hope this helps,



  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: