2010-03-15 16 views
5

Q1 - ¿Al hacer una compilación/depuración VS se supone que debe eliminar los archivos existentes en el área bin \ debug? (Para VS2008)Al compilar/depurar, se supone que VS borrará los archivos existentes en el área bin debug?

si no, entonces puedo pedir por favor:

Q2 - Mis WinForms comprueba existencia de un archivo sqlite.db3 y la crea si es necesario (mediante programación). Si el comportamiento que quería es que cada compilación/depuración que hago sea para que el área de depuración objetivo sea clara, de modo que el programa pueda utilizar el código que crea el archivo de la base de datos, ¿cómo organizaría esto?

gracias

+0

Creo que a esta pregunta le falta contexto y no es muy clara. –

+0

@Rahul - la pregunta me parece lo suficientemente clara. –

+0

@Michael, estoy de acuerdo contigo "ahora" ... ya que Greg lo ha editado, y puedo entender esto claramente también. Gracias Greg. –

Respuesta

2

Basta con añadir un evento PreBuild.

Editado para añadir:

Bueno ... parece que alguien quiere todo masticado y listo para tragar. ¡De acuerdo ♥!

  1. Haga clic derecho en el proyecto y seleccione propiedades
  2. Vaya a

    a. Compile pestaña y haga clic en el botón Build Events si un proyecto de VB

    b. Build Events pestaña si se trata de un proyecto de C#

  3. en el tipo pre-build event command line:

    IF EXIST "$(TargetDir)\sqlite.db3" DEL "$(TargetDir)\sqlite.db3"

Eso debería hacerlo.

La próxima vez, violín un poco más ...

+0

gracias - eventos de reconstrucción de primera vez - Trataré de encontrar una página de referencia para la sintaxis del evento de compilación – Greg

1

Hay eventos que se pueden ejecutar antes, después construir para cada proyecto. Por lo tanto, escoja el primer/último proyecto que se construya dependiendo de si la acción debería ocurrir antes de la compilación o después de la compilación (imponerla haciendo que dependa de cada otro proyecto) y agregar algunas secuencias de comandos por lotes para realizar lo que necesita. Las tareas de MSBuild son excelentes para esto también.

2

"Limpiar" solo eliminará los archivos que Visual Studio está copiando explícitamente en el directorio de destino (sus dlls ejecutables, dependientes y aquellos marcados con los valores adecuados "Copiar al directorio de salida").

Puede crear una tarea de preconstrucción o postconstrucción para eliminar el archivo en cuestión. Algo así como del $(TargetDir)\sqlite.db3. Consulte la pestaña "Crear eventos" en las propiedades de su proyecto para estos eventos.

+0

gracias - obteniendo un "el comando ... salido con el código 1" - ¿alguna idea? La ruta se ve bien, aunque hay espacios en ella. También hay una forma de hacer un "Si existe Entonces del xxx" en una tarea previa a la construcción? – Greg

+0

@Greg - sí, lo hay. Ver la respuesta de Paulo. –

Cuestiones relacionadas