Re: Missing Documentation
Khaled
13/11/25 11:38 AM
Thanks, for $pbkdf2() the hash can be: md5, sha1, sha256, sha384, sha512, and for $argon2() the hash can be: 2id, 2i, 2d. These have been added to the help file.
58
123,013
Read More
|
|
Re: Missing Documentation
KindOne
12/11/25 06:20 PM
Include supported hashes for $argon2() and $pbkdf2(). For $argon2() I assumed was supposed to be the complete hash name.
alias argon2_test {
var %password = test
var %salt = kQIfhANrQOtrrBDL
; This part is confusing. I assumed it had to be "argon2id".
var %hash = 2id
var %derivedKey = $argon2(%password, %salt, %hash, 16, 2, 1, 16)
echo -ag %derivedKey
}
58
123,013
Read More
|
|
mIRC 7.83 released
Khaled
12/11/25 04:54 PM
Dear mIRC User, mIRC v7.83 has been released today. This is a small update that adds features and addresses a number of issues reported by users since the last release. It includes improvements, changes and fixes, including: Fixed NickServ bug that prevented /nickserv from logging on when connecting. Fixed IPv6 parser bug that affected /dcc commands and other features. Fixed listbox text not being displayed correctly with different DPI settings. Added support for key derivation functions pbkdf2 and argon2 as identifiers. Added /drawdll command that allows a custom DLL to draw to a picture @window's bitmap. Added $encode()/$decode() 'y' switch that Punycode-encodes/decodes text. Added support for internationalized domain names when resolving addresses. Updated CA root certificates cacert.pem file. How to upgrade?mIRC is distributed in an installer that installs mIRC on your computer for you. Simply download and run the installer from the download page on the mIRC website. Follow the instructions the installer gives to you. When upgrading all your old settings and scripts will stay as they were, if you want that. Read the questions the installer asks with care and nothing can go wrong. You will be chatting with the new mIRC in no time. If you get stuck or if you want to find out more about a certain feature, just click on a Help button or browse the Help file and you should find lots of hints to help you out. Where to download?As always, the latest version of mIRC can be downloaded from the download page on the mIRC website. Registering mIRCAs you know, mIRC can be downloaded freely and evaluated for 30 days. If you find that you enjoy using mIRC, it would be great and much appreciated if you registered your copy. This licenses you to use your copy of mIRC and helps to support our continued work on mIRC. You can find out how to register here. Full list of Fixes, Changes and Additions.For a more detailed list of recent changes, please see the whatsnew.txt file. You will need to read through the help file to learn more about these changes and their impact. Some changes are obvious, some need getting used to - please take your time to play with them and see how they work. May we invite you to use these forums for all questions you might have? The forums offer great help with everything related to mIRC! Thanks for using mIRC, have fun on IRC!
0
499
Read More
|
|
Re: Editbox option 'optional'
Khaled
12/11/25 09:51 AM
Thanks for the feedback. The behaviours you describe are how the (optional) feature has always worked across all dialogs. The custom dialogs are simply using the existing functions for this.
I have had to make more changes to the custom dialog optional keyword parser as there was an issue with the order in which it was being parsed in the custom dialog code. At this point, I have decided to remove this feature for now and revert to the 7.82 custom dialog code, as it still needs more testing and will delay the release that was planned this week. I will add it back in a future beta cycle.
8
508
Read More
|
|
🦀 Mirust: A Safe and Seamless Rust-to-mIRC SDK
The_JD
12/11/25 12:44 AM
Mirust is a lightweight SDK designed to simplify the process of exporting Rust functions to mIRC via DLLs. It provides a safe, idiomatic interface for Rust developers while ensuring full compatibility with mIRC’s environment. Key features:- Automatic DLL Lifecycle Management
- Handles LoadDll and UnloadDll automatically, eliminating boilerplate and setup hassle. - Comprehensive LOADINFO Support
- Adds LOADINFO compatibility for mIRC versions 5.6 through 5.71. All current LOADINFO items are supported across all versions — even those that didn’t originally include them. - Robust String Encoding
- Transparently encodes and decodes both ANSI and Unicode strings into UTF-8 Rust strings, ensuring smooth interoperability. - Selective Function Exposure
- Functions can be annotated with dllcall = false to restrict access exclusively to $dllcall, preventing accidental use via $dll which could lock up mIRC. - Memory Safety by Design
- Mirust enforces safe Rust practices, preventing out-of-bounds memory access and avoiding unsafe pointer manipulation. https://crates.io/crates/mirust/Example function#[mirust_fn]
fn my_command(
m_wnd: HWND,
a_wnd: HWND,
data: String,
parms: String,
show: BOOL,
nopause: BOOL,
) -> mirust::MircResult {
let command = "echo -st * Message from 🦀 Rust: $1-".to_string();
let my_string = format!("You sent me: {}", data);
mirust::MircResult {
code: 2, // Command
data: Some(command),
parms: Some(my_string),
}
}Mirust works with mIRC on x86 (32 bit), and is expected to function correctly on x86_64 (64 bit) and ARM64 versions of mIRC - assuming mIRC will use the "C" ABI in the upcoming variants. @Khaled, is there a full list of lengths for data/parms (I could only find 900 bytes for 5.6, and the rest is unknown until 7.64 when mBytes was introduced)
1
149
Read More
|
|
Re: Editbox option 'optional'
TECO
11/11/25 08:21 PM
Hi Khaled, I tested it and found a bug. For example, in the dialog below: ![[Linked Image from i.ibb.co]](https://i.ibb.co/N6LTPGq6/test.png) alias test { dialog -m test test }
dialog test {
title "Dialog ghost text"
icon $mircexe,0
option pixels
size -1 -1 306 115
edit "", 1, 8 12 290 60, multi optional "test"
button "&OK", 4, 142 83 76 23, ok default
button "&Cancel", 5, 223 83 76 23, cancel
}
on *:dialog:test:*:*:{
if ($devent == init) { did -f $dname 4 }
elseif ($devent == sclick) {
if ($did == 4) { echo -sg -- $did(1) }
}
}
But if, for example, I type the same text from the ghost text (test) into the edit box, it doesn't return anything in the identifier $did(1) ![[Linked Image from i.ibb.co]](https://i.ibb.co/dq7LVwd/test1.png) However, I wanted to know one thing. Why are parentheses necessary for this to work, since they suggest that this feature will stop working if someone types the same text for real? Hug
8
508
Read More
|
|
mIRC beta
Khaled
11/11/25 09:44 AM
There are no betas available for testing at this time. Please download the latest version of mIRC from the mIRC website.
1
448,658
Read More
|
|
|
|