Neil is right. New objects will work in the MSAccess workspace factory in some cases. For exampl,e you could create a new featurelayer, set its featureclass, name, symbols, etc. even save it as an lyr file, no problem. Try adding that layer to an ArcMap running in a different process, many many problems. If you are only interacting with a object in the local MSAccess memory space, new is the way to go. Technically if you are just calling some method with literal values, strings, integers, booleans, everything should be ok because you are not passing references to objects so the values get copied to the new process. If the object has to interact with objects in another memory space, such as ArcMap, ObjectFactory is the only way to go. You don't have the code posted but I suspect you create some object that interact with the pagelayout, if you create those objects in the MSAccess process, they have to go cross process to ArcMap to get the pagelayout, that is when bad things happen.