My “Kaspersky” trial period was over and I have changed my security software to “F-Secure Internet Security”. Then it happened something.
When I would start the program (actually my program), F-Secure showed a message box with the security risk blah blah ..
If your security software prompts you to start or not, let it allow run my software, otherwise you cannot use them at all.
My program has no digital signature. And that’s why security software reacts so.
The digital signature can buy by anyone who has money and UNFORTUNATELY, I cannot afford. Only thing you must do is you have to trust me.
I thought that “TRUST” grows between the parties, like you and me. But now it can be purchased, although there are discounts. Ironically! Ha ha!
By the way!
My program is virus-free and add-ware free so far I know, and they carry no onto prospective threat to your system.

It happened this way.

This server is located in Denmark.
Unfortunately, it is this area that have been hardest hit by the huge masses of water. So host company moved it to another location.
It went pretty fast, you could say.

The server should have PHP5 installed, but it was not, and I didn’t know about it and updated WordPress to the latest version. Then stopped working anything. So I had to delete files and install back to the older version.

Now my site has returned. But you still cannot download files from this server yet.

Please use the link below to download the files.

http://www.esnips.com/web/mino-Software

The server has changed the settings and I seem unable to do anything about this problem.

Please try to download the software files from here.
http://www.esnips.com/web/mino-Software

If the specified link does not work, copy the entire link and paste it into your browser address bar.

I will try to update other software and MIDI files, but it takes some time.

Thank you for your patience.

Long ago, I used EditPad and I liked it.
I downloaded a new EditPad Lite now and started using it.
It is very small program and is very fast. Actually its TAB-Pages make it very convenient.

Just Great Software Author says:

EditPad Lite is a general-purpose text editor, designed to be small and compact, yet offer all the functionality you expect from a basic text editor. EditPad Lite works with Windows 98, ME, NT4, 2000, XP, Vista, and 7.
EditPad Lite is free for non-commercial use. That is, you may use EditPad Lite if you do not get paid, directly or indirectly, for the work you do with EditPad Lite. Registered charities may also use EditPad Lite. If you want more editing power or need a text editor to use at work, check out EditPad Pro.
http://www.editpadpro.com/editpadpro.html

You can download EditPad Lite from here (http://www.editpadlite.com/).

However shortcut stuff doesn’t work on Vista x64.

LibreOffice

LibreOffice is the free power-packed Open Source personal productivity suite for Windows, Macintosh and Linux, that gives you six feature-rich applications for all your document production and data processing needs: Writer, Calc, Impress, Draw, Math and Base. Support and documentation is free from our large, dedicated community of users, contributors and developers. You, too, can also get involved!

I have never used it, but it looks promising.
Download LibreOffice.

Support the Red Cross disaster response in Japan

About the donations to Japan

Read more about this (http://www.ifrc.org/en/what-we-do/disaster-management/responding/ongoing-operations/japan-earthquake/about-the-donations-to-japan/).

Open the donation form (http://www.ifrc.org/en/get-involved/donate/donation/).

The software called “MarkMyImage” and it is a freeware.


Author says:

I wanted to watermark few sunset images taken by me, before posting it internet.

When I clicked checkboxes, froze the program. And I changed the source code on “frmMain.cs” so it works.
I commented out Reg. stuff, so that I did not want to use it.

using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.IO;
using Microsoft.Win32;

namespace WaterMark
{
        /// <summary>
        /// Summary description for frmMain.
        /// </summary>
        public class frmMain : System.Windows.Forms.Form
        {
                private System.Windows.Forms.StatusBar statusBar1;
                private System.Windows.Forms.StatusBarPanel statusBarPanel1;
                private System.Windows.Forms.StatusBarPanel statusBarPanel2;
                private System.Windows.Forms.GroupBox groupBox1;
                private System.Windows.Forms.Label label1;
                private System.Windows.Forms.Label label3;
                private System.Windows.Forms.CheckedListBox lstFileList;
                private System.Windows.Forms.TextBox txtWorkingFolder;
                private System.Windows.Forms.ComboBox cmbImageType;
                private System.Windows.Forms.PictureBox picSource;
                private System.Windows.Forms.GroupBox groupBox2;
                private System.Windows.Forms.Button cmdBrowse1;
                private System.Windows.Forms.Button cmdMake;
                private System.Windows.Forms.CheckBox chkPreview;
                private System.Windows.Forms.ProgressBar progressBar1;
                private System.Windows.Forms.Button cmdBrowse3;
                private System.Windows.Forms.TextBox txtOutputFolder;
                private System.Windows.Forms.CheckBox chkSameOutputFolder;
                private System.Windows.Forms.TextBox txtSuffix;
                private System.Windows.Forms.Label label2;
                private System.Windows.Forms.Label lblAbout;
                private System.Windows.Forms.Label label5;
                private System.Windows.Forms.Label label6;
                private System.Windows.Forms.LinkLabel linkLabel1;
                private System.Windows.Forms.LinkLabel linkLabel2;
                private System.Windows.Forms.LinkLabel linkLabel3;
                private System.Windows.Forms.FolderBrowserDialog folderBrowserDialog1;
                private System.Windows.Forms.OpenFileDialog openFileDialog1;
                //private const string RegKey = @"Software\Big Ds Tech\Mark My Image";
                //private string regInputFolder, regOutputFolder,regWaterMarkImage;
                private System.Windows.Forms.TabControl tabControl1;
                private System.Windows.Forms.PictureBox picWaterMark;
                private System.Windows.Forms.TextBox txtWaterMarkImage;
                private System.Windows.Forms.Button cmdBrowse2;
                private System.Windows.Forms.CheckBox chkWaterMarkImage;
                private System.Windows.Forms.Label label4;
                private System.Windows.Forms.TextBox txtCopyRight;
                private System.Windows.Forms.TabPage tabPage1;
                private System.Windows.Forms.TabPage tabPage2;
                private System.Windows.Forms.PropertyGrid propertyGrid1;
                private WMProperties pt;
                /// <summary>
                /// Required designer variable.
                /// </summary>
                private System.ComponentModel.Container components = null;

                public frmMain()
                {
                        //
                        // Required for Windows Form Designer support
                        //
                        InitializeComponent();

                        //
                        // TODO: Add any constructor code after InitializeComponent call
                        //
                }

                /// <summary>
                /// Clean up any resources being used.
                /// </summary>
                protected override void Dispose( bool disposing )
                {
                        if( disposing )
                        {
                                if (components != null)
                                {
                                        components.Dispose();
                                }
                        }
                        base.Dispose( disposing );
                }

                #region Windows Form Designer generated code
                /// <summary>
                /// Required method for Designer support - do not modify
                /// the contents of this method with the code editor.
                /// </summary>
                private void InitializeComponent()
                {
            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmMain));
            this.statusBar1 = new System.Windows.Forms.StatusBar();
            this.statusBarPanel1 = new System.Windows.Forms.StatusBarPanel();
            this.statusBarPanel2 = new System.Windows.Forms.StatusBarPanel();
            this.groupBox1 = new System.Windows.Forms.GroupBox();
            this.lstFileList = new System.Windows.Forms.CheckedListBox();
            this.groupBox2 = new System.Windows.Forms.GroupBox();
            this.tabControl1 = new System.Windows.Forms.TabControl();
            this.tabPage1 = new System.Windows.Forms.TabPage();
            this.txtWaterMarkImage = new System.Windows.Forms.TextBox();
            this.label4 = new System.Windows.Forms.Label();
            this.txtCopyRight = new System.Windows.Forms.TextBox();
            this.cmdBrowse2 = new System.Windows.Forms.Button();
            this.chkWaterMarkImage = new System.Windows.Forms.CheckBox();
            this.picWaterMark = new System.Windows.Forms.PictureBox();
            this.tabPage2 = new System.Windows.Forms.TabPage();
            this.propertyGrid1 = new System.Windows.Forms.PropertyGrid();
            this.cmbImageType = new System.Windows.Forms.ComboBox();
            this.label3 = new System.Windows.Forms.Label();
            this.cmdBrowse1 = new System.Windows.Forms.Button();
            this.txtWorkingFolder = new System.Windows.Forms.TextBox();
            this.label1 = new System.Windows.Forms.Label();
            this.chkPreview = new System.Windows.Forms.CheckBox();
            this.picSource = new System.Windows.Forms.PictureBox();
            this.cmdMake = new System.Windows.Forms.Button();
            this.progressBar1 = new System.Windows.Forms.ProgressBar();
            this.cmdBrowse3 = new System.Windows.Forms.Button();
            this.txtOutputFolder = new System.Windows.Forms.TextBox();
            this.chkSameOutputFolder = new System.Windows.Forms.CheckBox();
            this.txtSuffix = new System.Windows.Forms.TextBox();
            this.label2 = new System.Windows.Forms.Label();
            this.lblAbout = new System.Windows.Forms.Label();
            this.label5 = new System.Windows.Forms.Label();
            this.label6 = new System.Windows.Forms.Label();
            this.linkLabel1 = new System.Windows.Forms.LinkLabel();
            this.linkLabel2 = new System.Windows.Forms.LinkLabel();
            this.linkLabel3 = new System.Windows.Forms.LinkLabel();
            this.folderBrowserDialog1 = new System.Windows.Forms.FolderBrowserDialog();
            this.openFileDialog1 = new System.Windows.Forms.OpenFileDialog();
            ((System.ComponentModel.ISupportInitialize)(this.statusBarPanel1)).BeginInit();
            ((System.ComponentModel.ISupportInitialize)(this.statusBarPanel2)).BeginInit();
            this.groupBox1.SuspendLayout();
            this.groupBox2.SuspendLayout();
            this.tabControl1.SuspendLayout();
            this.tabPage1.SuspendLayout();
            ((System.ComponentModel.ISupportInitialize)(this.picWaterMark)).BeginInit();
            this.tabPage2.SuspendLayout();
            ((System.ComponentModel.ISupportInitialize)(this.picSource)).BeginInit();
            this.SuspendLayout();
            //
            // statusBar1
            //
            this.statusBar1.Location = new System.Drawing.Point(0, 464);
            this.statusBar1.Name = "statusBar1";
            this.statusBar1.Panels.AddRange(new System.Windows.Forms.StatusBarPanel[] {
            this.statusBarPanel1,
            this.statusBarPanel2});
            this.statusBar1.ShowPanels = true;
            this.statusBar1.Size = new System.Drawing.Size(792, 18);
            this.statusBar1.TabIndex = 0;
            this.statusBar1.Text = "statusBar1";
            //
            // statusBarPanel1
            //
            this.statusBarPanel1.Name = "statusBarPanel1";
            this.statusBarPanel1.Text = "Ready";
            //
            // statusBarPanel2
            //
            this.statusBarPanel2.AutoSize = System.Windows.Forms.StatusBarPanelAutoSize.Spring;
            this.statusBarPanel2.Name = "statusBarPanel2";
            this.statusBarPanel2.Width = 675;
            //
            // groupBox1
            //
            this.groupBox1.Controls.Add(this.lstFileList);
            this.groupBox1.Controls.Add(this.groupBox2);
            this.groupBox1.Controls.Add(this.cmbImageType);
            this.groupBox1.Controls.Add(this.label3);
            this.groupBox1.Controls.Add(this.cmdBrowse1);
            this.groupBox1.Controls.Add(this.txtWorkingFolder);
            this.groupBox1.Controls.Add(this.label1);
            this.groupBox1.Controls.Add(this.chkPreview);
            this.groupBox1.Location = new System.Drawing.Point(4, 2);
            this.groupBox1.Name = "groupBox1";
            this.groupBox1.Size = new System.Drawing.Size(410, 458);
            this.groupBox1.TabIndex = 1;
            this.groupBox1.TabStop = false;
            //
            // lstFileList
            //
            this.lstFileList.Location = new System.Drawing.Point(8, 76);
            this.lstFileList.Name = "lstFileList";
            this.lstFileList.Size = new System.Drawing.Size(396, 169);
            this.lstFileList.TabIndex = 4;
            this.lstFileList.SelectedIndexChanged += new System.EventHandler(this.lstFileList_SelectedIndexChanged);
            //
            // groupBox2
            //
            this.groupBox2.Controls.Add(this.tabControl1);
            this.groupBox2.Location = new System.Drawing.Point(6, 252);
            this.groupBox2.Name = "groupBox2";
            this.groupBox2.Size = new System.Drawing.Size(400, 200);
            this.groupBox2.TabIndex = 11;
            this.groupBox2.TabStop = false;
            this.groupBox2.Text = "Water Mark";
            //
            // tabControl1
            //
            this.tabControl1.Controls.Add(this.tabPage1);
            this.tabControl1.Controls.Add(this.tabPage2);
            this.tabControl1.Location = new System.Drawing.Point(6, 16);
            this.tabControl1.Name = "tabControl1";
            this.tabControl1.SelectedIndex = 0;
            this.tabControl1.Size = new System.Drawing.Size(388, 178);
            this.tabControl1.TabIndex = 13;
            this.tabControl1.SelectedIndexChanged += new System.EventHandler(this.tabControl1_SelectedIndexChanged);
            //
            // tabPage1
            //
            this.tabPage1.Controls.Add(this.txtWaterMarkImage);
            this.tabPage1.Controls.Add(this.label4);
            this.tabPage1.Controls.Add(this.txtCopyRight);
            this.tabPage1.Controls.Add(this.cmdBrowse2);
            this.tabPage1.Controls.Add(this.chkWaterMarkImage);
            this.tabPage1.Controls.Add(this.picWaterMark);
            this.tabPage1.Location = new System.Drawing.Point(4, 22);
            this.tabPage1.Name = "tabPage1";
            this.tabPage1.Size = new System.Drawing.Size(380, 152);
            this.tabPage1.TabIndex = 0;
            this.tabPage1.Text = "General";
            //
            // txtWaterMarkImage
            //
            this.txtWaterMarkImage.Enabled = false;
            this.txtWaterMarkImage.Location = new System.Drawing.Point(88, 68);
            this.txtWaterMarkImage.Name = "txtWaterMarkImage";
            this.txtWaterMarkImage.Size = new System.Drawing.Size(262, 20);
            this.txtWaterMarkImage.TabIndex = 7;
            //
            // label4
            //
            this.label4.Location = new System.Drawing.Point(2, 6);
            this.label4.Name = "label4";
            this.label4.Size = new System.Drawing.Size(84, 14);
            this.label4.TabIndex = 12;
            this.label4.Text = "Text";
            //
            // txtCopyRight
            //
            this.txtCopyRight.Location = new System.Drawing.Point(88, 6);
            this.txtCopyRight.Multiline = true;
            this.txtCopyRight.Name = "txtCopyRight";
            this.txtCopyRight.Size = new System.Drawing.Size(288, 56);
            this.txtCopyRight.TabIndex = 5;
            this.txtCopyRight.Text = "Copyright © 2005 Big D";
            //
            // cmdBrowse2
            //
            this.cmdBrowse2.Enabled = false;
            this.cmdBrowse2.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
            this.cmdBrowse2.Location = new System.Drawing.Point(354, 68);
            this.cmdBrowse2.Name = "cmdBrowse2";
            this.cmdBrowse2.Size = new System.Drawing.Size(22, 20);
            this.cmdBrowse2.TabIndex = 8;
            this.cmdBrowse2.Text = "...";
            this.cmdBrowse2.Click += new System.EventHandler(this.cmdBrowse2_Click);
            //
            // chkWaterMarkImage
            //
            this.chkWaterMarkImage.Location = new System.Drawing.Point(2, 70);
            this.chkWaterMarkImage.Name = "chkWaterMarkImage";
            this.chkWaterMarkImage.Size = new System.Drawing.Size(84, 16);
            this.chkWaterMarkImage.TabIndex = 6;
            this.chkWaterMarkImage.Text = "Image";
            this.chkWaterMarkImage.CheckedChanged += new System.EventHandler(this.chkWaterMarkImage_CheckedChanged);
            //
            // picWaterMark
            //
            this.picWaterMark.Location = new System.Drawing.Point(88, 94);
            this.picWaterMark.Name = "picWaterMark";
            this.picWaterMark.Size = new System.Drawing.Size(290, 54);
            this.picWaterMark.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage;
            this.picWaterMark.TabIndex = 11;
            this.picWaterMark.TabStop = false;
            //
            // tabPage2
            //
            this.tabPage2.Controls.Add(this.propertyGrid1);
            this.tabPage2.Location = new System.Drawing.Point(4, 22);
            this.tabPage2.Name = "tabPage2";
            this.tabPage2.Size = new System.Drawing.Size(380, 152);
            this.tabPage2.TabIndex = 1;
            this.tabPage2.Text = "Properties";
            //
            // propertyGrid1
            //
            this.propertyGrid1.Dock = System.Windows.Forms.DockStyle.Fill;
            this.propertyGrid1.HelpVisible = false;
            this.propertyGrid1.LineColor = System.Drawing.SystemColors.ScrollBar;
            this.propertyGrid1.Location = new System.Drawing.Point(0, 0);
            this.propertyGrid1.Name = "propertyGrid1";
            this.propertyGrid1.Size = new System.Drawing.Size(380, 152);
            this.propertyGrid1.TabIndex = 0;
            this.propertyGrid1.ToolbarVisible = false;
            //
            // cmbImageType
            //
            this.cmbImageType.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
            this.cmbImageType.Items.AddRange(new object[] {
            "All Image Files",
            "JPEG Images (*.JPG, *.JPEG)",
            "Windows Bitmap Images (*.bmp)"});
            this.cmbImageType.Location = new System.Drawing.Point(104, 46);
            this.cmbImageType.Name = "cmbImageType";
            this.cmbImageType.Size = new System.Drawing.Size(176, 21);
            this.cmbImageType.TabIndex = 2;
            this.cmbImageType.SelectedIndexChanged += new System.EventHandler(this.cmbImageType_SelectedIndexChanged);
            //
            // label3
            //
            this.label3.Location = new System.Drawing.Point(10, 50);
            this.label3.Name = "label3";
            this.label3.Size = new System.Drawing.Size(82, 14);
            this.label3.TabIndex = 6;
            this.label3.Text = "Image Type";
            //
            // cmdBrowse1
            //
            this.cmdBrowse1.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
            this.cmdBrowse1.Location = new System.Drawing.Point(382, 20);
            this.cmdBrowse1.Name = "cmdBrowse1";
            this.cmdBrowse1.Size = new System.Drawing.Size(22, 20);
            this.cmdBrowse1.TabIndex = 1;
            this.cmdBrowse1.Text = "...";
            this.cmdBrowse1.Click += new System.EventHandler(this.cmdBrowse1_Click);
            //
            // txtWorkingFolder
            //
            this.txtWorkingFolder.Location = new System.Drawing.Point(104, 20);
            this.txtWorkingFolder.Name = "txtWorkingFolder";
            this.txtWorkingFolder.Size = new System.Drawing.Size(274, 20);
            this.txtWorkingFolder.TabIndex = 0;
            //
            // label1
            //
            this.label1.Location = new System.Drawing.Point(8, 24);
            this.label1.Name = "label1";
            this.label1.Size = new System.Drawing.Size(94, 14);
            this.label1.TabIndex = 0;
            this.label1.Text = "Input Folder";
            //
            // chkPreview
            //
            this.chkPreview.Checked = true;
            this.chkPreview.CheckState = System.Windows.Forms.CheckState.Checked;
            this.chkPreview.Location = new System.Drawing.Point(284, 48);
            this.chkPreview.Name = "chkPreview";
            this.chkPreview.Size = new System.Drawing.Size(120, 20);
            this.chkPreview.TabIndex = 3;
            this.chkPreview.Text = "&Preview Image";
            this.chkPreview.CheckedChanged += new System.EventHandler(this.chkPreview_CheckedChanged);
            //
            // picSource
            //
            this.picSource.Location = new System.Drawing.Point(418, 6);
            this.picSource.Name = "picSource";
            this.picSource.Size = new System.Drawing.Size(370, 228);
            this.picSource.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
            this.picSource.TabIndex = 2;
            this.picSource.TabStop = false;
            //
            // cmdMake
            //
            this.cmdMake.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
            this.cmdMake.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            this.cmdMake.Location = new System.Drawing.Point(418, 326);
            this.cmdMake.Name = "cmdMake";
            this.cmdMake.Size = new System.Drawing.Size(370, 32);
            this.cmdMake.TabIndex = 12;
            this.cmdMake.Text = "&Make";
            this.cmdMake.Click += new System.EventHandler(this.cmdMake_Click);
            //
            // progressBar1
            //
            this.progressBar1.Location = new System.Drawing.Point(416, 238);
            this.progressBar1.Name = "progressBar1";
            this.progressBar1.Size = new System.Drawing.Size(372, 22);
            this.progressBar1.TabIndex = 14;
            //
            // cmdBrowse3
            //
            this.cmdBrowse3.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
            this.cmdBrowse3.Location = new System.Drawing.Point(764, 296);
            this.cmdBrowse3.Name = "cmdBrowse3";
            this.cmdBrowse3.Size = new System.Drawing.Size(22, 20);
            this.cmdBrowse3.TabIndex = 11;
            this.cmdBrowse3.Text = "...";
            this.cmdBrowse3.Click += new System.EventHandler(this.cmdBrowse3_Click);
            //
            // txtOutputFolder
            //
            this.txtOutputFolder.Location = new System.Drawing.Point(418, 296);
            this.txtOutputFolder.Name = "txtOutputFolder";
            this.txtOutputFolder.Size = new System.Drawing.Size(342, 20);
            this.txtOutputFolder.TabIndex = 10;
            //
            // chkSameOutputFolder
            //
            this.chkSameOutputFolder.BackColor = System.Drawing.SystemColors.Control;
            this.chkSameOutputFolder.Checked = true;
            this.chkSameOutputFolder.CheckState = System.Windows.Forms.CheckState.Checked;
            this.chkSameOutputFolder.Location = new System.Drawing.Point(420, 270);
            this.chkSameOutputFolder.Name = "chkSameOutputFolder";
            this.chkSameOutputFolder.Size = new System.Drawing.Size(242, 18);
            this.chkSameOutputFolder.TabIndex = 9;
            this.chkSameOutputFolder.Text = "Use &output folder as same add suffix";
            this.chkSameOutputFolder.UseVisualStyleBackColor = false;
            this.chkSameOutputFolder.CheckedChanged += new System.EventHandler(this.chkSameOutputFolder_CheckedChanged);
            //
            // txtSuffix
            //
            this.txtSuffix.Location = new System.Drawing.Point(620, 267);
            this.txtSuffix.MaxLength = 15;
            this.txtSuffix.Name = "txtSuffix";
            this.txtSuffix.Size = new System.Drawing.Size(50, 20);
            this.txtSuffix.TabIndex = 19;
            this.txtSuffix.Text = "_final";
            //
            // label2
            //
            this.label2.Location = new System.Drawing.Point(676, 271);
            this.label2.Name = "label2";
            this.label2.Size = new System.Drawing.Size(82, 16);
            this.label2.TabIndex = 20;
            this.label2.Text = "after file names";
            //
            // lblAbout
            //
            this.lblAbout.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
            this.lblAbout.Location = new System.Drawing.Point(416, 364);
            this.lblAbout.Name = "lblAbout";
            this.lblAbout.Size = new System.Drawing.Size(372, 96);
            this.lblAbout.TabIndex = 21;
            this.lblAbout.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
            //
            // label5
            //
            this.label5.Location = new System.Drawing.Point(420, 382);
            this.label5.Name = "label5";
            this.label5.Size = new System.Drawing.Size(368, 14);
            this.label5.TabIndex = 22;
            this.label5.Text = "Developed by Deb\'jyoti Das";
            this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
            //
            // label6
            //
            this.label6.Location = new System.Drawing.Point(420, 422);
            this.label6.Name = "label6";
            this.label6.Size = new System.Drawing.Size(356, 14);
            this.label6.TabIndex = 23;
            this.label6.Text = "Main credit goes to Joel Neubeck\'s this Code Project article ";
            this.label6.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
            //
            // linkLabel1
            //
            this.linkLabel1.Location = new System.Drawing.Point(588, 400);
            this.linkLabel1.Name = "linkLabel1";
            this.linkLabel1.Size = new System.Drawing.Size(182, 18);
            this.linkLabel1.TabIndex = 24;
            this.linkLabel1.TabStop = true;
            this.linkLabel1.Text = "http://b.domaindlx.com/bigd";
            this.linkLabel1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
            this.linkLabel1.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkLabel1_LinkClicked);
            //
            // linkLabel2
            //
            this.linkLabel2.Location = new System.Drawing.Point(446, 400);
            this.linkLabel2.Name = "linkLabel2";
            this.linkLabel2.Size = new System.Drawing.Size(146, 18);
            this.linkLabel2.TabIndex = 25;
            this.linkLabel2.TabStop = true;
            this.linkLabel2.Text = "invincible.bigd@gmail.com";
            this.linkLabel2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
            this.linkLabel2.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkLabel2_LinkClicked);
            //
            // linkLabel3
            //
            this.linkLabel3.Location = new System.Drawing.Point(624, 422);
            this.linkLabel3.Name = "linkLabel3";
            this.linkLabel3.Size = new System.Drawing.Size(22, 14);
            this.linkLabel3.TabIndex = 26;
            this.linkLabel3.TabStop = true;
            this.linkLabel3.Text = "this";
            this.linkLabel3.TextAlign = System.Drawing.ContentAlignment.TopCenter;
            this.linkLabel3.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkLabel3_LinkClicked);
            //
            // frmMain
            //
            this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
            this.ClientSize = new System.Drawing.Size(792, 482);
            this.Controls.Add(this.linkLabel3);
            this.Controls.Add(this.linkLabel2);
            this.Controls.Add(this.linkLabel1);
            this.Controls.Add(this.label6);
            this.Controls.Add(this.label5);
            this.Controls.Add(this.lblAbout);
            this.Controls.Add(this.label2);
            this.Controls.Add(this.txtSuffix);
            this.Controls.Add(this.chkSameOutputFolder);
            this.Controls.Add(this.txtOutputFolder);
            this.Controls.Add(this.cmdBrowse3);
            this.Controls.Add(this.progressBar1);
            this.Controls.Add(this.picSource);
            this.Controls.Add(this.groupBox1);
            this.Controls.Add(this.statusBar1);
            this.Controls.Add(this.cmdMake);
            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
            this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
            this.MaximizeBox = false;
            this.Name = "frmMain";
            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
            this.Text = "Mark My Image";
            this.Load += new System.EventHandler(this.frmMain_Load);
            this.Closed += new System.EventHandler(this.frmMain_Closed);
            ((System.ComponentModel.ISupportInitialize)(this.statusBarPanel1)).EndInit();
            ((System.ComponentModel.ISupportInitialize)(this.statusBarPanel2)).EndInit();
            this.groupBox1.ResumeLayout(false);
            this.groupBox1.PerformLayout();
            this.groupBox2.ResumeLayout(false);
            this.tabControl1.ResumeLayout(false);
            this.tabPage1.ResumeLayout(false);
            this.tabPage1.PerformLayout();
            ((System.ComponentModel.ISupportInitialize)(this.picWaterMark)).EndInit();
            this.tabPage2.ResumeLayout(false);
            ((System.ComponentModel.ISupportInitialize)(this.picSource)).EndInit();
            this.ResumeLayout(false);
            this.PerformLayout();

                }
                #endregion

                /// <summary>
                /// The main entry point for the application.
                /// </summary>
                [STAThread]
                static void Main()
                {
                        Application.Run(new frmMain());
                }

                private void frmMain_Load(object sender, System.EventArgs e)
                {
                        pt = new WMProperties();
                        //GetFromRegistry();
                        //txtWorkingFolder.Text = regInputFolder;
                        //txtWaterMarkImage.Text = regWaterMarkImage;
                        chkWaterMarkImage.Checked = false;
                        cmbImageType.SelectedIndex = 0;
                        //txtOutputFolder.Text = regOutputFolder;
                        txtOutputFolder.Enabled = false;
                        cmdBrowse3.Enabled = false;

                        setWMProperties();
                        //pt.TextPosition = ContentAlignment.BottomCenter;
                        //pt.ImagePosition = ContentAlignment.TopRight;
                        //pt.Font = new Font("arial",(float)8.25);
                        //pt.FontSizeBestFit = true;
                        //lblAbout.Text = ";
                        pt.setDefaultValues();

                        GetFiles();

                        if(chkPreview.Checked == true && lstFileList.Items.Count > 0)
                        {
                                lstFileList.SelectedIndex = 0;
                                if (File.Exists(lstFileList.Items[0].ToString()))
                                        picSource.Image = Image.FromFile(lstFileList.Items[0].ToString());
                        }

                }

                private void GetFiles()
                {
                        string [] temp1 = null,temp2 = null,temp3 = null,fileEntries = null;
                        int tot_files = 0;

                        try
                        {
                                switch(cmbImageType.SelectedIndex)
                                {
                                        case 0:
                                                temp1 = Directory.GetFiles(txtWorkingFolder.Text,"*.jpg");
                                                temp2 = Directory.GetFiles(txtWorkingFolder.Text,"*.jpeg");
                                                temp3 = Directory.GetFiles(txtWorkingFolder.Text,"*.bmp");
                                                tot_files = temp1.Length + temp2.Length + temp3.Length;
                                                fileEntries = new string[tot_files];
                                                Array.Copy(temp1,0,fileEntries,0,temp1.Length);
                                                Array.Copy(temp2,0,fileEntries,temp1.Length,temp2.Length);
                                                Array.Copy(temp3,0,fileEntries,temp1.Length + temp2.Length,temp3.Length);
                                                break;
                                        case 1:
                                                temp1 = Directory.GetFiles(txtWorkingFolder.Text,"*.jpg");
                                                temp2 = Directory.GetFiles(txtWorkingFolder.Text,"*.jpeg");
                                                tot_files = temp1.Length + temp2.Length;
                                                fileEntries = new string[tot_files];
                                                Array.Copy(temp1,0,fileEntries,0,temp1.Length);
                                                Array.Copy(temp2,0,fileEntries,fileEntries.Length,temp2.Length);
                                                break;
                                        case 2:
                                                fileEntries = Directory.GetFiles(txtWorkingFolder.Text,"*.bmp");
                                                tot_files = fileEntries.Length;
                                                break;

                                }

                                progressBar1.Maximum = tot_files;
                                lstFileList.Items.Clear();

                                foreach(string fileName in fileEntries)
                                {
                                        if (fileName != null)
                                                lstFileList.Items.Add(fileName.Replace(AppDomain.CurrentDomain.BaseDirectory,@".\"),CheckState.Checked);
                                }

                                statusBarPanel2.Text = lstFileList.Items.Count + " File(s)" ;

                                //We will add the preview item..
                                //lstPreview.Items.Add("Preview using current Watermark settings");

                        }
                        catch{}

                }

                private void cmdBrowse1_Click(object sender, System.EventArgs e)
                {
                        string oldWorkingFolder;
                        try
                        {
                                if(txtWorkingFolder.Text.Substring(0,1) == ".")
                                        oldWorkingFolder = txtWorkingFolder.Text.Replace(".",AppDomain.CurrentDomain.BaseDirectory.Substring(0,AppDomain.CurrentDomain.BaseDirectory.Length - 1));
                                else
                                        oldWorkingFolder = txtWorkingFolder.Text;

                                folderBrowserDialog1.SelectedPath = oldWorkingFolder;
                                //folderBrowserDialog1.RootFolder = System.Environment.SpecialFolder.Personal;
                        }
                        catch{}
                        try
                        {
                                if (folderBrowserDialog1.ShowDialog() == DialogResult.OK)
                                {
                                        txtWorkingFolder.Text = folderBrowserDialog1.SelectedPath;
                                        if (chkSameOutputFolder.Checked == true)
                                        {
                                                txtOutputFolder.Text = txtWorkingFolder.Text;
                                        }
                                        GetFiles();
                                }
                        }
                        catch{}
                }

                private void chkWaterMarkImage_CheckedChanged(object sender, System.EventArgs e)
                {
                        //if(chkWaterMarkImage.Checked == true && txtWaterMarkImage.Text != "")
            if (chkWaterMarkImage.Checked == true)
                        {
                                txtWaterMarkImage.Enabled = true;
                                cmdBrowse2.Enabled = true;
                                string fileName;

                if (txtWaterMarkImage.Text != "")
                {
                    if(txtWaterMarkImage.Text.Substring(0,1) == ".")
                                            fileName = AppDomain.CurrentDomain.BaseDirectory + txtWaterMarkImage.Text.Substring(2);
                                    else
                                            fileName = txtWaterMarkImage.Text;

                                    if(File.Exists(fileName))
                                    {
                                            picWaterMark.Image = Image.FromFile(fileName);
                                    }
                }

                        }
                        else
                        {
                                txtWaterMarkImage.Enabled = false;
                                cmdBrowse2.Enabled = false;
                                picWaterMark.Image = null;
                                pt.CopyrightImage = null;
                        }
                }

                private void lstFileList_SelectedIndexChanged(object sender, System.EventArgs e)
                {

                        string filename= txtWorkingFolder.Text + lstFileList.SelectedItem.ToString().Substring(lstFileList.SelectedItem.ToString().LastIndexOf("\\"));

                        if(chkPreview.Checked == true && File.Exists(filename))
                        {
                                picSource.Image = Image.FromFile(filename);
                        }
                }

                private void cmdMake_Click(object sender, System.EventArgs e)
                {

                        if ( chkSameOutputFolder.Checked == false && txtWorkingFolder.Text.Equals(txtOutputFolder.Text))
                        {
                                MessageBox.Show("Output folder can not be same as input folder",this.Text,MessageBoxButtons.OK,MessageBoxIcon.Error);
                                return;
                        }
                        try
                        {
                                this.Cursor = Cursors.WaitCursor;
                                statusBarPanel1.Text = "Busy";
                                Application.DoEvents();
                                WaterMark wm;
                                string srcPic,dstPic;

                                if (chkWaterMarkImage.Checked == true)
                                        wm = new WaterMark(txtWorkingFolder.Text,txtCopyRight.Text,pt.TextPosition,pt.Font,picWaterMark.Image,pt.ImagePosition);
                                else
                                        wm = new WaterMark(txtWorkingFolder.Text,txtCopyRight.Text,pt.TextPosition,pt.Font);

                                for(int i=0;i<lstFileList.CheckedItems.Count;i++)
                                {
                                        //srcPic = txtWorkingFolder.Text + lstFileList.Items[i].ToString().Substring(1);
                                        srcPic = txtWorkingFolder.Text + lstFileList.Items[i].ToString().Substring(lstFileList.Items[i].ToString().LastIndexOf("\\"));
                                        if (chkSameOutputFolder.Checked == true)
                                                dstPic = srcPic.Insert(srcPic.LastIndexOf("."),txtSuffix.Text);
                                        else
                                                dstPic = txtOutputFolder.Text + "\\" + srcPic.Substring(srcPic.LastIndexOf("\\") + 1);

                                        wm.MarkImage(srcPic,dstPic);
                                        progressBar1.Increment(1);
                                        statusBarPanel2.Text = "Proecessing Image " + srcPic.Substring(lstFileList.Items[i].ToString().LastIndexOf("\\") + 1);
                                        Application.DoEvents();
                                }
                                progressBar1.Value = 0;
                                statusBarPanel1.Text = "Ready";
                                statusBarPanel2.Text = "";
                                this.Cursor = Cursors.Default;
                                Application.DoEvents();
                        }
                        catch(Exception ex)
                        {
                                progressBar1.Value = 0;
                                statusBarPanel1.Text = "Ready";
                                statusBarPanel2.Text = ex.Message;
                                this.Cursor = Cursors.Default;
                                Application.DoEvents();
                        }

                }

                private void chkSameOutputFolder_CheckedChanged(object sender, System.EventArgs e)
                {
                        if (chkSameOutputFolder.Checked == true)
                        {
                                chkSameOutputFolder.Text = "Use &output folder as same add suffix";
                                chkSameOutputFolder.Width = 306;
                                chkSameOutputFolder.SendToBack();

                                txtOutputFolder.Text = txtWorkingFolder.Text;
                                txtOutputFolder.Enabled = false;
                                cmdBrowse3.Enabled = false;
                                txtSuffix.Visible = true;
                        }
                        else
                        {
                                chkSameOutputFolder.Text = "Use following &output folder and keep same file name(s)";
                                chkSameOutputFolder.Width = cmdMake.Width;
                                chkSameOutputFolder.BringToFront();

                                //txtOutputFolder.Text = regOutputFolder;
                                txtOutputFolder.Enabled = true;
                                cmdBrowse3.Enabled = true;
                                txtSuffix.Visible = false;
                        }
                }

                private void linkLabel2_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
                {
                        System.Diagnostics.Process.Start("mailto:" + linkLabel2.Text + "?subject=MarkMyImage@Codeproject.com");
                }

                private void linkLabel1_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
                {
                        System.Diagnostics.Process.Start(linkLabel1.Text);
                }

                private void linkLabel3_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
                {
                        System.Diagnostics.Process.Start("http://www.codeproject.com/csharp/watermark.asp");
                }

                private void chkPreview_CheckedChanged(object sender, System.EventArgs e)
                {
                        try
                        {
                                if (chkPreview.Checked == false)
                                        picSource.Image = null;
                                else
                                        picSource.Image = Image.FromFile(txtWorkingFolder.Text + lstFileList.SelectedItem.ToString().Substring(1));
                        }
                        catch{}
                }

                private void cmbImageType_SelectedIndexChanged(object sender, System.EventArgs e)
                {
                        GetFiles();
                }

                private void cmdBrowse3_Click(object sender, System.EventArgs e)
                {
                        string oldInputFolder;
                        try
                        {
                                if(txtOutputFolder.Text.Substring(0,1) == ".")
                                        oldInputFolder = txtOutputFolder.Text.Replace(".",AppDomain.CurrentDomain.BaseDirectory.Substring(0,AppDomain.CurrentDomain.BaseDirectory.Length - 1));
                                else
                                        oldInputFolder = txtOutputFolder.Text;
                                folderBrowserDialog1.SelectedPath = oldInputFolder;
                                //folderBrowserDialog1.RootFolder = System.Environment.SpecialFolder.Personal;
                        }
                        catch{}
                        try
                        {
                                if (folderBrowserDialog1.ShowDialog() == DialogResult.OK)
                                {
                                        if (txtWorkingFolder.Text == folderBrowserDialog1.SelectedPath)
                                                MessageBox.Show("Input and output folder can not be same",this.Text,MessageBoxButtons.OK,MessageBoxIcon.Exclamation);
                                        else
                                                txtOutputFolder.Text = folderBrowserDialog1.SelectedPath;
                                }
                        }
                        catch{}
                }
        /*
                private void SaveToRegistry()
                {
                        RegistryKey myKey = Registry.CurrentUser.CreateSubKey(RegKey);
                        myKey.SetValue("InputFolder",txtWorkingFolder.Text);
                        myKey.SetValue("OutputFolder",txtOutputFolder.Text);
                        myKey.SetValue("WaterMarkImage",txtWaterMarkImage.Text);
                }
                private void GetFromRegistry()
                {
                        try
                        {
                                RegistryKey mykey = Registry.CurrentUser.OpenSubKey(RegKey);
                                regInputFolder = mykey.GetValue("InputFolder").ToString();
                                regOutputFolder = mykey.GetValue("OutputFolder").ToString();
                                regWaterMarkImage = mykey.GetValue("WaterMarkImage").ToString();
                        }
                        catch
                        {
                                MessageBox.Show(this.Text + " is not installed properly, or it corrupt. Please re-install and try again.",this.Text,MessageBoxButtons.OK,MessageBoxIcon.Stop);
                                Application.Exit();
                        }
                }
        */
                private void frmMain_Closed(object sender, System.EventArgs e)
                {
                        //SaveToRegistry();
                }

                private void cmdBrowse2_Click(object sender, System.EventArgs e)
                {
                        openFileDialog1.Filter = "All Picture Files|*.jpg;*.bmp|JPEG(*.JPEG,*JPG)|*.jpg;*.jpeg|Bitmap Files(*.BMP)|*.bmp|All Files|*.*";
                        if (openFileDialog1.ShowDialog() == DialogResult.OK)
                        {
                                txtWaterMarkImage.Text = openFileDialog1.FileName;
                                picWaterMark.Image = Image.FromFile(txtWaterMarkImage.Text);
                        }

                }

                private void setWMProperties()
                {
                        pt.CopyrightText = txtCopyRight.Text;

                        if (chkWaterMarkImage.Checked == true)
                        {
                                pt.CopyrightImage = picWaterMark.Image ;
                        }
                        propertyGrid1.SelectedObject = pt;
                }

                private void tabControl1_SelectedIndexChanged(object sender, System.EventArgs e)
                {
                        if (tabControl1.SelectedIndex == 1) setWMProperties();
                }
        }
}

You will find his homepage here (http://b.domaindlx.com/bigd)

New Feature

  • URI Grabbing function. You are able to grab links from the HTML files.
    You may have found a webpage that contains many links with link text and you do not want to copy the texts but links. Just save page as a HTML file and load it into MEMO URI Grabber!

Fixed bug

  • When you modify saved documents and select a new document, it showed “File Untitled is modified…” – has been fixed.
    Now it shows the document path and name.
  • When you hit a “Delete” key, it does not happen anything – has been solved. You just need to press “Shift” key when you want to use “Delete” key to delete right side of the cursor. Then it acts as Notepad.

Changes

  • Current line color has changed to gray instead of yellow.
    This change was necessary, for those who use the “Twilight” or things like dark background and light text, you cannot see the text otherwise.
  • And some small changes have been made.

Read more about MEMO
or
Download MEMO

Maintenance release and a few changes are made.
I’ve done this, because of BASS file has been updated.

Read more about this software

People want something to happen. And me too.
So I made the MP3 player. And it really can play MP3.
With the “MediaElement”, you can play video files too.

mp3_test.jpg (17 KB)

“MainPage.xaml” looks like this.

<UserControl x:Class="MP3MediaTest.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d" d:DesignWidth="640" d:DesignHeight="480">
  <Grid x:Name="LayoutRoot">
        <StackPanel>
            <MediaElement AutoPlay="False" x:Name="myMP3" Source="Etudo.mp3" />
            <TextBlock FontSize="20" x:Name="myStatus" />
            <StackPanel Orientation="Horizontal">
                <Button x:Name="myPlayButton" Width="100" Content="Play" Click="OnPlay" />
                <Button x:Name="myPauseButton" Width="100" Content="Pause" Click="OnPause" />
                <Button x:Name="myStopButton" Width="100" Content="Stop" Click="OnStop" />
            </StackPanel>
        </StackPanel>
    </Grid>
</UserControl>

And “MainPage.xaml.cs” looks like this.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;

namespace MP3MediaTest
{
    public partial class MainPage : UserControl
    {
        public MainPage()
        {
            InitializeComponent();
            this.myMP3.CurrentStateChanged += new RoutedEventHandler(OnCurrentStateChanged);
        }

        void OnCurrentStateChanged(object sender, RoutedEventArgs e)
        {
            bool isPlaying = (this.myMP3.CurrentState == MediaElementState.Playing);
            this.myPauseButton.IsEnabled = isPlaying && this.myMP3.CanPause;
            this.myPlayButton.IsEnabled = !isPlaying;
            this.myStatus.Text = this.myMP3.CurrentState.ToString() + " - " + this.myMP3.Source.ToString();
        }

        private void OnPlay(object sender, RoutedEventArgs e)
        {
            this.myMP3.Play();
        }

        private void OnPause(object sender, RoutedEventArgs e)
        {
            this.myMP3.Pause();
        }

        private void OnStop(object sender, RoutedEventArgs e)
        {
            this.myMP3.Stop();
        }
    }
}

imagebrush.jpg (36 KB)

<UserControl x:Class="ImageBrushTest.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d" d:DesignWidth="640" d:DesignHeight="480">
  <Grid x:Name="LayoutRoot">
      <Canvas>
            <Rectangle RadiusX="30" RadiusY="30" Fill="AliceBlue" Stroke="Gray" StrokeThickness="5" Canvas.Left="5" Canvas.Top="5" Width="360" Height="360" />
            <Ellipse Width="330" Height="330" Canvas.Left="20" Canvas.Top="20" Stroke="Coral" StrokeThickness="10">
                <Ellipse.Fill>
                    <ImageBrush Stretch="Uniform" ImageSource="bird.png" />
                </Ellipse.Fill>
            </Ellipse>
        </Canvas>
  </Grid>
</UserControl>

Image file should be in the same folder as the XAP file (“ClientBin” folder). If it is not the case, you must specify the path to the file (ie http://www.yoursite.com/images/bird.png).
Actually, the XAP file is a ZIP file with different extension. You can change its extension and unzip it.