return value of cuModuleload?

I tried to load a PTX file into a module by the driver API, all things goes well until I want to launch it,

flag=cuLaunchGrid(vec,threadsPerGrid,1);

			switch (flag)

			{

				case CUDA_SUCCESS:

					printf("CUDA_SUCCESS:	%d\n",CUDA_SUCCESS);

					exit(0);

					break;

				case CUDA_ERROR_DEINITIALIZED:

					printf("CUDA_ERROR_DEINITIALIZED:	%d\n",CUDA_ERROR_DEINITIALIZED);

					exit(0);

					break;

				case CUDA_ERROR_NOT_INITIALIZED:

					printf("CUDA_ERROR_NOT_INITIALIZED:	%d\n",CUDA_ERROR_NOT_INITIALIZED);

					exit(0);

					break;

				case CUDA_ERROR_INVALID_CONTEXT:

					printf("CUDA_ERROR_INVALID_CONTEXT:	%d\n",CUDA_ERROR_INVALID_CONTEXT);

					exit(0);

					break;

				case CUDA_ERROR_INVALID_VALUE:

					printf("CUDA_ERROR_INVALID_VALUE:	%d\n",CUDA_ERROR_INVALID_VALUE);

					exit(0);

					break;

				case CUDA_ERROR_LAUNCH_INCOMPATIBLE_TEXTURING:

					printf("CUDA_ERROR_LAUNCH_INCOMPATIBLE_TEXTURING:	%d\n",CUDA_ERROR_LAUNCH_INCOMPATIBLE_TEXTURING);

					exit(0);

					break;

				case CUDA_ERROR_NOT_FOUND:

					printf("CUDA_ERROR_NOT_FOUND:	%d\n",CUDA_ERROR_NOT_FOUND);

					exit(0);

					break;

				case CUDA_ERROR_OUT_OF_MEMORY:

					printf("CUDA_ERROR_OUT_OF_MEMORY:	%d\n",CUDA_ERROR_OUT_OF_MEMORY);

					exit(0);

					break;

				case CUDA_ERROR_FILE_NOT_FOUND :

					printf("CUDA_ERROR_FILE_NOT_FOUND :	%d\n",CUDA_ERROR_FILE_NOT_FOUND);

					exit(0);

					break;

				default:

					printf("flag:	%d\n",flag);

					exit(0);

			}

The above codes are written to determine what the error is,

I got to default branch and flag is 400,why I got such a strange value,what does “400” mean???

CUDA_ERROR_INVALID_HANDLE



N.