2009-04-17 4 views
2

У меня есть старый профессор профессора, который требует, чтобы мы распечатали весь наш исходный код проекта для его просмотра. Я пишу это приложение в VS 2008, и это решение содержит веб-приложение C# и несколько библиотек классов (включая, вероятно, 100 файлов).Лучший способ для печати .NET Исходный код

У кого-нибудь есть опыт работы с хорошим методом печати многих исходных файлов, подобных этому? Я сомневаюсь, что вы можете принять решение в Kinkos ...

ответ

2

Напишите макросы в VS.

+0

Это, вероятно, самый лучший ответ, хотя он должен быть разработан на. Простым макросом для печати текущего документа является .DTE.ExecuteCommand («File.Print»). Добавьте цикл, чтобы просмотреть все файлы в проекте; откройте файл; сделайте печать; затем закройте файл. –

2

Я бы написал быстрый скрипт, чтобы добавить все исходные файлы вместе в один текстовый файл. Включите «перерывы», которые включают пути и имена файлов, чтобы разграничить различные исходные файлы. Затем просто распечатайте полученный файл.

Этот метод позволит сократить время/отходы бумаги.

4

Я тестировал эти 2 пакетных файла на моей системе XP против моей папки проекта, и это сработало.

Пакетный файл 1 - обновление для указания правильного пути - запустите этот файл после сохранения обоих пакетных файлов. Я хотел бы сохранить этот как doit.bat:

for /f "tokens=*" %%a IN ('dir /b /s "c:\temp\myrootcodefolder\*.*"') do call allmycode.bat %%a %%~xa 

Пакетный файл 2 - Update, чтобы включить любые расширения, нужно, что я не перечислял. Обязательно, чтобы сохранить как allmycode.bat

if %2.==. goto :END 

if %2==.vb goto :OUTPUT 
if %2==.cs goto :OUTPUT 
if %2==.aspx goto :OUTPUT 
if %2==.txt goto :OUTPUT 
if %2==.config goto :OUTPUT 
if %2==.asax goto :OUTPUT 
if %2==.asmx goto :OUTPUT 
if %2==.skin goto :OUTPUT 

GOTO :END 

:OUTPUT 
echo. >> allmycode.txt 
echo. >> allmycode.txt 
echo ============================================ %1 >> allmycode.txt 
echo. >> allmycode.txt 
type %1 >> allmycode.txt 

:END 
0

Возможно больше работы, чем вы готовы вложить в это, но LaTeX вместе с Listings пакета предоставит вам пейджинг, прогрессивное форматирование, номера строк и т.д. В том числе источника файлы кода затем должны добавить такие заявления, как:

\lstinputlisting{class1.cs} 
\lstinputlisting{class2.cs}