https://github.com/mrfearless/filedialog-library
Library of functions that wrap the IFileOpenDialog and IFileSaveDialog objects.
https://github.com/mrfearless/filedialog-library
asm assembler ifiledialog ifileopendialog ifilesavedialog library masm32 radasm uasm uasm64 x64 x86
Last synced: 3 months ago
JSON representation
Library of functions that wrap the IFileOpenDialog and IFileSaveDialog objects.
- Host: GitHub
- URL: https://github.com/mrfearless/filedialog-library
- Owner: mrfearless
- License: 0bsd
- Created: 2024-08-08T22:22:02.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-01-15T21:04:43.000Z (5 months ago)
- Last Synced: 2025-03-07T16:51:25.192Z (4 months ago)
- Topics: asm, assembler, ifiledialog, ifileopendialog, ifilesavedialog, library, masm32, radasm, uasm, uasm64, x64, x86
- Language: Assembly
- Homepage:
- Size: 202 KB
- Stars: 5
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
#  FileDialog Library
FileDialog Library - a library written in assembler (for x86 and x64) which consists of functions that wrap the COM implementation of the common item dialog used with [IFileOpenDialog](https://learn.microsoft.com/en-us/windows/win32/api/shobjidl_core/nn-shobjidl_core-ifileopendialog) and [IFileSaveDialog](https://learn.microsoft.com/en-us/windows/win32/api/shobjidl_core/nn-shobjidl_core-ifilesavedialog) objects. Thus the FileDialog Library functions hide the complexities of interacting with the COM objects, and provide easy to use functions with support for both Ansi and Wide/Unicode.
[](http://www.masm32.com/download.htm) [](http://www.terraspace.co.uk/uasm.html) [](http://www.softpedia.com/get/Programming/File-Editors/RadASM.shtml) [](https://filedialog-library.readthedocs.io/en/latest/index.html)
# Features
* Open File Dialog Functions: `FileOpenDialogA` & `FileOpenDialogW`
* Save File Dialog Functions: `FileSaveDialogA` & `FileSaveDialogW`
* Folder Select Dialog Functions: `FolderSelectDialogA` & `FolderSelectDialogW`# Download
* Download the latest release for whichever assembler and architecture you require:
- [FileDialog-x86.zip](https://github.com/mrfearless/FileDialog-Library/blob/master/releases/FileDialog-x86.zip?raw=true)
- [FileDialog-x64.zip](https://github.com/mrfearless/FileDialog-Library/blob/master/releases/FileDialog-x64.zip?raw=true)* Copy `FileDialog.inc` to your `masm32\include` folder for FileDialog Library x86, or `uasm\include` for FileDialog Library x64 (or wherever your include files are located)
* Copy `FileDialog.lib` to your `masm32\lib` folder for FileDialog Library x86, or `uasm\lib\x64` for FileDialog Library x64 (or wherever your libraries are located)
* Add the following to your project:
```assembly
include FileDialog.inc
includelib FileDialog.lib
```# Functions
Documentation on the functions in the FileDialog libraries are located on readthedocs [here](https://filedialog-library.readthedocs.io/en/latest/index.html)
# Resources
Included with the releases are additional RadASM autocomplete / intellisense type files. Each `*.api.txt` file contains instructions as to where to paste their contents.
Other resources may be required to build the libraries:
- [RadASM IDE](http://www.softpedia.com/get/Programming/File-Editors/RadASM.shtml)
- [MASM32 SDK](http://www.masm32.com/download.htm)
- [UASM - x86/x64 assembler](http://www.terraspace.co.uk/uasm.html)
- [WinInc - include files for x64 assembler](http://www.terraspace.co.uk/WinInc209.zip)
- [UASM-with-RadASM](https://github.com/mrfearless/UASM-with-RadASM)