Solved

Bacth Script to Add Lines to notes.ini file

Posted on 2008-10-28
3
778 Views
Last Modified: 2013-11-10
I need to find a script that will do the following:

1. Look for the notes.ini file either in C:\Data\Notes or H:\Data\Notes
2. Check if the following variables exist and if note append to the end of the file:
      EXTMGR_ADDINS=mc.dll
      MC_DB=DOM-01!!ClientUpdate\update.nsf

Any help is much appreciated.
             
0
Comment
Question by:zmannan83
3 Comments
 
LVL 38

Accepted Solution

by:
Shift-3 earned 500 total points
ID: 22826649
Paste the script below into a text file with a .cmd extension.  Running it will append the parameters to the file if they are not already defined.


@echo off
setlocal enabledelayedexpansion
 
for /F "tokens=*" %%G in ('type C:\Data\Notes\notes.ini') do (
 set line=%%G
 if /I "!line:~0,14!"=="EXTMGR_ADDINS=" set found1=true
 if /I "!line:~0,6!"=="MC_DB=" set found2=true
)
 
if not defined found1 echo EXTMGR_ADDINS=mc.dll>>C:\Data\Notes\notes.ini
if not defined found2 echo MC_DB=DOM-01!!ClientUpdate\update.nsf>>C:\Data\Notes\notes.ini
 
set found1=
set found2=
 
for /F "tokens=*" %%G in ('type H:\Data\Notes\notes.ini') do (
 set line=%%G
 if /I "!line:~0,14!"=="EXTMGR_ADDINS=" set found1=true
 if /I "!line:~0,6!"=="MC_DB=" set found2=true
)
 
if not defined found1 echo EXTMGR_ADDINS=mc.dll>>H:\Data\Notes\notes.ini
if not defined found2 echo MC_DB=DOM-01!!ClientUpdate\update.nsf>>H:\Data\Notes\notes.ini

Open in new window

0
 
LVL 43

Expert Comment

by:Steve Knight
ID: 22827189
Only issue you may have is that the notes.ini file can sometimes have < > and | characters in it which tend to break batch type entries like above as I've found myself in the past.  I would suggest either using VBScript or possibly taking a different approach and using find to check if the entries are there then just append them:

@echo off
set inifile=C:\lotus\notes65\notes.ini
find /I "EXTMGR_ADDINS=mc.dll" "%inifile%"  
if errorlevel 1 echo "MC.DLL addin entry not found" & echo EXTMGR_ADDINS=mc.dll>>%inifile%

find /I "MC_DB=DOM-01!!ClientUpdate\update.nsf" "%inifile%"  
if errorlevel 1 echo "MC_DB entry not found" & echo MC_DB=DOM-01!!ClientUpdate\update.nsf>>%inifile%

Steve
0
 

Author Closing Comment

by:zmannan83
ID: 31510949
There was an issue with using the ! symbol, which was overcome by using ^ character
0

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Although it can be difficult to imagine, someday your child will have a career of his or her own. He or she will likely start a family, buy a home and start having their own children. So, while being a kid is still extremely important, it’s also …
Today, the web development industry is booming, and many people consider it to be their vocation. The question you may be asking yourself is – how do I become a web developer?
Viewers will learn how to properly install Eclipse with the necessary JDK, and will take a look at an introductory Java program. Download Eclipse installation zip file: Extract files from zip file: Download and install JDK 8: Open Eclipse and …

839 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question