先根据题意可知原点到直线mx+ny-4=0的距离大于等于 2求得m和n的范围可推断点P(m,n)是以原点为圆心,2为半径的圆内的点,根据圆的方程和椭圆方程可知圆x2+y2=4内切于椭圆,进而可知点P是椭圆内的点,进而判断可得答案.
【解析】
因为直线mx+ny=4和圆x2+y2=4没有公共点,
所以原点到直线mx+ny-4=0的距离d=>2,
所以m2+n2<4,
所以点P(m,n)是在以原点为圆心,2为半径的圆内的点.
∵椭圆的长半轴 3,短半轴为 2
∴圆x2+y2=4内切于椭圆
∴点P是椭圆内的点
∴过点P(m,n)的一条直线与椭圆的公共点数为2.
故选D.