VB.NET保存文件没有保存对话框提示

时间:2013-06-18 08:47:40

标签: vb.net visual-studio save prompt codedom

我需要知道如何保存文件,而不使用保存文件对话框提示。

目前我的代码是:

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
        ProgressBar1.Value = 0
        Using sfd As New SaveFileDialog
            With sfd
                If .ShowDialog = Windows.Forms.DialogResult.OK Then
                    .DefaultExt = "exe"
                    .Filter = "Saved.exe (*.exe)|*.exe"
                    '---Save File---
                    '---Code to pack the result with UPX packer---
        ProgressBar1.Value = 100
        MsgBox("Success.", MsgBoxStyle.Information)
    End Sub

我想知道,如何使用名称" Saved.exe"保存文件。到我的应用程序所在的同一文件夹,没有保存文件对话框的提示。 该文件需要保存在程序所在的同一文件夹中,并具有预先配置的名称,以便UPX打包程序知道要打包的内容。

希望有人可以帮助我。

2 个答案:

答案 0 :(得分:1)

获取目录有很多种方法:

My.Application.Info.DirectoryPath
Application.Current.BaseDirectory
IO.Path.GetDirectoryName(Application.ExecutablePath)
Windows.Forms.Application.StartupPath
IO.Path.GetDirectoryName(Reflection.Assembly.GetExecutingAssembly().CodeBase)

获得应用程序文件夹后,只需添加要获取完整文件名路径的文件名即可。

答案 1 :(得分:0)

保存文件对话框只允许用户指定保存文件的位置。

如果您想在没有此对话框的情况下保存文件,则必须自己指定文件名。

您可以使用以下代码段之一来保存文件:

对于文本文件:

My.Computer.FileSystem.WriteAllText("C:\SomeDir\YourFile.txt", "Text", True)

对于二进制文件:

Dim fileContents() As Byte = {244, 123, 56, 34}
My.Computer.FileSystem.WriteAllBytes("C:\SomeDir\YourFile.bin", fileContents, True)

注意:这些内容直接来自Visual Studio中的标准代码段。按Ctrl+KCtrl+X,然后导航至Fundamentals > FileSystem