Every CF developer knows and uses the “Copy if newer” option from time to time, when deploying on Compact Framework. This way the deployment is a little bit faster. Since I tried to do some C# OpenGL ES stuff on my HTC Touch Diamon as a private project, I came across a real annoying bug. Visual Studio 2008 shows an error during deployment of the:

libGLES_CM.dll (I placed it as a “Content” file inside the project)

The funny thing is the error varies from one deployment to another, top error messages are:

“An operation was attempted on something that is not a socket.”

“Connection has been closed gracefully”

“Connection forcibly closed by remote host”

No search brought a solution to this bug, till after some “testing” (I used my DPD = drinking/programming/drinking method again ;)).
If you switch from “Copy if newer” to “Copy always” the errors are gone.