vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
SEPA-Dateien erstellen inkl. IBAN-, BLZ-/Kontonummernprüfung  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB & Windows API
Re: GetSaveFileNameA 
Autor: ModeratorDieter (Moderator)
Datum: 11.02.04 21:28

Hi Guido,

hier ein Beispiel:
Private Type OPENFILENAME
  lStructSize As Long
  hwndOwner As Long
  hInstance As Long
  lpstrFilter As String
  lpstrCustomFilter As String
  nMaxCustFilter As Long
  nFilterIndex As Long
  lpstrFile As String
  nMaxFile As Long
  lpstrFileTitle As String
  nMaxFileTitle As Long
  lpstrInitialDir As String
  lpstrTitle As String
  flags As Long
  nFileOffset As Integer
  nFileExtension As Integer
  lpstrDefExt As String
  lCustData As Long
  lpfnHook As Long
  lpTemplateName As String
End Type
 
Private Declare Function GetOpenFileName Lib "comdlg32.dll" _
  Alias "GetOpenFileNameA" (pOpenfilename As OPENFILENAME) As Long
 
Private Declare Function GetSaveFileName Lib "comdlg32.dll" _
  Alias "GetSaveFileNameA" (pOpenfilename As OPENFILENAME) As Long
 
Private Const OFN_ALLOWMULTISELECT = &H200
Private Const OFN_CREATEPROMPT = &H2000
Private Const OFN_ENABLEHOOK = &H20
Private Const OFN_ENABLETEMPLATE = &H40
Private Const OFN_ENABLETEMPLATEHANDLE = &H80
Private Const OFN_EXPLORER = &H80000            ' Windows 95 Only
Private Const OFN_EXTENSIONDIFFERENT = &H400
Private Const OFN_FILEMUSTEXIST = &H1000
Private Const OFN_HIDEREADONLY = &H4
Private Const OFN_LONGNAMES = &H200000          ' Windows 95 Only
Private Const OFN_NOCHANGEDIR = &H8
Private Const OFN_NODEREFERENCELINKS = &H100000 ' Windows 95 Only
Private Const OFN_NOLONGNAMES = &H40000
Private Const OFN_NONETWORKBUTTON = &H20000
Private Const OFN_NOREADONLYRETURN = &H8000
Private Const OFN_NOTESTFILECREATE = &H10000
Private Const OFN_NOVALIDATE = &H100
Private Const OFN_OVERWRITEPROMPT = &H2
Private Const OFN_PATHMUSTEXIST = &H800
Private Const OFN_READONLY = &H1
Private Const OFN_SHAREAWARE = &H4000
Private Const OFN_SHAREFALLTHROUGH = 2
Private Const OFN_SHARENOWARN = 1
Private Const OFN_SHAREWARN = 0
Private Const OFN_SHOWHELP = &H10
 
Private Function DialogOpenSave(hWnd As Long, _
  ByVal sTitle As String, _
  sInitDir As String, _
  ByVal sFile As String, _
  ByVal sFilter As String, _
  ByVal sDefExt As String, _
  Optional ByVal nSaveFile As Integer = 0, _
  Optional nFilterIndex As Integer = 1)
 
  Dim oFile As OPENFILENAME
  Dim wSize As Long
  Dim Memhandle As Long
  Dim szFile As String
  Dim szFilter As String
  Dim nResult As Long
 
  szFile = sFile + String$(260 - Len(sFile), 0)
  szFilter = Replace(sFilter + "||", "|", Chr$(0))
 
  With oFile
    .lStructSize = Len(oFile)
    .hwndOwner = hWnd
    .nFilterIndex = 1
    .nMaxFile = Len(szFile)
    .nFilterIndex = nFilterIndex
 
    Select Case nSaveFile
      Case 0
        .flags = OFN_HIDEREADONLY Or OFN_PATHMUSTEXIST Or OFN_FILEMUSTEXIST
      Case 1
        .flags = OFN_HIDEREADONLY Or OFN_PATHMUSTEXIST Or OFN_OVERWRITEPROMPT
      Case 2
        .flags = OFN_HIDEREADONLY Or OFN_PATHMUSTEXIST
    End Select
 
    .lpstrFile = szFile
    .lpstrFilter = szFilter
    .lpstrTitle = sTitle
    .lpstrDefExt = sDefExt
    .lpstrInitialDir = sInitDir
 
    If nSaveFile = 0 Then
      nResult = GetOpenFileName(oFile)
    Else
      nResult = GetSaveFileName(oFile)
    End If
 
    If nResult = 0 Then
      DialogOpenSave = ""
      Exit Function
    End If
 
    sFile = Left$(.lpstrFile, InStr(.lpstrFile, Chr$(0)) - 1)
    sInitDir = Left$(sFile, .nFileOffset)
    nFilterIndex = .nFilterIndex
    DialogOpenSave = Right$(sFile, Len(sFile) - .nFileOffset)
  End With
End Function

_________________________
Professionelle Entwicklerkomponenten
www.tools4vb.de

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
GetSaveFileNameA1.693GuidoE11.02.04 19:05
Re: GetSaveFileNameA1.110ModeratorDieter11.02.04 19:09
Re: GetSaveFileNameA1.242GuidoE11.02.04 20:51
Re: GetSaveFileNameA1.059ModeratorDieter11.02.04 21:03
Re: GetSaveFileNameA1.086GuidoE11.02.04 21:20
Re: GetSaveFileNameA1.271ModeratorDieter11.02.04 21:28
Re: GetSaveFileNameA1.030GuidoE11.02.04 21:51
Re: GetSaveFileNameA1.055ModeratorDieter11.02.04 21:54
Re: GetSaveFileNameA1.250GuidoE11.02.04 22:15

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel