The default implementation always returns Compile
Compile
protected override string GetElementNameFor(Project project, string file) { var ext = Path.GetExtension(file).ToLowerInvariant(); if (ext == ".h" || ext == ".hpp" || ext == ".h++") return "CLInclude"; else if (ext == ".rc") return "ResourceCompile"; else return "CLCompile"; }