mIRC Home    About    Download    Register    News    Help

Active Threads | Unanswered Past 24 hours | Past 48 hours | Past Week | Past Month | Past Year
Feature Suggestions Jump to new posts
Re: Missing Documentation klez Yesterday at 12:24 PM
In the mirc 7.56 there's no help info about $urlget. It will be good if the mirc.chm will be updated in time. I don't know about other changes/adds if they are smile
23 22,790 Read More
Bug Reports Jump to new posts
Re: mIRC beta Khaled Yesterday at 09:40 AM
The latest beta version of mIRC is v7.56.106 and can be downloaded here. It includes the following changes:

Quote
Beta v7.56.106 changes:
1.Item 7, https://forums.mirc.com/ubbthreads.php/topics/265772

Beta v7.56.86 changes:
1.Item 4, fixed.
2.Item 5, fixed.
3.Item 6, https://forums.mirc.com/ubbthreads.php/topics/265755.
4.Relating to https://forums.mirc.com/ubbthreads.php/topics/265742
Reverted change as did not resolve issue.

Beta v7.56.71 changes:
1.Item 3, https://forums.mirc.com/ubbthreads.php/topics/265736
2.Relating to https://forums.mirc.com/ubbthreads.php/topics/265742
Several changes were made to the about dialog that might resolve
this issue.

Beta v7.56.20 changes:
1.Item 2, fixed. This should fix the R6034 Windows error caused by mIRC
loading an external OpenSSL library to determine if it is a newer
version. This feature can now only be enabled by manually by setting
"load=0" in the [ssl] section in mirc.ini.
2.In addition, all libraries (LibZip, OpenSSL, TagLib, Zlib) were
recompiled.
3.The change in the last beta relating to XP has been reverted, so this
beta now works with XP again.

Beta v7.56.11 changes:
1.Item 1, updated.
2.Relating to https://forums.mirc.com/ubbthreads.php/topics/265700
Changed how OpenSSL is compiled. This means that it is no longer
compatible with XP. This may resolve the R6034 Windows error.

Changes:
1.Updated OpenSSL library to v1.1.1c.
2.Changed OpenSSL support so that, by default, mIRC no longer checks for
a newer external version of the OpenSSL library. This should resolve
the R6034 Windows error reported by some users.
3.Changed /url, /run, and other features to use alternative method to
open links to resolve issues with asynchronous window messages.
4.Fixed STS/SSL server/port parsing bug.
5.Fixed handling of 64bit timestamp value for several features.
6.Changed $crc() to use larger read buffer with files to improve speed.
7.Fixed script parser bug that caused binary variables to be unset in
scripts that call external DLLS that SendMessage() mIRC many times.
1 165,955 Read More
Feature Suggestions Jump to new posts
Re: Change the way servers are stored Khaled Yesterday at 08:59 AM
It is normal for scripters to make assumptions about how features work and to create scripts that parse the servers.ini, mirc.ini, and so on. That is why backwards compatibility is important.

In this case, there are no plans to change how mIRC uses INI files for the servers list or other features.

That said, I looked into idea of the merging of new and old servers.ini about twenty years ago, going as far as creating an interface for it. In the end, I decided it was too complicated for regular users, and messy even for techies.
4 121 Read More
Feature Suggestions Jump to new posts
Re: /hop #chan and 'keep channel open' Khaled Yesterday at 08:11 AM
Well, this is the reason we sometimes ask users to test out a clean copy of mIRC, when issues like this arise, because scripts can be used to change how mIRC works.

The purpose of PARSELINE is to allow scripters to do things like this on a low level, so there is nothing wrong with using it in this way :-)
4 149 Read More
Feature Suggestions Jump to new posts
Re: /hop #chan and 'keep channel open' Raccoon Yesterday at 03:57 AM
LOL. Abuse PARSELINE events, directly against the advice of the help documentation, then blame Khaled for making your script necessary in the first place. I love it laugh cry

(I exactly knew this was the issue of your bug report, but I held my tongue. You showcased this script in March. You'll need to watch for outgoing PART messages, first.)
4 149 Read More
Feature Suggestions Jump to new posts
Re: /hop #chan and 'keep channel open' Wims 21/07/19 06:37 PM
Well I'm sorry, seeing your post I tried with remote off, and I had this line that I forgot to remove/comment, which can be used to keep channel open when you receive a part event (which is something that has been asked by various users over the decade, actually):

on *:PARSELINE:in:?* PART #*:if ($gettok($mid($parseline,2),1,33) == $me) .parseline -it
4 149 Read More
Feature Suggestions Jump to new posts
Re: /hop #chan and 'keep channel open' Khaled 21/07/19 05:51 PM
When I try this here, /hop #chanB while in #chanA, this parts #chanA and closes its window, even if "keep channel open" is enabled, which is what it should be doing. Is this not happening for you?
4 149 Read More
Feature Suggestions Jump to new posts
Re: Change the way servers are stored Raccoon 20/07/19 07:49 PM
Quote
... except when mIRC needs to update the servers

That one specific endeavor is a huge deal and needs to take center stage high priority. It's not a mere whimsy activity.

How can a user update their servers if they also have 20 custom servers they've since added and edited of their own?
There is no merge or migrate feature, yet, and so it should be done that the two lists be made separate. Just like your spell check dictionary in every platform.

If some nimrod wrote a script that manually parses the default servers.ini file, and can't be bothered to update their script, then they should continue using a singular servers.ini file. The rest of us don't care about that nimrod.
4 121 Read More
Feature Suggestions Jump to new posts
Re: Change the way servers are stored klez 19/07/19 07:47 PM
I think that are many scripts based on servers.ini. Making this, the scripters must change their scripts. Other part of discussion that you said to have 2 files .ini, one as default, another with users preferences.

I don't think that will increase the performance or do something best (excepts when mIRC update the servers.ini), instead, this will make a headache for scripters to modify their scripts. But, the decision goes to Khaled. My opinion is that the user decides to update the servers.ini or not, when the user installs or updates the mIRC and this option is included in the installer.
4 121 Read More
Scripts & Popups Jump to new posts
Re: @whois window Angela 19/07/19 05:40 PM
Thank you! That worked.
2 70 Read More
Scripts & Popups Jump to new posts
Re: @whois window Matt5150 19/07/19 04:52 PM
Hello Angela.
Instead of using a window called called @Whois, try to replace every @Whois with this $+(@Whois,$chr(160),$network)
~Cheers
2 70 Read More
Scripts & Popups Jump to new posts
@whois window Angela 19/07/19 01:03 PM
raw 311:*:{ if ($window(@Whois) == $null) {
.window -e20n @Whois
editbox @Whois /whois
}

I am on 3 different servers and I would like a separate whois window to show up for each server. How can I do this?

Thanks
2 70 Read More
Bug Reports Jump to new posts
Re: Large number of SendMessages unset &binvars Khaled 18/07/19 01:13 PM
Thanks for your bug report. This issue has been fixed for the next version.
3 133 Read More
Bug Reports Jump to new posts
Re: Large number of SendMessages unset &binvars maroon 18/07/19 03:01 AM
I tested in the beta 86 which was fixing the url problem. I inserted my topmost example inside ON TEXT, then edited the 9990 into 9991, then inserted a new echo message containing your suggested local identifiers between the green and red messages. While the binvars were still wiped out above it, the local identifiers you suggested all remained having the correct defined strings.
3 133 Read More
Bug Reports Jump to new posts
Re: Large number of SendMessages unset &binvars Raccoon 18/07/19 12:27 AM
Somehow seems related to the recently corrected bug with /url, in that all your sendmessage communications is putting the scripting thread into an asynchronous , that is, losing synchronization.

If accessing the DLL from an On TEXT event, do the event identifiers also become null? $nick, $address, $target, $eventparms, etc?
3 133 Read More
Bug Reports Jump to new posts
Large number of SendMessages unset &binvars maroon 17/07/19 09:19 PM
A large number of received SendMessage's results in destroying the existence of all &binvar. The examples here have each SendMessage executing $bvar(), but it seems to kill the binvars regardless whether it's accessing the same binvar, or a different one each time. The effect is cumulative across separate calls to the .dll within the same lifetime of the binvar in the script thread, and I've found this happening in the current version under Win10 and under v6.35 in Windows7. It is demonstrated by using Saturn's sha2.dll, but as far as I can tell has zero to do with any hash function.

Each sha2.dll call makes a SendMessage of $bvar(&binvar,offset,1037) to read a portion of the binvar, stopping after one of the replies does not return 1037 byte values, so it makes 1 SendMessage for lengths 0-1037, and 2 of them for lengths 1037-2073, etc.

To the best of my knowledge, there isn't a protocol for sharing binary data with a mirc .dll, so the best known workarounds are to either write the data to disk and have the .dll read the binary content from disk - or do like this .dll does, where it uses SendMessage to ask $bvar to fetch the contents of the binvar. It appears that once this latter method has been done 9991 times, the binvar accessed by that 9991'st SendMessage is completely deleted, and isn't available for access even within the script thread context directly.

It's not clear to me whether it matters that $bvar is being called, or just that 9991 SendMessages has the effect of crashing the context data containing the existence of &binvars.

Demo:

1. Run this command, which works correctly.

Code
//bset &v $calc(1037*9990-1+0) 0 | bset &test 1 1 | echo -a $dll(sha2.dll,sha256,1 &v) test: $bvar(&test) | echo 3 -a binvar $bvar(&v) length is $bvar(&v,0) | echo 4 -a $sha256(&v,1)



It shows the hash of the binvar and the fact that &test still exists, and the green message shows the &v binvar exists after 9990 SendMessages, and the red message shows that the built-in identifier is able to access the &v binvar and arrives at the same answer.

2. Now edit the 9990 into 9991 and repeat. The .dll calculates the correct hash for the slightly longer binvar, but the green message shows that the &v binvar has length zero, and the fact that $bvar(&v) is $null shows the binvar does not exist, not just truncated. It also shows the same thing happened to &test, which now doesn't exist. The &binvar was deleted during the 9991'st SendMessage after correctly returning the contents of that &binvar. When testing in older versions, the $bvar(&v) must be changed to $bvar(&v,0) to avoid invalid syntax for those versions, but otherwise the same binvar deletions happened as old as v6.35.

3. The destruction of the binvars seems related to the number of $bvar() calls made via SendMessage within the script thread, not the number of accessings of a specific binvar and not the number of $dll() calls.

Code
//var %i 0, %list | while (%i isnum 0-10000) { inc %i | var %a &v $+ %i | bset -c %a 123 1 | noop $dll(sha2.dll,sha256,1 %a) | if (!$bvar(%a,0)) { echo -a binvar $bvar(%a) deleted after %i sendmessages | while (%i) { if ($bvar(&v $+ %i)) var %list %list $v1 | dec %i } | echo -a binvars existing: %list | halt } } | echo -a binvar exists after %i loops



This example created a new binvar, named &v1 through &v9991, to be used for each $dll() call where the &binvar is short enough that it makes 1 SendMessage per loop. The SendMessage uses $bvar(&binvar,offset,1037) to read a portion of the binvar, and all binvar's are again deleted after the 9991'st such SendMessage. After finding the binvar missing after the return from the $dll() call, it then checks for the existence of any of the &v1 through &v9991 binvars, and finds they're all gone.

If the binvar's length is edited to be in the 1037-2073 range causing 2 SendMessage's per dll call, the number of loops is halved, showing it's related to the number of SendMessages. If the /noop command is edited to contain the $bvar() call directly instead of via the $dll() call, the binvar does not get deleted. Adding a bunset to delete the binvar's after each usage has no effect, so the number of binvars is not causing a problem.

The issue appears to matter only when 9991 SendMessages are made from within the same script thread. You can repeat the above 9990 SendMessages as 2 separate editbox commands, or from 2 separate timer executions, without problem.

Note: If testing under v6.35, be sure to not edit the content of the binvar, as the v6.35 text buffer for receiving the sendmessage crashes mIRC if exceeding approx length 2100. The following crashes v6.35, but changing the string from 'd' into 'c' does not crash because the length is then shorter enough. Even when the string length is 4150, it hasn't crashed any recent v7 version.

Code
//bset -t &v 1 $str(d,526) | echo -a $dll(sha2.dll,sha256,1 &v ) | echo -a $bvar(&v,1-)


3 133 Read More
Feature Suggestions Jump to new posts
Re: Change the way servers are stored Raccoon 17/07/19 06:50 PM
Level 2.

mIRC should do away with the .ini format for servers, and switch to an .xml format instead. Still using a single CRLF delimited line for each server entry, each member can be uniquely named with quoted fields that are easily extensible over time. Addition of new fields like "Last-modified" time, "Added-on" time, would become possible without causing a bunch of compatibility problems.

Drop-in compatibility would be as simple as mirc.exe first detecting for .xml files, and failing that, detecting for obsolete .ini files instead.
4 121 Read More
Feature Suggestions Jump to new posts
Change the way servers are stored Raccoon 17/07/19 06:41 PM
mIRC needs a change in the servers list storage and distribution implementation.

mIRC should do the following:

Default servers should be stored in the file: servers_default.ini
User defined servers should be stored in the file: servers.ini

The UI for browsing servers should include a drop-combo: "All Servers / Default Servers / User-defined Servers"

Migrating to this new paradigm, mIRC will come with a new "servers_default.ini" file and mIRC will delete all exact duplicates from "servers.ini" leaving behind only the user-modified servers and the historic-deprecated servers from a bygone era.

Now when mIRC is installed, new servers can always accompany it without destroying the user-defined servers.

Particularities:

The drop-combo selection of "All Servers / Default Servers / User-defined Servers" will specify how mIRC behaves when connecting to and rotating between servers.

* If "All Servers" as last selected, mIRC will prioritize connecting to User-defined servers first, and failing that, will move onto servers in the Default Servers list within the matching group name.
* If "Default Servers" was last selected, then only servers within the Default Servers list will be rotated through when connecting to any groups within this list. (If said group ONLY exists within the User-defined Servers list, then it will still attempt to use one of those servers.)
* If "User-defined Servers" was last selected, then only servers within the User-defined Servers list will be rotated through when connecting to any groups within this list. (If said group ONLY exists within the Default Servers list, then it will still attempt to use one of those servers.)

Servers will be considered as a "Duplicate" and "overridden" if they share the same exact "Server Description" name between both files.

This behavior will enable updates to mIRC to allow new servers to be introduced to and removed from an existing Server Group, with user-expectant behavior and security in mind. User-defined definitions being preserved and prioritized, and, used exclusively so configured.

An augmentation to the drop-combo suggestion above, it could instead use an "[x] Include Default Servers" checkbox instead if you think this would make more sense to users.
4 121 Read More
Connection Issues Jump to new posts
Re: Unable to connect to Undernet Raccoon 17/07/19 06:18 PM
Go into Options > Connect > Servers > Undernet > select the server you wish to edit, click Edit.

Make sure the server port is 6667 and not +6697 or blank or anything else.

Go through and edit all the servers within the Undernet group.

The Default Port option is under Options > Connect > Options, and that should be set to +6697 for your general security.
If manually specifying 6667 for hand-typed servers that don't support SSL is too tedious, then change it to 6667.

As long as the server port is correctly asserted in the Edit Servers dialog for each and every server, you should have no problems.
3 105 Read More
Connection Issues Jump to new posts
Re: Unable to connect to Undernet jerod 17/07/19 04:45 PM
I tried /server irc.undernet.org 6667 and it connected. Took me to melbourne vic AU Still wont connect unless I use /server irc.undernet.org 6667
Dunno, 2 days ago it was fine. I haven't changed anything, wouldn't even know how to change the default port.
Thanks for offering up that server tho. It works.
3 105 Read More
Bug Reports Jump to new posts
Re: Disappearing tray Icon when minimized Khaled 17/07/19 03:48 PM
Good to hear. Thanks for the feedback.
11 678 Read More
Connection Issues Jump to new posts
Re: Unable to connect to Undernet Raccoon 17/07/19 12:58 AM
Undernet doesn't support SSL, so if you changed your default port to SSL or the like, that'll explain it.

I connected on the first attempt with the command: /server irc.undernet.org 6667

It connected me to budapest.hu.eu.undernet.org 94.125.182.255 [ircu.atw.hu] (i'm in the U.S.)

You can find a complete list of servers here: https://netsplit.de/servers/?net=undernet
3 105 Read More
Connection Issues Jump to new posts
Unable to connect to Undernet jerod 16/07/19 08:51 PM
I can't connect to any undernet server, it just keeps trying to reconnect but never does. Anybody else having a problem? It just started yesterday, and then I upgraded today but it didnt help. Anybody?
3 105 Read More
Bug Reports Jump to new posts
Re: Disappearing tray Icon when minimized nightwalker 16/07/19 07:42 PM
Hello,
I ran the beta for about a week and I didn't see any issues and then upgraded to 7.56. I am not noticing any issues with 7.56. It seems that this issue has been resolved. Thank you.
11 678 Read More
Scripts & Popups Jump to new posts
Re: Hide Topic on Join Jaillynian 16/07/19 10:11 AM
I might be able to cobble something here, but sadly I'm not a scripter... at least not a good one.

The last time someone gave me a hash table script, I never figured out how to use it.
2 105 Read More