File.WriteAllText
, Request.Files["filename"].SaveAs("out")
등과 같은 IO 작업을 호출하는 모든 코드를 찾는 방법이 있습니까?C# 코드의 모든 파일 IO 작업 찾기 (정적 분석을 통해)
지금은 단지 예를 들어 그런 식으로 파일을 읽기/쓰기 가능한 모든 일반적인 방법을 grep을 할 경우 :
나는 모든 가능한 방법 파일을 생각할 수 없기 때문에이 만족스럽지grep 'SaveAs' -I -r . -l | grep "\.cs"
수 읽고 쓸 수 있어야합니다. 어쩌면 리플렉션을 통해 또는 컴파일 된 바이너리에서 시스템 호출을 분석하여 수행 할 수 있습니까? 어떤 아이디어?
EDIT : 메서드 A가 메서드 B를 호출하고 메서드 B가 메서드 C를 호출하고 메서드 C가 파일 연산을 수행하면 해당 코드도 식별되는 것이 좋습니다. 그러나 IO를 직접 호출하는 문제를 단순화하는 것으로 충분합니다.
@Rawling 오른쪽, 내 코멘트를 삭제했습니다. – smiech
메서드 A가 메서드 B를 호출하고 메서드 B가 메서드 C를 호출하고 메서드 C가 파일 작업을 수행하면이 목록에 A가 필요합니까? –