Please Disable Ad-Block To View This Website.

If you block ads, this site can not survive!

Ads are very minimal for registered users. If you don't have an account please register now!

 Full Scripts
 MTS Themes
 File Queue
 Download mIRC
 Top Downloads
 Submit Form

Site Search

Link to us!

Home | Comments:
Average Rating:   9.7   nHTMLn 2.95 - execScript support by FoLKeN^
This is an unofficial release of nHTMLn by Necroman -> then modified by Dan - with one more function, execScript, which lets you execute java script commands "on the fly", i mean, without reloading the page. Useful for those who uses nHTMLn to make chat windows, emoticon support for channels, etc

Submitted Review Author's Updates

There is no review for this file yet.
July 15th, 2004:
- attach function can now attach browsers to channels, queries and other mirc windows (no only @windows or dialog ids)

- attach crash bug fixed (not tested :S)

- screenshot added ;P

July 22nd, 2004:
+ fixed the scrollbar bug -> now it is shown when the browser is detached.

+ fixed other bugs reported to me by Necroman (thanks!)



  Mode:    Create New Post

etokJan 8, 2013 10:31PM
when i use i got error E_ALREADY_ATTACHED E_FAILED

how do i solve this problm ?

FoLKeN^Jan 31, 2013 8:37PM
You can't. I no longer support this project. Fix it yourself

5a2v0Sep 5, 2012 2:48PM
Rating:     9Hi, i'm using this DLL and i like very much, but i've two problems:

1 more important): opening a web page that contain a "script.js" with the normal IE browser or with other browser i have no problem... opening the same page with nhtmln2.95 DLL in a mirc's @window i have a script error message (something like this: the object don't support the propriety............." that ask to me if i want or not continue the execution of the script in the page !!! This is a big problem for me because i can't modify the html of the page and the script.js is necessary for go forward in the navigation !!

2) the web page have the scrollbar and it works but the mouse's scroll wheel don't work !!

Warrior124Sep 2, 2008 12:32AM
I have found in recent mirc versions it lags the heck out of mirc when you use an html window in a dialog, and clicking inside the html window. Is there any way to fix this? Here is the code I have.

alias nh return $nofile($mircexe) $+ dlls/nhtmln_2.95.dll
alias web {
  var %hwnd = $dll($nh,item,$dialog(web).hwnd id:1)
  dll $nh select %hwnd
  dll $nh attach %hwnd
dialog web {
  title "mIRC Web Explorer:"
  size -1 -1 245 161
  option dbu
  list 1, 1 2 242 145, size
  edit "", 2, 1 149 243 10
  button "", 0 0 1 1, default
on *:dialog:web:init:*: web
on *:dialog:web:sclick:3: dll $nh navigate $did(2).text

Text edited by author on Sep 2, 2008 @ 1:00AM

FoLKeN^Sep 3, 2008 1:36PM
I have completely discontinued this project. I heard DCX web control has the same features and solves that issue.

err0r007Jan 31, 2011 8:35PM
be nice if this was updated to support mIRC 7* unicode

firatzJan 6, 2009 3:27PM
help me pls

firatzJan 5, 2009 5:04PM
sorry english any bad :)

status window in html page attach, status window comming data in htm page projection ?

again sorry barely tell :)

YESSNov 27, 2008 5:24PM
Rating:     10I am aware that this project is discontinued, although I have always found it to be very handy. What I'm trying to do is display a @window with nHTMLn control fullscreen using the fullscreen.dll also found on this site. The only problem is that after embedding the HTML control in a @window, there is a very visible 'frameborder' that I am unable to get rid of, (Like you would see from an IFRAME without the FRAMEBORDER=0 argument.) The frameborder I beleive is from the HTML control itself, not the window, (I am able to remove the borders from plain @windows using the correct /window flags.)

If anyone else has found a solution to this dilemma please give me a hollar, or YESS in #Eleethal @

zantetsukenNov 29, 2008 4:33PM
wouldn't margins fix that? or no?

YESSNov 29, 2008 7:48PM
I believe you are thinking of the wrong kind of border. I do not mean margin space, I mean the actual 2px beveled chrome frame that windows GDI puts around certain elements like <TEXTAREA> (When you do not define a border style), <IFRAME> (when FRAMEBORDER=0 is not used), etc.

Text edited by author on Nov 29, 2008 @ 7:49PM

daubDec 28, 2008 3:24AM
I don't know if you allready found the solution, but this helped me

<style type="text/css"><!--
BODY {margin:0px;border:0px;}

Warrior124Feb 23, 2005 9:55PM
I'm trying to get an html button to do an mirc command. Here is what I have...

dll mHTMLn_2.95.dll execScript document.body.innerHTML=document.body.innerHTML+'<button onClick="document.body.innerHTML=execScript document.body.innerHTML+' $+ $writeit $+ '">Write Test</button><br><br>'

What $writeit is suppose to do is when you click the button, Write Test, it is suppose to write "Test" to a text file. Does anyone know how I can go about this?

Here is the alias...

alias writeit { write write.txt Test }

Text edited by author on Feb 23, 2005 @ 10:22PM

FoLKeN^Feb 24, 2005 10:20AM
after attaching html to a window, execute this

//dll nHTMLn_2.95.dll handler nhtmln.handler

this is the button:

<input type="button" onClick="location.href='mirc:writeit'">

in mirc, put this:

alias writeit { write write.txt Test }

alias nhtmln.handler {
  if ($2 == navigate_begin) {
    if (mirc:* iswm $3-) {
      return S_CANCEL
  return S_OK

whenever an attached browser tries to navigate to an URL that starts with "mirc:" intead of "http://" it will be recognized as a mirc command by "handler alias". Even if it is from javascript (location.href='mirc:...') or a normal link (a href="mirc:...")

Text edited by author on Feb 24, 2005 @ 10:21AM

Warrior124Feb 24, 2005 11:51AM
Thanks, Folken. :)

Warrior124Feb 24, 2005 12:32PM
Okay, I just tried it, and I keep getting an "Internet Explorer Error" box. Here is the code I have.

on *:START:{
  dll nHTMLn_2.95.dll attach $window(Status Window).hwnd
  dll nHTMLn_2.95.dll navigate about:
  dll nHTMLn_2.95.dll handler nhtmln.handler
  dll nHTMLn_2.95.dll execScript document.body.innerHTML=document.body.innerHTML+'<b><basefont color="black" size=2 face=Verdana Border="1"><small><b><basefont color="Purple" size=2 face=Verdana Border="1"><small></b></small><basefont color="black" size=2 face=Verdana Border="1"><small> $+ $1- $+ </b></small><br><br><br><br>'
  .timer 1 1 started

alias nhtmln.handler {
  if ($2 == navigate_begin) {
    if (mirc:* iswm $3-) {
      return S_CANCEL
  return S_OK
alias started {
dll nHTMLn_2.95.dll execScript document.body.innerHTML=document.body.innerHTML+'<input type="button" value="Test" onClick="location.href='mirc:writeit'"><br><br>'

Text edited by author on Feb 24, 2005 @ 12:55PM

FoLKeN^Feb 24, 2005 1:36PM
alias started {
dll nHTMLn_2.95.dll execScript document.body.innerHTML=document.body.innerHTML+'<input type="button" value="Test" onClick="location.href='mirc:writeit'"><br><br>'

there is a single-quote value inside another. see:

execScript ...'<input .....location.href='...'>...' << javascirpt syntax error

replace location.href='...' with location.href=\'...\'

Warrior124Feb 24, 2005 2:03PM
Thanks, Folken. That works perfectly.

FoLKeN^Feb 24, 2005 3:59PM
you are welcome

Warrior124Mar 27, 2005 5:38AM
Okay, I have another question, lol. I was wondering how to go about putting two codes in like this example here?

.dll nHTMLn_2.95.dll execScript document.body.innerHTML=document.body.innerHTML+'<b><basefont color="black" size=2 face=Verdana Border="1"><basefont color="black" size=2 face=Verdana Border="1"><small><a href="mirc:" onClick="location.href=\'mirc:set %test This is a test | echo -a %test $+ \'"><small>Test</small></a><br>'

It works good with aliases. However, it doesn't work like this. Thanks again, Folken.

seec77Mar 27, 2005 6:48AM
Try this:

.dll nHTMLn_2.95.dll execScript document.body.innerHTML=document.body.innerHTML+'<b><basefont color="black" size=2 face=Verdana Border="1"><basefont color="black" size=2 face=Verdana Border="1"><small><a href="mirc:" onClick="location.href=\'mirc:set % $+ test This is a test | echo -a % $+ test\'"><small>Test</small></a><br>'

That "$+" after the echo was unneeded. I hope this works, I don't feel like checking it right now.
Good luck!

Warrior124Mar 27, 2005 7:15AM
Thanks seec77. However, the code didn't work. It just gave me an error box.

seec77Mar 27, 2005 2:54PM
May you elaborate on the contents of the error box?

Warrior124Mar 27, 2005 3:56PM
Here is the error message...
Internet Explorer Script Error

An error has occurred in the script on this page.

Line: 1
Char: 240
Error: Unterminated string constant
Code: 0
URL: about:blank

Do you want to continue running scripts on this page?

daubSep 21, 2007 12:12PM
Warrior124 said:

Here is the error message...
Internet Explorer Script Error

An error has occurred in the script on this page.

Line: 1
Char: 240
Error: Unterminated string constant
Code: 0
URL: about:blank

Do you want to continue running scripts on this page?

I have the same problem. That is because some security options are turned on in IE settings, right?
Is there a way to bypass this error, without changing the settings?

besmirJul 13, 2007 4:21AM
i dont want to to be boring but i dont know how to get the source doce of the page in nhtmln. i used //dll nHTMLn_2.95.dll execScript alert(document.body.innerHTML)
but i it doesnt show all of it just the 5 first row.i want the sorce to be saved in a file.hey FoLKeN^ i sent u a pm please help me

Warrior124Mar 14, 2007 5:55PM
Okay, got a question myself, lol. How do you get the names of files\folders which are highlighted by the mouse without actually having to click on them? I have this at the moment...
alias nHTMLn.handler {
echo -a $dll($nhtmln,caption,$1) $2- return S_OK
However, if you use an echo event it echos several things, but among them is the folder name you clicked on. It doesn't, however, give a filename you click on.

By the way, I'm making an ftp browser window that you can use to upload files to ones ftp site, but unless the browser knows the name of the file/folder you are going to upload then it won't be able to upload.
I want to make the browser to where you can select multiple files\folders, and upload them. Is there a way of getting the names of whatever you select without actually haivng to click on it, but just by highlighting with your mouse?

Text edited by author on Mar 14, 2007 @ 5:56PM

GSFFeb 16, 2007 2:31AM
hello, nice dll... although i cant used it the way i want.... i just want to create something that looks like a "skin" for mirc.. so it would have the emoticons... its working as i want...
the only problem is the CPU consumption rises as many lines are added.. i think it has to do with javascript (maybe with innerHTML specificaly.. ) but i'm not sure... any help appreciated ;)
you can see how it looks like at:

Warrior124Mar 8, 2007 4:36AM
I've created one called WebchatZ You can take a look at it if you wish. It uses an online html file which you can also download, and use in your scripts directory. You can get the html file These files were made to work for the VSIXc chat network, but you can take a look at them, and see how they were done. Also, when you click on the link for the html file you will see a blank page. Just click on "Save As", and save it to wherever you want to save it to.

Text edited by author on Mar 8, 2007 @ 4:38AM

sonicueFeb 15, 2007 9:55AM
When i attach this to a dialog.. it seems like i cant use backspace to go back. i tried to look up if i could retrive keys like in "on keydown", and then for example

if u press backspace, then
dll nHTMLn.dll back 0

is it possible? its the same when write in a form and just wants to press enter instead of clicking enter-button..

sprionJul 31, 2006 1:24PM
Oh no.. with mIRC v6.2 it crashes on left or right click. Please help this DLL!

mkhAug 1, 2006 6:11AM
Got the same problem... :(

FX100Aug 13, 2006 11:38PM
me too..

Warrior124Aug 14, 2006 1:17AM
I'm using an emoticon script on mirc6.2, and it isn't crashing on me. It might be in the coding somewhere. Can you show what your codes are?

mkhAug 15, 2006 2:40PM
Try attach a html file to a dialog :/ and then use scrool..

It would be a pity if this DLL not get updated to mIRC 6.2,
very useful for help files ect.. :(

" I'm using an emoticon script on mirc6.2, " <- me2 very nice :>

biggem001Sep 1, 2006 2:56AM
yeah i know its sad :( i hope this dll gets updates for 6.2 i dont wanna go back to 6.17

Warrior124Jun 20, 2006 2:05AM
Okay, someone pointed this out to me. Whenever you add like 13-14 emoticons on the same line you get an error message saying " /dll: line too long...". Is there anyway to fix this?

This is what I have...

on *:TEXT:*:#: {
  .dll $nhtmln select $window($chan).hwnd
  .dll $nhtmln execScript document.body.innerHTML=document.body.innerHTML+'<b><basefont color="black" size=2 face=Verdana Border="1"><small> $+ $roomstatus($nick) $nick : <basefont color=" $+ $fontcolor($1-) $+ " size=2 face=Verdana Border="1"><small><small> $replace($em.filter($strip($1-)),$chr(10),
,$chr(39),',$chr(266),Ċ,$chr(269),č,$chr(295),ħ) $+ </small></small></b><br>'
  .dll $nhtmln execScript scroll(0,9999999999)

Text edited by author on Jun 20, 2006 @ 2:08AM

Warrior124Jun 13, 2006 9:55AM
For those wishing to know what all special characters to replace I've found this to work...

Just remove the + sign. I had to add that because the code wasn't displaying. So, just remove the + signs. :)

Text edited by author on Jun 13, 2006 @ 9:58AM

blahhhMar 3, 2006 7:58PM
Rating:     10can this be used to check boxes in webpages and forward it to the next page ? if possible how ;x

MpdreamzMar 4, 2006 4:53AM
Just as you would on a regular website: use javascript.

samehgodaNov 20, 2005 2:37PM
hey Folken^
i have an error
while i try to login msn chat rooms as ex by more than one user and open theme in the mirc ( 10 users as ex. on 10 windows )
i got the correct page when it load but when i click on any button of the 10 windows they all act as one user
while i login by 10 users and it work successfully with the first loaded page after that the error occur
is there is any help with that

SorbobOct 9, 2005 1:33PM
Is there a way to add a Address bar in the @windows?

MpdreamzOct 9, 2005 2:48PM
you can use the editbox at the bottom as one, or use windowfx.dll.

FunmanSep 22, 2005 4:46AM
I'm having problems using the DLL when a website is loading a java applet, it will freeze up the script and mIRC untill you kill the process, any possible reasons/solutions to this?

ClickHeReSep 22, 2005 9:20AM
maybe call $dllcall | /dllcall instead of $dll | /dll

FunmanSep 22, 2005 10:04AM
that isn't a normal alias for mIRC, it must be something custom you've ot if you can use that...

ClickHeReSep 22, 2005 10:23AM
DLL Support

The /dll and $dll() features allow you to make calls to DLLs designed to work with mIRC. The main reason you'd want to do this is that processing information in a DLL can be far faster than doing so in a script, so for intensive data processing a DLL would be more efficient.

Note that mIRC also supports calling COM objects, for calling non-standard DLLs.

Warning: do not use DLLs from sources you do not trust. See the Accepting Files section for information on the dangers of accepting and using files from the internet.

/dll <filename> <procname> [data]
$dll(filename, procname, data)
$dllcall(filename, alias, procname, data)

FunmanSep 23, 2005 8:49AM
Seeing as I suck in general with dlls, coudl you show me an example of the use of $dllcall() ?

Also, does anyone know of a way to make nHTMLn navigate to other websites after the dialog has been loaded ?

Text edited by author on Sep 24, 2005 @ 3:59AM

hixxySep 22, 2005 11:57AM
$dllcall is a multi-threaded version of $dll.

elxSep 15, 2005 1:49AM
i have a problem here in the DLL
on *:open:?:*:{

if ($window($nick).type == query) {
window -i $nick
;Attaching HTML in Chat Box
.write -a nhtmln_output.log $dll(brows.dll,attach,$window($nick).hwnd)
;Selecting HTML Box To Display in
.write -a nhtmln_output.log $dll(brows.dll,select,$window($nick).hwnd)
;set a black page
.write -a nhtmln_output.log $dll(brows.dll,navigate,about:blank)

on *:text:*:{


if (%nhtml.rpt == E_ALREADY_ATTACHED) {
.beep $dll(brows.dll,select,$window($nick).hwnd)
;[wont work because error : E_NOT_READY]
.timer 1 1 echo 6 $Dll(brows.dll,execScript,this.document.body.innerHTML=this.document.body.innerHTML+'-----------<br>')



if (%nhtml.trpt == E_NOT_READY) {
.timer 1 1 $dll(brows.dll,execScript,this.document.body.innerHTML=this.document.body.innerHTML+ $+ ' $+ %pvt.text $+ <br>')


Text edited by author on Sep 15, 2005 @ 1:53AM

FoLKeN^Sep 15, 2005 7:05PM
I have tried your code and had no errors.

find me #latichat #solid
or warufolken-at-hotmail-dot-com

elxSep 17, 2005 12:00AM
well it does here , but some times its ignores the error
and then shous the nickname only without the privte text that been writen

thank you for reading my problem

elxSep 14, 2005 7:34PM
nice DLL
i need help here since iam a begginer in Java
i need the way or a var to add at my_function(text/var) to it will be displayed in the page
for ex: $dll(nhtmln.dll,execScript,my_function($r(1,99) $+ %var))

and the function will document.write it in the page or what ever way you have

elxSep 15, 2005 12:05AM
thanks ive resloved my problem without knowing java scripting
wanted to make mirc chat look a like msn by addking smiles in chat box thanks to nhtmln
the code if anyone want to know it in the future :

alias test {
%pvt.text = $1-
%smile.1 = :)
%idir = $mircdir
%idir = $replace(%idir,\,/)
%idir = $replace(%idir,/,\\)
%pvt.text = $replace(%pvt.text,%smile.1,<img src=" $+ %idir $+ smile.gif "></img>)

echo $dll(brows.dll,execScript,this.document.body.innerHTML=this.document.body.innerHTML+ $+ ' $+ %pvt.text $+ <br>')


[|Enter|]Aug 30, 2005 9:27PM
I dont know about anyone else but.. i asked NecroMan to put a popup blocker a few years ago in the dll but he said he wasnt doing it anymore so i figured i would ask you

Does it look like a possiblity?

Text edited by author on Aug 30, 2005 @ 9:28PM

SorbobAug 7, 2005 10:19PM
Is there a way for when i type: :) or someone types :) the java smile comes up?

FoLKeN^Aug 8, 2005 9:02PM
it is possible with js

one way could be, to add a keydown event on <body> tag that executes a function that will replace the smiles codes with their respective image tag, contained in a textbox or whatever you are using.

dont know about speed or efficientness, its the first idea that came up

SorbobAug 9, 2005 7:38PM
Hmm javascript learn js then

Nope cant do this lol...any1 wanna help?

Text edited by author on Aug 9, 2005 @ 9:09PM

FoLKeN^Aug 10, 2005 3:47PM
find me @ - #eScripting or #solid #latinchat

i'll try to do my best to help you

AriochOct 21, 2004 9:41PM
ok the execscript feature is a nice touch touch but...

always a but isin't there?

I would be happy if someone fixed a few things: (Listed in order of importance)

The scrollwheel doesn't work to scroll the webpage up and down.
The ctrl+c\v\x doesn't copy, paste, or cut highlighted text.
The Delete key doesn't delete highlighted text, or any text for that matter.
The tab key doesn't move the cursur on the webpage.

These problems have been present since i started using it in version 2.92 and I hoped they would be cleared up.

Warrior124Dec 7, 2004 9:40PM
Is there a way of making the custom chat window return properly? I use the <br> code at the end. However, when it scrolls down I have to use the scroll bar to scroll down with it..

P.S.: I found where folken gave the answer to that question at the bottom of this page. Thanks for all your hard work, Folken. Great job. :)

Text edited by author on Dec 8, 2004 @ 1:15AM

FoLKeN^Dec 8, 2004 3:59PM
use scroll(0,9999999999) (javacript function) everytime you add lines to html page

FoLKeN^Dec 12, 2004 9:15AM
sorry not everything in the life is possible - when have some time (im full of work) i'll try to fix that


l337Jun 26, 2005 11:11AM
I've had the MouseWheel thing working before i even introduced the execScriptidea to you. Hoe :)

FoLKeN^Jun 27, 2005 3:11PM
sure, do you want a prize ?

SSJ4_Son_GokuJun 27, 2005 5:09PM
Here's a cookie

IceShamanMay 28, 2005 3:25PM
Anyone who why document.write only writes data the first time you use it on a window, probably something obvious I'm missing I was fiddling to try and create a chatroom like interface :/

SatApr 4, 2005 8:48AM
hey guys ... someone can exdplain me how integrate a dialog in a @window .. thx for response it could be really appreciate

FoLKeN^Apr 4, 2005 1:15PM
i don't know what does your question have to do with nHTMLn, but you can put a dialog inside a @window using WindowFX DLL by Epsilon

SatMar 23, 2005 11:46PM
FoLKeN^ .. i would really know how do for getting picture from user msn.. i dont know if u got a tutorial or snippet for this.. or only explaining how do.. i really like your client msn so much ...but .. i created mine attached to mirc like msn for mirc from i wont steal u but thats fucking too great .. it could be very cool if u can help me im really sorry for my english ..great job .. thx pz

FoLKeN^Mar 24, 2005 10:17AM
its pretty hard at first, at least it was for me, I can only give you some sites that where is explained, and also there is an example session for getting/sending a display picture. Site explaining P2P protocol (the one used for DP transfers) Another helpful site Site explaining MSN protocol

Once you read all that sites (heh) you can contact me at warufolken-at-hotmail-dot-com if you have any doubt.

RixxonFeb 18, 2005 2:46PM
I have nhtmln windows attached over the channel windows, if I Desktop a channel window nhtmln gets detached!

Warrior124Feb 23, 2005 10:31PM
Yes, it does detatch whenever you set it to desktop. However, all you need is an alias to reatach it. Here is what I have in my menu popups.

menu * {
  ..On { 
    set %smileson on
    if ($chan) {
      .dll Guardian\dlls\nHTMLn_2.95.dll attach $window($chan).hwnd
      .dll Guardian\dlls\nHTMLn_2.95.dll navigate about: $+ <head><link REL="StyleSheet" TYPE="text/css" HREF=" $+ $mircdir $+ style.css"><SCRIPT language="javascript" src=" $+ $mircdir $+ menu.js"></SCRIPT></head>
      .set %echocolor gray
      .getnicks $chan 
      .timer 1 0 dll Guardian\dlls\nHTMLn_2.95.dll execScript document.body.innerHTML=document.body.innerHTML+'<b><basefont color="green" size=2 face=Verdana Border="1"><small>Please wait. Connecting to server...</b></small><br>'
      .timer 1 1 connected
      .timer 1 2 dll Guardian\dlls\nHTMLn_2.95.dll select $window($chan).hwnd 
  ..Off { 
    unset %smileson
    if ($chan) { .dll Guardian\dlls\nHTMLn_2.95.dll detach $window($chan).hwnd }

azadderJan 30, 2005 10:07PM
There's in error in the help file :

This code displays the web board on the desktop:

echo -a $dll(nHTMLn_2.95.dll,attach,$window(-1).hwnd)
echo -a $dll(nHTMLn,navigate,

FoLKeN^Jan 31, 2005 1:09PM
welcome to mirc scripting!

$window(-1).hwnd --> returns desktop's hwnd

artwerksJan 31, 2005 1:10PM
I think he was pointing out the dll path.

FoLKeN^Jan 31, 2005 6:30PM

azadderJan 31, 2005 7:35PM
Woah... Hope you weren't being sarcastic there.
I was just referring to the .dll path.

GabrieL-1Jan 13, 2005 11:46PM
Hey guys... Not to sound like a total ass, but: I downloaded this a couple of days ago. Since then I read the help file (very helpful), taught myself javascript, brushed up on html, brushed up on regex (good for smiley stuff), and haven't had half as many problems as the people commenting here about trying to display a smiley.
I'm really not trying to brag. All I'm saying is RTFM and do some simple web searches before you go hastling the author about how his DLL isn't working. If it's not working, you likely did something wrong, and will learn more by fixing it yourself. And how can you be sure the DLL is not working when it's so obvious half the people complaining here don't know jack about what they're trying to do? There's no mIRC-->HTML tutorials out there, but the help file is very sufficient, and the javascript/html tutorials already exist, so go RTFM. The author wrote the DLL, but didn't invent javascript, so it's not his job to teach it to you.
Now, that said... It'd be nice to read comments about what ppl have done with this, perhaps exchanging "useful" code, actual bug reporting, and props to FoLKeN/Necroman for giving us this awesome DLL out of the kindness of their hearts! ;)

Warrior124Jan 14, 2005 2:54AM
I agree that we need to look for the info before we ask questions. That is what I've done before posting any questions here. That is the only reason why I post questions is when I've already exausted everything I can think of. For example, the background color question I had. Before I asked about it here I looked through the help file first which told nothing of how to color the background. I then looked at many different websites to get help. All of them were helpful in how to color background. However, none of them worked with nHTMLn_2.95.dll. So, I finally asked here how to do it. For some reason, the answer Folken gave me didn't work at all. So, I took a look at SmilesView.bub, and saw how that code was set up. It works perfectly. Here is the code I have for it.
/dll dlls\nHTMLn_2.95.dll navigate about: $+ <head><link REL="StyleSheet" TYPE="text/css" HREF=" $+ $mircdir $+ style.css"></head>
This will read the code from style.css, and color the background.

Here is the code from style.css.
body {background-color: green; background-position: center; background-repeat: no-repeat }
So, while there are some things that you can find there are others that can't hardly be found at all unless you look in just the right place. There are many scripts that I have made that I wasn't able to put everything in a tutorial that I needed to. However, I am one that if anyone has a question they could always come to me, and ask me how something works. Plus, if someone finds a way to make something work for them then I would always encourage it. So, if the tutorial doesn't have the answer you need, and you can't find the solution on a website then I hope someone can feel they can go to the author of whatever they have and get the answer from him/her.

Speaking of which, I had the same question up for a week or more without an answer until late last night. When I finally got an answer the author of this dll calls me stupid for something I posted in July concerning nHTMLn_2.94.dll in which I had a code that worked kind of like smilesview.dll. Back then I didn't know as much of nHTMLn dlls as I do now. Others were asking how to use it. So, I shared what worked with me with others. People have to remember that not everyone knows how to code for a dll to work the way it should, and just giving partial examples isn't enough for most. The tutorial of this newest dll is more precise. However, even in this toturial it doesn't give details on how to code it to mae background colors, or even to make it fixed, centered, or whatever. There are also no websites that tells how to code for nHTMLn_2.95.dll. So, calling someone stupid for coding something that works for them, especially when there are no answers to what you need anywhere you look is just not something someone needs to do. I have great respect for everyone that works hard on something. However, just because I work hard on my scripts doesn't give me the right to call someone stupid if someone uses other methods to make the script work than what it was originally intended for. Respect is earned both ways. I respect everyone, but I give more respect to the ones who gives respect to others.

MpdreamzJan 14, 2005 7:00AM
i agree with you both and stating questions about mircscripting and answering them is one of the purposes of this website i believe.
sharing information is a good idea and then later on maybe throw it all in a tutorial :)
Warrior124 he didnt call you stupid he called the method stupid. and it wasnt directed souly at you i think he was just stating that this way
is a really bad one as it eats resources ( which this dll is kinda heavy on in itself already), also the reason why i picked it out of this comments section, alot of people seem to do it.

Warrior124Jan 8, 2005 12:05PM
I'm working on a script that uses this dll, and I wanted to be able to change the background color of the channel. How can I go about doing this? Here is a code I have so far, but it doesn't work.
/dll DllTmp\dll $+ $window($comchan($me,1)).hwnd $+ .dll execScript document.body.innerHTML=document.body.innerHTML+'<style type="text/css"><html, body {background-color: %color }></style>'

Text edited by author on Jan 8, 2005 @ 12:06PM

MpdreamzJan 13, 2005 4:10PM
use document.body.innerHTML=document.body.innerHTML+ as a function in your .htm file
instead of calling it with execscript
add this to body
<script language="JavaScript">
function showmn(txt) {

then call it with execscript like this
echo $dll(pathtonhtmln.dll,execScript,showmn(' your text goes here $identifiers too and %variables too '))

for the background use a css file declared in the html

i just noticed you saying this:
No, you don't neccessarily have to continually make new copies, unless you visit more than one room at a given time as far as I know of. What I also do is make a code to where it deletes all the dlls in the folder DllTmp on startup. The code is
on *:START:{
if (!$exists($mircdir $+ \DllTmp)) { mkdir DllTmp }
else { remove $findfile($mircdir $+ \DllTmp,*dll,0,remove $1-) }

use the select feature to make it work in multiple rooms
what i do is /copy a temp.htm with the function in the body as mentioned earlier and the .css declaration in it to $+($chan,.htm) in the same folder ( $scriptdir) when I join a room then navigate to the newly copied html.
then i join another one and another and so on and so on.
now when an event occurs add this before the execscript.
echo $dll(nHTMLn_2.95.dll,select,$window($chan).hwnd)

obviously queries dont use $chan :p this will execute the execscript in the right window withouth nesseccary activating the window.

hoped this helped

Text edited by author on Jan 13, 2005 @ 4:20PM

FoLKeN^Jan 13, 2005 9:00PM
why people still use that CRAPPY code stolen from smilesview?

cant you see that is just STUPID to create a copy of dll in a folder "DLLTemp" when you have "select" function to identify hwnds?!

and, if you want to change the bg, you can use this:

//dll nhtmln.dll execScript document.body.bgColor='#FF0000';

or the color you want.

again, please READ THE ENTIRE DOCUMENTATION before stealing crappy codes.

Warrior124Jan 13, 2005 9:22PM
Folken, thank you for your help, but before you or anyone else makes such stupid statements like that again please reread what was written. That was there when the first release of nHTMLn_2.94 came out. So, that is old news already. Check things before making comments on things, and by the way. If this sounds as if I'm putting you down then think about how comments like that from you makes others feel. If you don't like it don't do it to others.

P.S.: Thanks for your help, Mpdz. I'll give it a try.

Text edited by author on Jan 13, 2005 @ 9:50PM

MisanthropSep 28, 2004 6:30AM
what about making the user to decide if he wants to use the render engine of Internet Explorer or Gecko (Mozilla Foundation) if installed?
I tried it some time ago, but it doesn't work perfect, but I had no time to check why, although, it rendered the html page.
What you need is to use another CLSID (the one of gecko / mozilla instead)
maybe, you'll have also to register the interface dll or ocx or whatever it was to get it work, not 100% sure, is some time ago, but there's some information on the net about that

FoLKeN^Sep 28, 2004 7:01PM
not needed, 90% of people uses IE, but im not part of them. I prefer Mozilla

Text edited by author on Sep 28, 2004 @ 7:02PM

STINGSep 13, 2004 3:02AM
When attaching a html page to a channel window, is there any way to preserve the channel popups?

FoLKeN^Sep 28, 2004 6:58PM
like i replied you on forums, use right click you f***er dll

eXconAug 31, 2004 9:38AM
Ok first of all,
Props to Dan for making this sweet .dll just that little bit sweeter ;)
Nice to see that Necro is still alive, thanks for the original man, ALL of your goodies are appreciated,
and last but not least for the "credits" side of things belongs to FoLKeN^....
dude, that's just some shit hot codin. :)
Be sure to get that tutorial out lol, no, no really, i mean it
Personal queries reguarding the usage:
Would someone please show me an example that would allow me to "extract" lines of code/output from a java-written webpage ?
Thx in advance for any eg:'s supplied

P.s. FoLKeN^
Less reading more tute writing :p
thanks y0..

Silent_LoveAug 26, 2004 3:39AM
When try this code

alias test {
var %myvariable = Whoaaa!!!

window -p @test

echo -a $dll(nHTMLn_2.95.dll,attach,$window(@test).hwnd)

echo -a $dll(nHTMLn_2.95.dll,navigate,about:blank)

echo -a $dll(nHTMLn_2.95.dll,execScript,document.write('The variable value is...: $+ %myvariable $+ '))

I get this error:


I figure out why now.

Text edited by author on Aug 26, 2004 @ 4:01AM

reggaemanuAug 16, 2004 6:22PM
Good idea, good job = great dll :-D

great thanks FoLKeN^

OokMP3Aug 3, 2004 2:47PM
I have noticed a problem with 2.95 thats not present in 2.94.

alias nhtmln return $dll(dlls\nHTMLn_2.95.dll,$1,$2-)
alias shownhtmlnbug {
window -a @html
; attach window
nhtmln attach $window(@html).hwnd
; got blank
nhtmln navigate about:blank
; wait for ready state
.timerwaitrdy -m 0 250 nhtmlnrdy
alias nhtmlnrdy {
; wait untill rdy
if ($nhtmln(ready,$window(@html).hwnd) != S_TRUE) return
; stop timer
.timerwaitrdy off
; set style & default bg img
var %htmlStr <html><link REL="StyleSheet" TYPE="text/css" HREF=" $+ $replace($mircdirdlls\style.css,\,\\) $+ "></head><body bgproperties="fixed" background=" $+ $replace($mircdirimages\angry.gif,\,\\) $+ " OnContextMenu="return false"></body></html>
nhtmln execScript document.write(' $+ %htmlStr $+ ')

after running /shownhtmlnbug all further execscript commands fail saying E_NOT_READY & //!echo -s rdy: $nhtmln(ready,$window(@html).hwnd)
will always return S_FALSE.
Any ideas?

FoLKeN^Aug 3, 2004 5:38PM
like i said to DR-Master, try to not use document.write(), use innerHTML property of body tag instead - i replaced it in your code and it doesnt keep saying not ready... a weird bug of the dll - or ie browser!

the only problem you'll find is that if you want to see the source code, you will get a blank file :S - maybe i'll add a function to save the source in a file or something

here's the working code:

alias nhtmln return $dll(dlls\nHTMLn_2.95.dll,$1,$2-)
alias shownhtmlnbug {
window -a @html
; attach window
nhtmln attach $window(@html).hwnd
; got blank
nhtmln navigate about:blank
; wait for ready state
.timerwaitrdy -m 0 250 nhtmlnrdy
alias nhtmlnrdy {
; wait untill rdy
if ($nhtmln(ready,$window(@html).hwnd) != S_TRUE) return
; stop timer
.timerwaitrdy off
; set style & default bg img
var %htmlStr <html><link REL="StyleSheet" TYPE="text/css" HREF=" $+ $replace($mircdirdlls\style.css,\,\\) $+ "></head><body bgproperties="fixed" background=" $+ $replace($mircdirimages\angry.gif,\,\\) $+ " OnContextMenu="return false"></body></html>
nhtmln execScript document.body.innerHTML=document.body.innerHTML+' $+ %htmlStr $+ '


DM-MaSTeRJul 25, 2004 12:39PM
I have problem with execScript.

When i used navigate to some page on my computer it is displayed and i have no problems.
But when i use execScript document.write(whatever goes here) it clears the page and it shows a blank page with the text i wrote ... some help ?

FoLKeN^Aug 3, 2004 5:18PM
maybe that document.write messes the current html code of the page.. because doing document.write, adds plain text to the end of the file... try it with another page... or try this:

execScript document.body.innerHTML = document.body.innerHTML+'your text'

da^hypeJul 23, 2004 4:43AM
I suggest you make better examples for the emotion thing. like example events or something. just a thought..

Warrior124Jul 23, 2004 11:46AM
Here is an example script to make emoticons in text with.

;This sets up text to be replaced by the emoticons.
alias emot {
var %emot = $1-
%emot = $replace(%emot,$chr(58) $+ $chr(41),<img src=" $+ $replace($mircdir,\,\\) $+ \images\\smilen.ico $+ ">)
%emot = $replace(%emot,$chr(58) $+ $chr(40),<img src=" $+ $replace($mircdir,\,\\) $+ \images\\sad.ico $+ ">)
return %emot

;This sets up the chat window.
on ^*:join:#:{
if ($nick == $me) {
copy -o $findfile($mircdir,nHTMLn_2.94.dll,1) DllTmp\Dll $+ $window($chan).hwnd $+ .dll
dll DllTmp\Dll $+ $window($chan).hwnd $+ .dll attach $window($chan).hwnd
dll DllTmp\Dll $+ $window($chan).hwnd $+ .dll navigate about:blank

;To add text to your custom made window do this...
alias echo {
if ($chan) { dll DllTmp\Dll $+ $window($chan).hwnd $+ .dll execScript document.write(' $+ $1- $+ <br>') }
if ($dialog(Test)) { dll DllTmp\Dll $+ $dialog(Test).hwnd $+ .dll execScript document.write(' $+ $1- $+ <br>') }
else { echo $1- }

;To use in a dialog window...
on *:dialog:test:init:*:{
copy -o $findfile($mircdir,nHTMLn_2.94.dll,1) DllTmp\Dll $+ $dialog(test).hwnd $+ .dll
var %hwnd = $dll(DllTmp\Dll $+ $dialog(test).hwnd $+ .dll,item,$dialog(Test).hwnd id:1
dll DllTmp\Dll $+ $window($chan).hwnd $+ .dll attach %hwnd
dll DllTmp\Dll $+ $window($chan).hwnd $+ .dll navigate about:blank

;The "on text" event
on ^*:TEXT:*:#:{
if ($chan) { echo $chan $nick : $emot($1-) }
if ($dialog(Test)) { echo $dialog(Test) $nick : $emot($1-)

;The "on input" event
on ^*:INPUT:*:{
if ($chan) { echo $chan $me : $emot($1-) | msg $chan $1- }
if ($dialog(Test)) { echo $dialog(Test) $me : $emot($1-) | msg $comchan($me,1) $1- }

;End of Tutorial.

Text edited by author on Jul 23, 2004 @ 12:12PM

da^hypeJul 23, 2004 9:42PM
* /dll: unable to open 'C:\mIRC\DllTmp\Dll1508198.dll' (line 20, script3.mrc)

Warrior124Jul 23, 2004 11:13PM
da^hype said:

* /dll: unable to open 'C:\mIRC\DllTmp\Dll1508198.dll' (line 20, script3.mrc)
Do you have the folder DllTmp in your mirc folder?

SSJ4_Son_GokuJul 23, 2004 11:24PM
I don't think it has to do with that... all over the script it says dll DllTmp\Dll $+ $window($chan).hwnd $+ .dll and I doub that's an actualy dll...

Warrior124Jul 23, 2004 11:56PM
What it is supposed to do is copy the nHTMLn_2.94.dll to the folder DllTmp, and rename it to the channels window handle. So, it is an actual dll created from the original nHTMLn_2.94.dll. This way you can use multiple custom windows for each channel you visit.

darkieJul 24, 2004 3:00AM
Do you really need to continually make new copies of the DLL file? I've never done that.

darkieJul 24, 2004 3:03AM
You might wanna upgrade to the latest version. I did have a prob with all the channels detaching when I close one window, but the latest one solves that issue.

EDIT: No it doesn't.

Text edited by author on Jul 24, 2004 @ 3:04AM

Warrior124Jul 24, 2004 1:44PM
No, you don't neccessarily have to continually make new copies, unless you visit more than one room at a given time as far as I know of. What I also do is make a code to where it deletes all the dlls in the folder DllTmp on startup. The code is
on *:START:{
if (!$exists($mircdir $+ \DllTmp)) { mkdir DllTmp }
else { remove $findfile($mircdir $+ \DllTmp,*dll,0,remove $1-) }

FoLKeN^Jul 24, 2004 9:31AM

you got that code from SmilesView !!!!!!!


Warrior124Jul 24, 2004 12:46PM
Folken, I have the greatest respect for you, man, but without better explainations on how to use the dll you are basically working blind. This coding works for me, and others were asking how to use it. So, I gave the coding that works for me. Yes, it was coding like that used in smilesview.dll, but with a little changing, like what I did, it works for nHTMLn_2.94.dll as well.I see now where after I gave my coding you gave some as well. I'll try it out, but don't get mad when someone tried to help others use something. What really ticks me off is when someone knows how to do something, and holds it back, because they think they are the only priviledged individuals to know how to code something to work. If I created something that I knew how to code, and heldhow to code it correctly back, but gave the file in for people to download, and use then it will be just a waste of my time, as well as a waste of time for anyone else to use. Yes, there is a help file to view, but it really doesn't go into detail, plus it is made for people mainly who knows how to code for dlls. If we just basically give a file to someone, and expect them to know what to do then we arenot really teaching what we know. I'm sorry if it sounds like I'm angry, but after seeing what you posted it really got me ticked off. What you have given us is great, and I commend you greatly for it, but please don't tell me what I shouldn't code when no real explanation of how to code was given before now.

FoLKeN^Jul 24, 2004 2:44PM
don't you see that is not necessary to make a copy of the dll for every window you have attached?

you have to use 'select' dll function, which makes the "working window" the hwnd you specify. any functions executed after will act for that 'selected' window

Text edited by author on Jul 24, 2004 @ 2:47PM

darkieJul 24, 2004 11:43PM
There's a bit of a problem though: when I close a channel window, all the others get deactivated as well. Whether this is a fault of my script or the DLL i am unsure, but I will put more weight on my script.

DM-MaSTeRJul 24, 2004 8:16AM
How to execute mIRC commands when something gots clicked onto a HTML page ? for example i want to make a menu and i want to do something when it is clicked

cypherJul 24, 2004 8:55AM
use the html handler function to see when the browser starts to navigate to a link.
return E_CANCEL to stop it navigating after you've done your aliases etc.

DM-MaSTeRJul 24, 2004 9:05AM
I think you misunderstood or i didn`t explain it well.
I mean is there something like this:


to be put in the source of the page so it executes the alias directly

FoLKeN^Jul 24, 2004 9:40AM
that's exactly what i do -> when the handler sends a "navigate_begin" and the address has a "mirc:" prefix instead of "http://", mirc recognizes it as a mirc command, then executes it and return S_CANCEL to prevent the browser to navigate

look, this is my handler alias:

alias handler {
if ($2 == navigate_begin) {
if (mirc:* iswm $3-) {
$eval($replace($eval($mid($3-,6),2),$chr(37) $+ 20,$chr(32)),2)
return S_CANCEL
return S_OK

and here are 2 examples of html code that executes mirc commands. The first, popups the mirc menu and prevents the browser to show the default popup (unless there is a selected text, that way i show the cut,copy,paste and select all menu; then there is an onclick event that gives focus to the editbox (like normal mirc windows do when you left click inside the window). The second its just a link that echos on status window the word "hello world"

<body oncontextmenu="if (!document.selection.createRange().text) location.href='mirc:mircpop'; return false;" onClick="location.href='mirc:editbox -af $editbox($active)'";>

<a href="mirc:echo -s HELLO WORLD!">Click me!</a>

darkieJul 24, 2004 3:27AM
Is there a way to tell the DLL to remove itself from memory?

l337Jul 22, 2004 1:34PM
Your just keeping this war going foe!

Warrior124Jul 19, 2004 9:18PM
Hey, Folken. Awesome work with the new nHTMLn_2.94.dll.

I have the same problems with it though as some other people do with the pics not showing up. Here is an example code that I have already tried.

set %text $replace($?="Enter Text",wink,<img src=" $+ $findfile($mircdir,wink.gif,1) $+ ">) | $dll(Smiles\nHTMLn_2.94.dll,execScript,document.write(' $+ %text <br>'))

Everything works just fine. However, it replaces the word wink with a box with a red X in the middle. I've seen a few posts already concerning this, but none that went into detail, and I thought I would post a detailed one for you. Thanks for all your hard work. :)

FoLKeN^Jul 19, 2004 9:47PM
well, remember that javascript interprets the "\" as a prefix for character like \n, \t etc, so you must do a $replace in the $findfile changing "\" with "\\"... the same for other special characters like ', read the other comment to see how to do it

blcjbJul 20, 2004 9:19PM
My quick & dirty workaround for that issue was to set a %variable for my img directory. Went a little something like this.
on *:START:{
if (!%imgdir) { .set %imgdir $+($replace($finddir($mircdir,img,1),\,/),/) }

Just replacing the backslash for a forward slash.

Where img would be the directory to your images. Seemed to fix the same issue many of you are having for me =s

So in the end it'd look something like this.

<img src=" $+ %imgdir $+ wink.gif">

Might help, might not. If it does, I'm glad to have contributed any useful info.

Text edited by author on Jul 22, 2004 @ 1:31AM

Warrior124Jul 20, 2004 5:14PM
Okay, I found the answer. Folken was right, but I didn't quite get what he was talking about, or what to do. So, here it is.

For those of you having problems getting the pics to show up do this. Instead of giving the path as "C:\myscript\images\wink.gif" make it "C:\\myscript\\images\\wink.gif", or you can also do this.
$replace($mircdir $+ \ $+ images\wink.gif,\,\\) $+ ">')

So, to write the image to your window would be this code

dll $scriptdirnHTMLn_2.94.dll execScript document.write('<img src=" $+ $replace($mircdir $+ \ $+ images\wink.gif,\,\\) $+ ">');

Text edited by author on Jul 20, 2004 @ 5:15PM

Warrior124Jul 20, 2004 12:41AM
Okay, I did the replacing of certain text, and such. However, it is still doing the same. So, I right clicked on one of the boxes to check its properties. The properties should've been "URL:C:\MyScript\Images\wink.gif", but instead it was "URL:about:blankimages\wink.gif". So, it is substituting my mirc directory by using the webpage I navigate to. I even tried replacing the about:blank with my mirc directory, but it still doing the same thing. Any ideas?

NecromanJul 18, 2004 2:12PM
I like it :-)

Just a few hints:

1. Do not call CoInitialize() inside execScript (one call in LoadDll() is quite enough).
2. Don't forget to release ALL successfully obtained COM pointers, including IDispatch*, IHTMLDocument2* and IHTMLWindow2* (for safety, use the RELEASE macro).
3. You might want to check if the browser is ready before trying to get the document pointer. Take a look at the "print", "zoom" and "ready" functions and the E_NOT_READY error message. If you don't do this, execScript may fail in aliases but work normally from the command-line.

FoLKeN^Jul 18, 2004 5:21PM
thought you died man :\ your profile said "Necroman was last seen on ... page 312 days ago"

;) thanks for the hints, but you should know that im not a dll coder, nor a c++ programmer, so that's why you find that things...

one more thing, how may i contact you? i wanna ask you somethings about other functions that are causing mirc to crash...

Text edited by author on Jul 18, 2004 @ 5:22PM

NecromanJul 19, 2004 5:55AM
I did die - for the mIRC community. I haven't dealt with COM/API/mIRC for ages, so it makes little sense to send me bulks of code to review and fix :) But if you have a quick question though, you can e-mail me: Replace -at- with @.

MadsonJul 7, 2004 2:17AM
alias htmldll { dll $+(",script/dlls/nHTMLn_2.93.dll,") $$1- }
alias htmlwin {
if ($2) {
var %w = @ $+ $1
window -p %w
htmldll attach $window(%w).hwnd
htmldll navigate about:black
htmldll execScript alarm(' $+ $2- $+ ')
so when i run /htmlwin alias mirc just crash with a msg of illigal operation... here're the details:

MIRC caused an invalid page fault in
module NHTMLN_2.93.DLL at 0167:01a61843.
EAX=00000000 CS=0167 EIP=01a61843 EFLGS=00010246
EBX=0108bc10 SS=016f ESP=0083cdb8 EBP=0083eddc
ECX=0083cda0 DS=016f ESI=00000000 FS=36c7
EDX=00000000 ES=016f EDI=00000000 GS=0000
Bytes at CS:EIP:
8b 08 8d 55 f8 52 50 ff 91 b0 01 00 00 85 c0 7c
Stack dump:
0108b820 00f7b6fc 0108bc10 00000003 00f7b6fc 00620061 0075006f 003a0074 006c0062 00630061 0000006b 00000001 00000000 9e26369f 0000016f 0083ce08

STINGJul 7, 2004 5:39AM
I count two possible errors in your script.

1) about:black should be about:blank I think?
2) alarm should be alert?

Anywayz, I only manage to let nHTMLn crash, if I skip the "navigate,about:blank" line.


nHTMLn also crashes when you specify no path, when navigating. Regardless if the file exists or not.

echo -a $dll(nHTMLn_2.93.dll,navigate,chanwin.htm) ---> mIRC crashes
echo -a $dll(nHTMLn_2.93.dll,navigate, $+ $mircdir $+ chanwin.htm) ---> OK

Text edited by author on Jul 7, 2004 @ 6:25AM

NiceboyJul 7, 2004 7:53AM
a bit change :)

MadsonJul 7, 2004 9:54AM
ok i must have been absent-minded... definitely but it still crashes even after editting it to correct. i noticed that when i enter the cmds one by one through the command line it works just fine but not put in an alias

ZalyzJul 18, 2004 7:52PM
u could try milisecond setted timers, for instance: .timer -m 1 5 <cmd>
it will be instant for users, but not instant for the .dll

NeRFaHoLIcJul 17, 2004 11:44PM
FoLKeN^ I got the emoticons working with execscript but if i do document.write('hey isn't') it comes up with an error because of the ' character in isn't, how can I fix this problem?

FoLKeN^Jul 18, 2004 12:33AM
you should add text this way:

var %str = $replace(here goes the string to add,/,//,\,\\,',',$crlf,<br>)

dll nHTMLn_2.94.dll execScript document.write(' $+ %str $+ <br>');

i think there are more reserved characters, but i dont remember then right now. If you have problems with another one, just replace it with &#XX; where XX is the ASCII number of the character


artwerksJul 17, 2004 3:25PM
Ok, there you did a very great job.. I've searched for this before.. I think I'll get back coding in a few days, I took a break more than a month ago, and this thing really interests me, good job! Thanks :)

FoLKeN^Jul 17, 2004 9:52PM
You are welcome, my MSN client partner ;)

NeRFaHoLIcJul 16, 2004 10:49PM
When I use the example for emoticons in the "User's Manual" page with nHtmln.dll, I have the pictures end everything called happy.gif and wink.gif in the C:\emoticons but when I use the example, the text comes out but the picture doesn't show up, just a small box with crosses in them.
Heres the example if you don't know what I'm talking about:
var %s1 = :),%s2 = ;)
var %mircStr = - Hello, how are you? %s1 $+ $crlf $+ - Fine, thank you %s2
var %htmlStr = $replace(%mircStr,%s1,<img src="c:\emoticons\happy.gif">)
var %htmlStr = $replace(%htmlStr,%s2,<img src="c:\emoticons\wink.gif">)
var %htmlStr = $replace(%htmlStr,$crlf,<br>)
window -p @test
echo -a $dll(nHTMLn_2.94.dll,attach,$window(@test).hwnd)
echo -a $dll(nHTMLn_2.94.dll,navigate,about:blank)
echo -a $dll(nHTMLn_2.94.dll,execScript,document.write(' $+ %htmlStr $+ '))

FoLKeN^Jul 16, 2004 11:43PM
weird, but dont worry, i'll release a script or tutorial showing how to do that soon

Text edited by author on Jul 16, 2004 @ 11:44PM

NeRFaHoLIcJul 17, 2004 1:21AM
Cool. When abouts will this be release FoLKeN^? And could you also add a script so you can add emoticons to channels too, so it still has same display but you can edit the :), :( etc. Thanks.

FoLKeN^Jul 17, 2004 9:42AM
totally customizable. probably compatible with MTS

Text edited by author on Jul 17, 2004 @ 9:42AM

blcjbJul 16, 2004 11:19AM
Great edit to the nHTMLn dll, thanks much! Can someone help me out though? I can attach to $chan and $replace images fine, no problems with those. However, the window won't auto-scroll when it gets full of text, I have to scroll it manually. If anyone can help me out here with this one issue I'd appreciate it much! I've been looking for ways to do so in JavaScript to have the attached window scroll down upon new text, but haven't had any luck. Am I making this way harder then it should be? I have been up for almost 2 days now =p...Maybe I need a break.

FoLKeN^Jul 16, 2004 1:11PM
//dll nHTMLn_2.94.dll execScript scroll(0,9999999999999)

execute it everytime you add text to the attached window

blcjbJul 16, 2004 5:10PM
Thanks so much FoLKeN^!

DM-MaSTeRJul 15, 2004 1:56PM
FoLKeN^ i love you man :) :)
this is just ... perfect ;)

cypherJul 15, 2004 7:38AM
on the update ... detaching the channel window makes the scrollbar have visual bugs.
attaching works fine ... good job again folken.

XillianJul 15, 2004 1:46AM
whe still love you FoLKeN^ ..thanks for the update!

seec77Jul 14, 2004 5:10PM
great mod to the original dll man!!
/me thinks of a way to mod this dll so it works with the mozilla interface instead of IE...
good job!

MadsonJul 7, 2004 1:35AM

NiceboyJul 5, 2004 2:21AM
A great DLL - Thanks Authors

l337Jul 6, 2004 4:48PM
Well, thanks thanks :)

FoLKeN^Jul 6, 2004 9:11PM

MpdreamzJul 5, 2004 5:09PM
This is very cool i was just starting to see if i could do emoticons in mIRC. this definatly gets rid of the refreshing :D
it would be nice if you entered how to parse mirc stuff into java script.
its not that hard but it will safe you alot of questions :p
heres a simple example for those who dont know

ON *:TEXT:*:#newbies: {
wr $nick $1-
alias wr {
echo -a $dll(nHTMLn_2.93.dll,execScript,document.write('<br> $nick : $2- '))

FoLKeN^Jul 5, 2004 7:01PM
well.. i gave an example... ;P

l337Jul 4, 2004 11:19AM
Hehe so who should actually have the credits for the ExecScript thingie? (the cute girl who used to live in my backyard)

FoLKeN^Jul 4, 2004 3:36PM

Stanleyw60Jul 4, 2004 10:38AM
I use this and tis grate :)

STINGJul 4, 2004 9:34AM
Good job!

Create New Post

You must be logged in to post messages.