32 lines
850 B
Zig
32 lines
850 B
Zig
const std = @import("std");
|
|
const Io = std.Io;
|
|
|
|
pub fn main(init: std.process.Init) !void {
|
|
const io = init.io;
|
|
const arena = init.arena.allocator();
|
|
const args = try init.minimal.args.toSlice(arena);
|
|
|
|
if (args.len != 3) {
|
|
std.debug.print("Usage: ./create-win32-resource-file <icon> <output>", .{});
|
|
std.process.exit(1);
|
|
}
|
|
|
|
const icon_file_path = args[1];
|
|
const output_file_path = args[2];
|
|
|
|
const cwd = Io.Dir.cwd();
|
|
|
|
const output_file = try cwd.createFile(io, output_file_path, .{});
|
|
defer output_file.close(io);
|
|
|
|
var buff: [4*4096]u8 = undefined;
|
|
var file_writer = output_file.writer(io, &buff);
|
|
const writer = &file_writer.interface;
|
|
|
|
try writer.writeAll("IDI_ICON ICON \"");
|
|
try writer.writeAll(icon_file_path);
|
|
try writer.writeAll("\"");
|
|
|
|
try writer.flush();
|
|
}
|