Installation

# Add this to your shard.yml
dependencies:
  win32cr:
    github: mjblack/win32cr
    version: ~> 1.2.1

Then run:

shards install

shard.yml

Crystal
>= 1.15.0
License
MIT
Author
Matthew J. Black <mjblack@gmail.com>

Dependencies

Runtime Dependencies

  • winmd*github: mjblack/winmd

README

# win32cr

[![CI](https://github.com/mjblack/win32cr/actions/workflows/crystal.yml/badge.svg)](https://github.com/mjblack/win32cr/actions/workflows/crystal.yml) [![Crystal Latest CI](https://github.com/mjblack/win32cr/actions/workflows/crystal_latest.yml/badge.svg)](https://github.com/mjblack/win32cr/actions/workflows/crystal_latest.yml)

Win32 library bindings generated by [mjblack/winmd](https://github.com/mjblack/winmd) using [marlersoft/win32json](https://github.com/marlersoft/win32json).

## Installation

Add this to your application's `shard.yml`:

```yaml
dependencies:
  win32cr:
    github: mjblack/win32cr
```

Build WinMD by executing the script `build.ps1` in the location where the shard `win32cr` is installed.

```
C:\Projects\SomeCrystalApp\lib\win32cr> & .\build.ps1
```

## Usage

For more examples, please see the [examples](https://github.com/mjblack/win32cr/tree/master/examples) directory.

```crystal
require "win32cr"
require "win32cr/ui/windows_and_messaging"

alias WM = Win32cr::UI::WindowsAndMessaging # Simplifies code
WM.messageBoxW(Pointer(Void).null, pwstr("Message Box Body"), pwstr("Title"), WM::MESSAGEBOX_STYLE::MB_OK)
```

## Contributing

1. Fork it (<https://github.com/mjblack/win32cr/fork>)
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Add some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
5. Create a new Pull Request

## Contributors

- [Matthew J. Black](https://github.com/mjblack) - creator and maintainer