우리는 C# 솔루션의 Visual Studio (2015 업데이트 3) 디버그 빌드가 모든 빌드 된 DLL과 함께 $ RANDOM_SEED $ 파일을 생성하고 있음을 발견했습니다.
파일의 내용은 단일 번호입니다. 1443972318
파일을 삭제 한 다음 다시 작성하면 파일이 재생성되는 데 다른 번호가 사용됩니다.
이 동작은 솔루션에서 단일 프로젝트 (표준 C# 프로젝트 참조/종속성 + System.Management 만있는)를 다시 빌드 할 때도 관찰되었습니다.
예 : msbuild <sln-file>
은 이 아니며은 완전한 솔루션 또는 단일 프로젝트 빌드 용으로 파일을 재생성합니다.
VS를 다시 시작하면 파일이 더 이상 재생성되지 않습니다.
이 파일 이름은 소스 코드, 게시 빌드 단계 또는 내부 종속성에서 사용되지 않습니다. Random과 RNGCryptoServiceProvider 및 외부 종속성을 포함하여 .NET Framework 클래스에 대한 의존성이 상당히 있습니다. 우리는이 모든 것을위한 완전한 소스 코드를 가지고 있지 않으므로 종속성 중 어느 것에 책임이 있는지 철저히 검사 할 수는 없습니다.
이것은 어두운 곳에서 촬영 한 것입니다. 그러나 질문은 누구나 이와 비슷한 것을 보았습니까?
편집 나는 이것이을 downvoted되었습니다 놀라지 아니에요 - 나는 종료 꽤 열려 고맙지 만 나는 현재이 문제를 재현 할 수 아니에요 그것은 잠재적으로 심각한 결과를 초래할 수 있기 때문에 (난수 생성기로 공격?) 나는 그것을 어떻게해서든지 게시했다. 제가 재현 할 수 있다면 물론 여기에서 업데이트 할 것입니다.
이름 지정 규칙이 아닌 Microsoft 파일 일 가능성이 낮습니다. 건물의 논리적 교차점과 무작위로 반복 할 수있는 무언가를하고자하는 것은 작은 것이다. 그 기계에 사용되는 단위 테스트 러너를보십시오. –
오늘도 이것을 보았습니다. 그래도 어디서 왔는지 모르겠다. –
http://serverfault.com/a/20992에서 언급 한 타사 도구를 사용했습니다. vstest.discoveryengine.x86.exe가 파일을 생성합니다. 저는 C# 클래스 라이브러리 프로젝트 하나를 사용하여 새로운 솔루션으로 repro'd했습니다. 빌드 할 필요도 없습니다. 솔루션을 열고 테스트 탐색기 창이 업데이트되기를 기다리는 것만으로 충분합니다. 정확한 exe는 : C : ₩ Program Files (x86) ₩ Microsoft Visual Studio 14.0 ₩ Common7 ₩ IDE ₩ CommonExtensions ₩ Microsoft ₩ TestWindow ₩ vstest.discoveryengine.x86.exe' –