in reply to Tk and Common Dialogs

Jenda Krynicky has done it in Win32::FileOp which you can download from CPAN. This module is written using Win32::API, so you can look through the code if you want to know how its done.

I don't like the idea of mixing user interfaces, but if you do, I'm glad to help :)

/brother t0mas

Replies are listed 'Best First'.
(Guildenstern) RE: Re: Tk and Common Dialogs
by Guildenstern (Deacon) on Oct 27, 2000 at 19:52 UTC
    It looks like you can find the information you need in Win32::FileOp to do the pack correctly, but it looks like the module hasn't been updated yet to include Win 2000 support. If you're calling the GetSaveFileName in Win 2000, the OPENFILENAME has three additional items you need to pack. They are:
    #if (_WIN32_WINNT >= 0x0500) void * pvReserved; DWORD dwReserved; DWORD FlagsEx; #endif // (_WIN32_WINNT >= 0x0500)
    For more information, see the MSDN page on OPENFILENAME

    Update: I guess it would be nice if I explained the Win 2000 options, instead of making everyone go to the MSDN site.
    Both pvReserved and dwReserved are reserved and should be ignored in the return. FlagsEx can be set to the value OFN_EX_NOPLACESBAR, which means don't display the places bar (whatever that means, I'm still on NT4).

    Guildenstern
    Negaterd character class uber alles!