Runtime Vs API Vs Driver version....

Hi guys,

I am getting this values in my program:

cuCtxGetApiVersion(Session.SessionContext , &version ) : 3010
cuDriverGetVersion(version); : 4000
cudaRuntimeGetVersion(&runtimeversion); : 3020

Since i have such things I can´t do anything when I launch my own kernels, cuMemcpy functions allways return error 201 :

/**
* This most frequently indicates that there is no context bound to the
* current thread. This can also be returned if the context passed to an
* API call is not a valid handle (such as a context that has had
* ::cuCtxDestroy() invoked on it). This can also be returned if a user
* mixes different API versions (i.e. 3010 context with 3020 API calls).
* See ::cuCtxGetApiVersion() for more details.
*/
CUDA_ERROR_INVALID_CONTEXT = 201,

How can I force to use context versions for driver API or runtime API, how can I solve it? I am having quite a hard time triying to solve it…

thank you guys!

Any one knows some way to manage this versions?? how to change/force them ?