none
Публикация сборки проекта в Visual Basic 2008 Express RRS feed

  • Вопрос

  • При публикации решения (по-старому инсталляционный пакет программы) в составе проекта есть бинарный файл, который включен в ресурсы, при этом в свойстве "Копировать в выходной каталог" значение я поставил "True", то есть, как я понимаю этот файл должен появиться в том каталоге, в который устанавливается программа. Но этот файл нигде не появляется! Подскажите, что надо сделать, чтоб файл, который нужен для работы программы и который должен быть там, где и файл *.exe (в той же папке), "включался" в инсталляционный пакет и устанавливался (копировался) в ту же папку, куда устанавливается и *.exe файл? Заранее благодарен за ответы. P.S. В VB.NET я еще "новичок", поэтому приношу извинения, если вопрос глупый.
    • Перемещено I.Vorontsov 31 марта 2010 г. 5:07 (От:Разработка Windows-приложений)
    • Перемещено SachinW 1 октября 2010 г. 21:37 MSDN Forums Consolidation (От:Начинающие разработчики)
    30 марта 2010 г. 14:39

Ответы

  • If My.Computer.FileSystem.FileExists(My.Application.Info.DirectoryPath.ToString & "File.exe") = False Then
    
    Dim file As New System.IO.FileStream(My.Application.Info.DirectoryPath.ToString & "File.exe", IO.FileMode.Create) 
    
    file.Write(My.Resources.file, 0, My.Resources.file.Length) 
    
    file.Close()
    
    endif
    

    Извлекает вложенный файл при его отсутствии

     

     

     

     

     

    • Помечено в качестве ответа Alexandr_Smirnoff 5 апреля 2010 г. 6:46
    4 апреля 2010 г. 20:45

Все ответы

  • If My.Computer.FileSystem.FileExists(My.Application.Info.DirectoryPath.ToString & "File.exe") = False Then
    
    Dim file As New System.IO.FileStream(My.Application.Info.DirectoryPath.ToString & "File.exe", IO.FileMode.Create) 
    
    file.Write(My.Resources.file, 0, My.Resources.file.Length) 
    
    file.Close()
    
    endif
    

    Извлекает вложенный файл при его отсутствии

     

     

     

     

     

    • Помечено в качестве ответа Alexandr_Smirnoff 5 апреля 2010 г. 6:46
    4 апреля 2010 г. 20:45
  • Спасибо BG-VG за ответ.
    5 апреля 2010 г. 6:46
  • Приведенный код я переделал (т.к. выдавал ошибки) так:

    If My.Computer.FileSystem.FileExists(Application.StartupPath & "\имя файла") = False Then
    
         Dim file As New System.IO.FileStream(Application.StartupPath & "\имя файла", IO.FileMode.Create)
    
         file.Write(My.Resources.имя ресурса, 0, My.Resources.имя ресурса.Length)
    
         file.Close()
    End if
    30 апреля 2010 г. 13:10