12.07.2015 Views

20 TIPS PARA Vstudio .net 1) Visual Studio actúa como ... - Willy .Net

20 TIPS PARA Vstudio .net 1) Visual Studio actúa como ... - Willy .Net

20 TIPS PARA Vstudio .net 1) Visual Studio actúa como ... - Willy .Net

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

En efecto, si arrastramos un ejecutable a la ventana del Explorador de Soluciones de <strong>Visual</strong><strong>Studio</strong> .NET (o lo seleccionamos mediante "Añadir Referencia") y posteriormente hacemos dobleclic sobre él, el IDE lo "destripa", ofreciéndonos la posibilidad de editar sus iconos, menús, tablasde recursos, e incluso su información de copyright, tal y <strong>como</strong> se ve en la figura adjunta.¡Ah! y si seleccionamos cualquiera de estos elementos podemos sustituirlos por los equivalentes.NET que tengamos en la Caja de Herramientas..


2) Ventanas acoplables: Más que un truco es una característica del entorno, pero esimportante: Acostumbrarse a manejar el entorno de ventanas acoplables nos puede dejartoneladas de espacio libre para el código fuente (gracias a las marcas ). También otro detallese agradece: cuando hacemos doble clic en una de las ventana acoplables se presenta en sutotalidad en el centro de la pantalla (útil en presentaciones y clases sobre todo), y un nuevodoble clic la devuelve a la posición en que se encontraba.3) Llamar a un documento editable o a una página ASP.NET o HTML directamente, desdela línea de comandos: <strong>Visual</strong> <strong>Studio</strong> permite ser invocado desde la línea de comandosmediante la opción ejecutar de Menú de Inicio, pasándole <strong>como</strong> argumento una página HTML oASP.NET. El IDE mostrará la página en edición, sin pertenecer a ningún proyecto.Ej: Menu Inicio/Ejecutar: devenv.exe \página.htm ó incluso devenv.exe ...Y cuando tenemos que hacer una presentación o clase, otra opción permite seleccionar eltamaño del Tipo de Letra desde la línea de comandos. Por ejemplo: devenv.exe /fs 14,selecciona tipo de letra de 14 puntos.4) Abrir un ensamblado con otros editores: Examinador de Objetos, Editor Binario, etc.Podemos abrir un ensamblado con diferentes editores, incluso si estamos trabajando en elproyecto al que pertenece: basta con seleccionar "Ver todos los archivos" en la Ventana deSoluciones, y seleccionar el EXE/DLL com botón derecho/ Abrir con... Nos saldrá una ventanacon todos los editores que el objeto admite: incluso podemos seleccionar otros objetosadicionales, <strong>como</strong> el excelente visor de clases de Lutz Roeder. La ventana es la siguiente:5) El editor de código fuente es visualmente sensible a las directivas #debug y #traceTampoco es un truco, sino una característica, pero está muy bien: Si usamos esas directivas, elcódigo fuente correspondiente que no se vaya a ejecutar se pone en gris automáticamente.IntelliSense a tope...6) El Cuadro de Herramientas <strong>como</strong> depósito de código: No sólo podemos crear nuestraspropias fichas en el Cuadro de Herramientas, sino que funcionan <strong>como</strong> almacenadores de


código. Si marcamos una sección de código y posteriormente la arrastramos a nuestra ficha o ala General, queda almacenado allí <strong>como</strong> elemento general de <strong>Visual</strong> <strong>Studio</strong> (para cualquieraplicación). Posteriormente, doble clic sobre la entrada (que podemos llamar <strong>como</strong> queramos)nos copiará el código fuente en el punto de inserción de código que tengamos activo (y si existecódigo seleccionado, lo sustituye con el del depósito).Todavía hay otra característica nueva: si en lugar de pegar con CTL-V lo hacemos con CTL-SHIFT-V iremos recorriendo el Anillo del Portapapeles, a través de todos los elementos copiadosen secuencia...7) CTL-S funciona en cualquiera de las ventanas de salida: output, debug, etc, permitiendoguardar todo el contenido de la ventana en un fichero de texto. ideal para salidas complejas y/omonitorización de procesos de compilación.8) La ventana de Asociar Procesos de Depuración, nos llevará automáticamente al depuradornativo de cada clase (CLR, T-SQL, Script, etc.) si en lugar de pulsar el botón asociar y luegoseleccionar el depurador pulsamos directamente CTL+Asociar.9) Se puede acelerar la carga del IDE eliminado el navegador por defecto, seleccionando enla Página de Inicio, Mi Perfil, y ahí, "Perfil Personalizado", y "Mostrar entorno vacío". Si ademáscerramos las ventanas de la Ayuda en el Explorador de Soluciones, el IDE entra <strong>como</strong> un tiro...10) Haciendo doble clic sobre una solapa de edición de un fichero, podemos dividir laventana del editor en tantos grupos <strong>como</strong> queramos y mover los elementos de un grupo a otro.Similar a Word, o Excel.11) El fichero .config puede ser llevado automáticamente al directorio desalida del compilador cambiando su nombre por el de App.Config.12) Existe una opción ideal para la depuración de aplicaciones Cliente/Servidor queconsiste en que podemos seleccionar dentro de una solución con más de un proyecto, la opción"Establecer proyectos de Inicio" / "Proyectos de Inicio Múltiples" indicando cómo deseamos alejecución de cada uno de ellos. Al lanzar la ejecución se lanzarán las dos aplicaciones.13) Las combinaciones de teclas (Atajos) son siempre una gran ayuda para los nerviosos(<strong>como</strong> yo), que preferimos, a veces, la rapidez del teclado en vez de las búsquedas con el ratón.La siguiente es una buena lista de combinaciones de teclas.Atajos de teclado pertenecientes a <strong>Visual</strong> <strong>Studio</strong> .NETFuncionalidad Comando Atajo 1 Atajo 2Bookmark Clear All CTRL + K CTRL + LBookmark Toggle Bookmark CTRL + K CTRL + KBookmark Next Bookmark CTRL + K CTRL + NBookmark Previous Bookmark CTRL + K CTRL + PDebug Autos Window CTRL + ALT + V ADebug Break All CTRL + ALT + BreakDebug Breakpoints Window CTRL + ALT + BDebug Call Stack Window CTRL + ALT + CDebug Clear All Breakpoints CTRL + SHIFT + F9Debug Immediate Window CTRL + ALT + IDebug Locals Window CTRL + ALT + V LDebug Quick Watch CTRL + ALT + QDebug Restart CTRL + SHIFT + F5


Debug Run to Cursor CTRL + F10Debug Set Next Statement CTRL + SHIFT + F10Debug Start F5Debug Start without debug CTRL + F5Debug Toggle Breakpoint F9Debug Lanza el compilador CTRL + SHIFT + BDocuments Save All CTRL + SHIFT + SFind IDE Combo CTRL + DFind Incremental CTRL + IFind Next Selected CTRL + F3Find Previous Selected CTRL + SHIFT + F3Layout Move (Grid) ??Layout Move (Pixel) CTRL + ??Layout Size (Grid) SHIFT + ??Layout Size (Pixel) CTRL + SHIFT + ??Outlining Collapse to Definitions CTRL + M CTRL + OOutlining Hide Selection CTRL+M CTRL+HOutlining Unhide Selection CTRL + M CTRL + UOutlining Toggle All CTRL + M CTRL + LOutlining Toggle Current CTRL + M CTRL + MProject Add Existing Item SHIFT + ALT + AProject Add New Item CTRL + SHIFT + AProject New Project CTRL + SHIFT + NProject Open Project CTRL + SHIFT + OQuery Run CTRL + EQuery Run Selected Text CTRL + QQuery Step Into ALT + F5Text Block Extend SHIFT + ALT + ??Text Comment Selection CTRL + K CTRL + CText Uncomment Selection CTRL + K CTRL + UText Select Current Word CTRL + WText Cycle CB Ring CTRL + SHIFT + VText Format Document (tabs) CTRL + K CTRL + DText Format Selection (tabs) CTRL + K CTRL + FText Line Cut CTRL + LText Line Delete CTRL + SHIFT + LText Line Insert Above CTRL + EnterText Line Insert Below CTRL + SHIFT + EnterText Select to last Edit point CTRL + =Text Toggle Word Wrap CTRL + R CTRL + RText Scroll CTRL + ?Text Transpose Characters CTRL + TText Transpose Lines SHIFT + ALT + TView Code F7View Designer SHIFT + F7View Full Screen SHIFT + ALT + EnterWindows Class View CTRL + SHIFT + CWindows Command Window CTRL + ALT + AWindows Debug - Autos CTRL + ALT + V AWindows Debug - Breakpoints CTRL + ALT + BWindows Debug - Call Stack CTRL + ALT + CWindows Debug - Immediate CTRL + ALT + IWindows Debug - Locals CTRL + ALT + V LWindows Locals Window CTRL + ALT + L


Windows Object Browser CTRL + ALT + JWindows Properties Window F4Windows Server Explorer CTRL + ALT + SWindows Task List CTRL + ALT + KWindows Toolbox CTRL + ALT + XNovedades a Noviembre/<strong>20</strong>03Text Seleccióna rectángulos de código (no líneas) ALT + DRAGText Navegación por código tipo I. Explorer CTRL + - (SHIFT + CTRL + -)El siguiente fichero contiene las definiciones de teclas <strong>como</strong> un complemento de <strong>Visual</strong> <strong>Studio</strong>:KeyMap. Basta con registrarlo <strong>como</strong> un servidor COM y la próxima vez que se abra <strong>Visual</strong><strong>Studio</strong>, en la Ayuda, tendremos el complemento disponible.También podemos crear nuestras propias Listas de Tareas (no sólo TODO, etc) en la opciónHerramientas/Opciones/Lista de Tareas, escribimos un nuevo nombre de tarea, leseleccionamos una prioridad y pulsamos Agregar.14) La ventana de Excepciones, nos permite definir <strong>como</strong> queremos tratar la depuraciónde una Excepción determinada, independientemente de cómo se trate el resto. EnDepurar/Excepciones, podemos seleccionar o buscar la excepción por su nombre o por parte deél y seleccionar el tratamiento adecuado:


15) Utilizar los estilos <strong>Visual</strong>es de Windows XP. Se basa en el uso alternativo de la librería desistema (NO redistribuible, y por lo tanto, no utilizable en otros sistemas), CommCtrl32.DLL,versión 6.0. Por defecto, tanto .NET <strong>como</strong> otras aplicaciones utilizan la versión anterior. Laforma de utilizar dichos estilos se basa en la inclusión de un fichero .manifest en el directorio delejecutable (o incorporado al mismo ejecutable), y en algunas opciones de configuración (si loscontroles de esa librería disponen de una propiedad FlatStyle, hay que seleccionar System, si nola parte visual se asume automáticamente).En el sitio Web del Guille, tenéis dos artículos muy bien detallado de esta característica: cómousarlos desde VB Clásico: http://guille.costasol.<strong>net</strong>/ejemplos/temasXPvb6.htm y cómo usarlosdesde .NET, tanto en C#, <strong>como</strong> en <strong>Visual</strong> Basic .NET:http://guille.costasol.<strong>net</strong>/NET/dot<strong>net</strong>/temasXP.htm.Además de esto, el otro día descubrí que se podían utilizar los estilos visuales directamentedesde el <strong>Visual</strong> <strong>Studio</strong>, o sea, viendo los estilos desde la propia ventana de diseño, si añadimossimplemente el siguiente manifiesto (devenv.exe.manifest) al directorio donde reside el IDE de<strong>Visual</strong> <strong>Studio</strong> (Devenv.exe). El efecto es inmediato, y facilita el diseño sin tener que esperar a laejecución para ver los estilos en funcionamiento:PD: No obstante, hay que añadir que se han detectado comportamientos anormales bajo algunaconfiguración concreta utilizando esto, especialmente al acceder a archivos de recursos.16) La lista completa de comandos en línea que acepta <strong>Visual</strong> <strong>Studio</strong> .NETPuede obtenerse la lista de comandos completa que el fichero correspondiente al IDE acepta. Enuna ventana del DOS tecleamos:C:\> devenv /?y el resultado es el siguiente:


Uso:devenv [archivosolución | archivoproyecto | cualquierarchivo.ext] [modificadores]Puede invocar a devenv con un primer argumento para especificar un archivo de solución o deproyecto. También puede invocar a devenv con un primer argumento que puede ser cualquiertipo de archivo que sólo desee abrir en un editor. Si proporciona un archivo de proyecto, el IDE loabre en el contexto de una solución buscando un archivo.sln con el mismo nombre base que el archivo de proyecto y en el directorio primario desde elarchivo de proyecto. Si dicho archivo .sln no existe, el IDE busca un único archivo .sln que hagareferencia al proyecto. Si no existe ese archivo .sln único, el IDE crea una solución sin guardarcon un nombre de archivo .sln predeterminado que tenga el mismo nombre base que el archivodeproyecto.Sintaxis de la línea de comandos:devenv archivosoluciones.sln /build configuraciónsolución [ /projectnombreproyectooarchivo [ /projectconfig nombre ] ]Modificadores de la línea de comandos disponibles:/build genera la configuración de soluciones especificada/project especifica el proyecto que desea generar en vez de la solucióndebe especificar /build para usar /project/projectconfig especifica la configuración del proyecto que desea generardebe especificar /project para utilizar /projectconfig/out guarda los resultados de la generación en un archivo especificado/rebuild igual que /build pero, previamente, realiza una limpieza/clean limpia los resultados de la generación/deploy genera la configuración de soluciones especificada y, a continuación, la implementa/run ejecuta la configuración de soluciones especificada/runexit ejecuta la configuración de soluciones especificada y, a continuación, finaliza/command ejecuta la línea de comandos interna especificada después del inicio/mditabs utiliza la organización por fichas/mdi utiliza la interfaz MDI/fn utiliza el nombre de fuente especificado/fs utiliza el tamaño de fuente especificado/LCID utiliza el id. de idioma especificado/noVSIP deshabilita la clave de licencia de programadores de VSIP para las pruebas de VSIP/safemode sólo carga el entorno y servicios predeterminados para una mayor estabilidad/resetskippkgs permite una nueva carga de VsPackages cuando ya se han producido erroresen la cargaModificadores específicos del producto:/debugexe Abrir el archivo ejecutable especificado que se va a depurar.El resto de la línea de comandos se pasa a estearchivo ejecutable <strong>como</strong> sus argumentos./useenv Utilizar las variables de entorno PATH, INCLUDE, LIBPATH y LIBen lugar de las rutas de acceso IDE para generaciones de VC++.Para asociar el depurador desde la línea de comandos, utilice:vs7jit.exe -p17) Como recuperar la configuración de IIS después de una desinstalación/reinstalaciónCuando se ha instalado .NET previamente a la instalación de IIS, las aplicaciones se niegan a


ejecutar indicando un mensaje del tipo No se puede ejecutar el proyecto en modo compartido...La solución se basa en lo siguiente:• !"#$%• & %'% # ( & # )*+,) !"! - # ./0*1/23!"! 18) Como facilitar la edición de ficheros individuales con <strong>Visual</strong> <strong>Studio</strong> .NETUn típico problema de las asociaciones de ficheros es cuando abrimos un fichero aislado decualquier lenguaje y se abre todo el <strong>Visual</strong> <strong>Studio</strong>, con el tiempo que conlleva. Don Box, hapublicado un truco directamente de los creadores, consistente en modificar el registro para cadaextensión que nos interese, y añadirle lo siguiente:Hay que cambiar la clave original:[HKEY_CLASSES_ROOT\<strong>Visual</strong><strong>Studio</strong>.csfile.7.1\shell\Open.<strong>Visual</strong><strong>Studio</strong>.7.1\command]@="\" C:\\...\\devenv.exe \ " /ddepor ésta:[HKEY_CLASSES_ROOT\<strong>Visual</strong><strong>Studio</strong>.csfile.7.1\shell\Open.<strong>Visual</strong><strong>Studio</strong>.7.1\command]@="\" C:\\...\\devenv.exe \ " /dde \"%L\"En éste ejemplo está hecho para C#. Afortunadamente, las posiciones de las extensiones en elRegistro ocupan una misma zona, si se editan con RegEdit.exe y resulta fácil localizarlas, a partirde la primera.19) Ejecutar instalación silenciosa de .NET a partir del fichero dot<strong>net</strong>fx (redistribuible)Para el runtime redistribuible: dot<strong>net</strong>fx.exe /q /c:"install.exe /q"Para el .NET SDK completo: setup.exe /q /c:"install.exe /q"!"#(!.44+$

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!