<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.mediamonkey.com/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Teknojnky</id>
	<title>MediaMonkey Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://www.mediamonkey.com/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Teknojnky"/>
	<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/Special:Contributions/Teknojnky"/>
	<updated>2026-05-23T11:52:03Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.41.4</generator>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Moving_MM_to_a_new_computer&amp;diff=5550</id>
		<title>Moving MM to a new computer</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Moving_MM_to_a_new_computer&amp;diff=5550"/>
		<updated>2010-03-01T23:15:39Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: /* Copying your database */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
If you want to move MM to a new computer (or hard drive) but retain your database, follow these steps.  If these steps are followed correctly, all information that is maintained by your database will be retained, including PlayHistory, PlayCounts, Dates Added, PlayLists and all other fields within MM.&lt;br /&gt;
&lt;br /&gt;
==Copying your database==&lt;br /&gt;
Your database is located at:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Windows XP&#039;&#039;&#039;: C:\Documents and Settings\&amp;lt;USERNAME&amp;gt;\Local Settings\Application Data\MediaMonkey&lt;br /&gt;
&lt;br /&gt;
or&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Windows Vista&#039;&#039;&#039;: C:\Users\&amp;lt;USERNAME&amp;gt;\AppData\Local\Mediamonkey&lt;br /&gt;
&lt;br /&gt;
and is called MM.DB (note that you will have to enable viewing of hidden Files and Folders to find this file).&lt;br /&gt;
&lt;br /&gt;
After installing MM on the new computer, put your database in the correct location (as noted above) on the new computer.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Optionally, you may also want to save your registry info as well, @ HKey_Current_ User\Software\Mediamonkey&lt;br /&gt;
&lt;br /&gt;
==Moving your music to the new PC==&lt;br /&gt;
Next, you&#039;ll have to move all the music from the old PC onto the new one, making sure that the file directory for each track stays the same as on the old PC (with the exception of drive letter, though that can remain the same.) &lt;br /&gt;
&lt;br /&gt;
==Installing the update drive-ID script==&lt;br /&gt;
After you do all of that, install [http://www.mediamonkey.com/forum/viewtopic.php?t=8975 this script] to your new PC.  To install this script, first shut down MM.  Next, copy the contents in the &#039;Code:&#039; box at the link provided into notepad.  Save the file as &#039;MM_HDDSerial.vbs&#039; (without the quotes) in your C:\Program Files\MediaMonkey\Scripts folder.  Next, within that same folder, find &#039;Scripts.ini&#039;.  Open this file with notepad and copy the following lines and paste them onto the end of the file, then save.&lt;br /&gt;
&lt;br /&gt;
Copy these lines into Scripts.ini:&lt;br /&gt;
&lt;br /&gt;
[HDDSerial]&lt;br /&gt;
&amp;lt;br&amp;gt;FileName=MM_HDDSerial.vbs&lt;br /&gt;
&amp;lt;br&amp;gt;ProcName=Change_HDD_Serial&lt;br /&gt;
&amp;lt;br&amp;gt;Order=99&lt;br /&gt;
&amp;lt;br&amp;gt;DisplayName=Move Device Content&lt;br /&gt;
&amp;lt;br&amp;gt;Description=Corrects broken links after exchanged harddrive&lt;br /&gt;
&amp;lt;br&amp;gt;Language=VBScript&lt;br /&gt;
&amp;lt;br&amp;gt;ScriptType=0&lt;br /&gt;
&lt;br /&gt;
==Running the script==&lt;br /&gt;
Now you&#039;re ready to run the script.  Open MM (if you are using Windows Vista or Windows 7, right click on the MM icon and choose &amp;quot;Run as administrator&amp;quot; even if your Windows user account has administrative rights) and run the script at Tools -&amp;gt; Scripts -&amp;gt; Move Device Content.  If you receive any errors or the script doesn&#039;t appear under Tools -&amp;gt; Scripts, check that you have installed the script correctly, and/or try restarting MM.  &lt;br /&gt;
&lt;br /&gt;
Running the script will  change the drive-ID within the MediaMonkey database to recognize your new drive, and all your database information will be retained.  If you can play your music from MM, and tracks do not &#039;grey out&#039;, then you have successfully moved your MM installation to a new computer.&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Database_Structure&amp;diff=5418</id>
		<title>Database Structure</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Database_Structure&amp;diff=5418"/>
		<updated>2009-12-03T21:58:51Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: /* Default Mediamonkey 3 Database location */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DatabaseTablesList}}&lt;br /&gt;
&lt;br /&gt;
==MediaMonkey 3.0==&lt;br /&gt;
&lt;br /&gt;
== Database type ==&lt;br /&gt;
[http://www.sqlite.org SQLite] version 3&lt;br /&gt;
* Encoding: UTF-16le&lt;br /&gt;
* Text collate IUNICODE (except where indicated with a (*))&lt;br /&gt;
&lt;br /&gt;
== Additions to SQLite ==&lt;br /&gt;
Check out [http://www.sqlite.org/docs.html SQLite documentation]. MediaMonkey adds some more functions that you can use in SQL queries:&lt;br /&gt;
&lt;br /&gt;
=== Collations ===&lt;br /&gt;
* IUNICODE - Unicode language neutral case insensitive (Post [http://www.mediamonkey.com/forum/viewtopic.php?p=127635#127635 1] [http://www.mediamonkey.com/forum/viewtopic.php?p=79915#79915 2] by Jiri with more detail)&lt;br /&gt;
* USERLOCALE - Sorts according to users locale in regional settings. (Implemented in 3.1.2.1279)&lt;br /&gt;
* NUMERICSTRING - Natural song order respecting numbers stored as strings. Useful for Track# and Disc# fields.&lt;br /&gt;
&lt;br /&gt;
=== Functions ===&lt;br /&gt;
* HASSUBFOLDERS(string) - Used internally by MediaMonkey.&lt;br /&gt;
* INSTR(string1, string2) - Returns 1-based index of the first occurrence of string2 in string1, if not found 0 is returned. Case sensitive.&lt;br /&gt;
* LIKE(string1, string2) - Used to replace internal SQLite LIKE operator with one that supports Unicode strings. SEE NOTE!&lt;br /&gt;
* NEXTPATHPART(string) - Used internally by MediaMonkey.&lt;br /&gt;
* SIN(number) - Mathematical sinus function.&lt;br /&gt;
* STRICOMPW(string1, string2) - Compares two Unicode strings, case insensitive.&lt;br /&gt;
* UPPERW(string) - Unicode string upper case.&lt;br /&gt;
* GETEXTENSION(string) - Returns the extension from a filename. (Introduced in MM 3.1)&lt;br /&gt;
* SOUNDEX(string) - Returns a four-character string, based on how the word is pronounced in English. Similar spelled names are supposed to returns the same string. (Introduced in MM 3.1)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Note regarding LIKE ====&lt;br /&gt;
This MM-specific implementation of LIKE, automatically uses the @-sign as the escape character and it is always applied.&lt;br /&gt;
It means that you need to modify the SearchString to correctly use this function.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Here is one example of an VBScript function which prepares the search string correctly.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
Function FixLikeSearchString(Str)&lt;br /&gt;
  Str = Replace(Str,&amp;quot;@&amp;quot;,&amp;quot;@@&amp;quot;)&lt;br /&gt;
  Str = Replace(Str,&amp;quot;_&amp;quot;,&amp;quot;@_&amp;quot;)&lt;br /&gt;
  Str = Replace(Str,&amp;quot;%&amp;quot;,&amp;quot;@%&amp;quot;)&lt;br /&gt;
  Str = Replace(Str,&amp;quot;&#039;&amp;quot;,&amp;quot;&#039;&#039;&amp;quot;) &#039;&amp;lt;--- Single quotes are escaped with another single quote&lt;br /&gt;
  FixLikeSearchString=Str&lt;br /&gt;
End Function&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you for some reason, within an SQL-statement, need to link two fields using LIKE (instead of =) then use this syntax:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
SomeField LIKE REPLACE(REPLACE(REPLACE(SomeOtherField,&#039;@&#039;,&#039;@@&#039;)&#039;_&#039;,&#039;@_&#039;)&#039;%&#039;,&#039;@%&#039;)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Default Mediamonkey 3 Database location ==&lt;br /&gt;
&#039;&#039;&#039;Windows XP:&#039;&#039;&#039; C:\Documents and Settings\&amp;lt;USERNAME&amp;gt;\Local Settings\Application Data\MediaMonkey\MM.DB&lt;br /&gt;
&amp;lt;br&amp;gt;&#039;&#039;&#039;Windows Vista and Windows 7:&#039;&#039;&#039; C:\Users\&amp;lt;USERNAME&amp;gt;\AppData\Local\MediaMonkey\MM.DB&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NOTE&#039;&#039;&#039;: &#039;&#039;When you are looking for the default mediamonkey.ini or mm.db, you may have to enable &amp;quot;View hidden/system files&amp;quot; in your windows explorer options or search&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Default Mediamonkey 2 Database location ==&lt;br /&gt;
My Documents\My Music\Mediamonkey\Mediamonkey.mdb&lt;br /&gt;
&lt;br /&gt;
== Used data types ==&lt;br /&gt;
&#039;&#039;&#039;INTEGER&#039;&#039;&#039; The value is a signed integer, stored in 1, 2, 3, 4, 6, or 8 bytes depending on the magnitude of the value.&lt;br /&gt;
&amp;lt;br&amp;gt;&#039;&#039;&#039;REAL&#039;&#039;&#039; The value is a floating point value, stored as an 8-byte IEEE floating point number.&lt;br /&gt;
&amp;lt;br&amp;gt;&#039;&#039;&#039;TEXT&#039;&#039;&#039; The value is a text string, stored using the database encoding (UTF-16-LE).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Structure explanation ==&lt;br /&gt;
The most important table is the &#039;&#039;Songs&#039;&#039; table, which is the starting point for all song-specific info. To allow rapid requests, most of the information is present in the table itself, e.g. the Artist name is spelled out.&lt;br /&gt;
The link between table Songs and other tables like Artists, Albums, ... happens with intermediary tables, e.g. ArtistsSongs. This allows us to assign multiple songs to one artist, AND multiple artists to one song.&lt;br /&gt;
&lt;br /&gt;
The database contains custom events, called &amp;quot;triggers&amp;quot;, that are executed when e.g. an artist is assigned to a track. For that example, the trigger will automatically increment the Artists table&#039;s Tracks counter field.&lt;br /&gt;
&lt;br /&gt;
== Database tables ==&lt;br /&gt;
*[[Albums table|Albums]]: Contains all Albums and some Album specific info&lt;br /&gt;
*[[Artists table|Artists]]: Contains all Artists, AlbumArtists, Composers, Conductors and Lyricists with their track count&lt;br /&gt;
*[[ArtistsAlbums table|ArtistsAlbums]]: Specifies the relation between an Album and its AlbumArtist(s)&lt;br /&gt;
*[[ArtistsSongs table|ArtistsSongs]]: Specifies the relation between a Song and its Artist(s), Composer(s), Conductor(s) and Lyricist(s)&lt;br /&gt;
*[[Covers table|Covers]]&lt;br /&gt;
*[[DBInfo table|DBInfo]]&lt;br /&gt;
*[[DeviceFilters table|DeviceFilters]]&lt;br /&gt;
*[[DeviceTracks table|DeviceTracks]]&lt;br /&gt;
*[[Devices table|Devices]]&lt;br /&gt;
*[[Filters table|Filters]]: Contains all Filters/Views configured in MM&lt;br /&gt;
*[[Folders table|Folders]]&lt;br /&gt;
*[[FoldersHier table|FoldersHier]]&lt;br /&gt;
*[[Genres table|Genres]]: Contains all Genres with track Count&lt;br /&gt;
*[[GenresSongs table|GenresSongs]]: Specifies the relation between a Song and its Genre(s)&lt;br /&gt;
*[[LastTreePath table|LastTreePath]]&lt;br /&gt;
*[[Lists table|Lists]]: Contains all Classifications and their sort order in the tree&lt;br /&gt;
*[[ListsSongs table|ListsSongs]]: Specifies the relation between a Song and its various Classifications&lt;br /&gt;
*[[Medias table|Medias]]: Contains all the media sources that have been used&lt;br /&gt;
*[[OrganizeRules table|OrganizeRules]]&lt;br /&gt;
*[[PathProcessing table|PathProcessing]]&lt;br /&gt;
*[[Played table|Played]]&lt;br /&gt;
*[[PlaylistSongs table|PlaylistSongs]] Specifies the relation between a Song and what &#039;&#039;&#039;Static Playlist(s)&#039;&#039;&#039; it appears in&lt;br /&gt;
*[[Playlists table|Playlists]] : Contains all Static Playlists and Auto-Playlists&lt;br /&gt;
*[[PodcastDirs table|PodcastDirs]]&lt;br /&gt;
*[[PodcastEpisodes table|PodcastEpisodes]] Specifies the relation between a Song and a Podcast&lt;br /&gt;
*[[Podcasts table|Podcasts]] Specifies podcast subscriptions &lt;br /&gt;
*[[Songs table|Songs]] : Contains all songs with all their properties&lt;br /&gt;
*[[SynchAlbum table|SynchAlbum]]&lt;br /&gt;
*[[SynchArtist table|SynchArtist]]&lt;br /&gt;
*[[SynchLocation table|SynchLocation]]&lt;br /&gt;
*[[SynchPlaylist table|SynchPlaylist]]&lt;br /&gt;
*[[SynchPodcast table|SynchPodcast]]&lt;br /&gt;
&lt;br /&gt;
== Database structure == &lt;br /&gt;
&#039;&#039;(only most important tables)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Image:MM3DBStructure.PNG|center|650px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==MediaMonkey v2.5 and lower==&lt;br /&gt;
&lt;br /&gt;
===Database structure===&lt;br /&gt;
[[Image:DatabaseRelationsMM2.gif|center|650px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===AddSongInfo===&lt;br /&gt;
&#039;&#039;Value field is &amp;quot;TextData&amp;quot;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;DataType&#039;&#039;&#039;&lt;br /&gt;
{| border=&amp;quot;2&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Value || AIF Code || Description&lt;br /&gt;
|-&lt;br /&gt;
| 100 || AIF_COPYRIGHT || Copyright&lt;br /&gt;
|-&lt;br /&gt;
| 101 || AIF_PUBLISHER || Publisher&lt;br /&gt;
|-&lt;br /&gt;
| 102 || AIF_ENCODER || Encoder&lt;br /&gt;
|-&lt;br /&gt;
| 103 || AIF_ENCODEDBY || Encoded By&lt;br /&gt;
|-&lt;br /&gt;
| 200 || AIF_LYRICIST || Lyricist&lt;br /&gt;
|-&lt;br /&gt;
| 201 || AIF_BAND || Band&lt;br /&gt;
|-&lt;br /&gt;
| 202 || AIF_CONDUCTOR || Conductor&lt;br /&gt;
|-&lt;br /&gt;
| 203 || AIF_REMIXER || Remixer&lt;br /&gt;
|-&lt;br /&gt;
| 204 || AIF_INVOLVEDPEOPLE || Involved People&lt;br /&gt;
|-&lt;br /&gt;
| 205 || AIF_MUSICCOMPOSER || (See note)&lt;br /&gt;
|-&lt;br /&gt;
| 300 || AIF_ORIGTITLE || Original Title&lt;br /&gt;
|-&lt;br /&gt;
| 301 || AIF_ORIGARTIST || Original Artist&lt;br /&gt;
|-&lt;br /&gt;
| 302 || AIF_ORIGLYRICIST || Original Lyricist&lt;br /&gt;
|-&lt;br /&gt;
| 400 || AIF_GROUPDESC || &lt;br /&gt;
|-&lt;br /&gt;
| 401 || AIF_SUBTITLE || &lt;br /&gt;
|-&lt;br /&gt;
| 402 || AIF_ISRC || &lt;br /&gt;
|-&lt;br /&gt;
| 500 || AIF_INITIALKEY || &lt;br /&gt;
|-&lt;br /&gt;
| 501 || AIF_LANGUAGE || &lt;br /&gt;
|-&lt;br /&gt;
| 502 || AIF_MEDIATYPE || &lt;br /&gt;
|-&lt;br /&gt;
| 503 || AIF_RATINGSTRING || &lt;br /&gt;
|-&lt;br /&gt;
| 1000 || AIF_WEB_COMMERCIAL || &lt;br /&gt;
|-&lt;br /&gt;
| 1001 || AIF_WEB_COPYRIGHT || &lt;br /&gt;
|-&lt;br /&gt;
| 1002 || AIF_WEB_FILEPAGE || &lt;br /&gt;
|-&lt;br /&gt;
| 1003 || AIF_WEB_ARTIST || &lt;br /&gt;
|-&lt;br /&gt;
| 1004 || AIF_WEB_SOURCE || &lt;br /&gt;
|-&lt;br /&gt;
| 1005 || AIF_WEB_RADIO || &lt;br /&gt;
|-&lt;br /&gt;
| 1006 || AIF_WEB_PAYMENT || &lt;br /&gt;
|-&lt;br /&gt;
| 1007 || AIF_WEB_PUBLISHER || &lt;br /&gt;
|-&lt;br /&gt;
| 1100 || AIF_WEB_USER || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Note: Apparently, the value for the composer is stored in the Author field of the Songs table rather than in the AddSongInfo table under MediaMonkey 2.5. The situation in other versions is unknown.&lt;br /&gt;
&lt;br /&gt;
===AddSongInfoInt===&lt;br /&gt;
&#039;&#039;Value field is &amp;quot;IntData&amp;quot;&#039;&#039; (linked to Lists.ID)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;DataType&#039;&#039;&#039; (partially linked to Lists.IDListType)&lt;br /&gt;
{| border=&amp;quot;2&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Value || AIF Code || Description&lt;br /&gt;
|-&lt;br /&gt;
| 10000 || AIF_ORIGYEAR || Original Year&lt;br /&gt;
|-&lt;br /&gt;
| 10101 || AIF_TEMPO || Tempo&lt;br /&gt;
|-&lt;br /&gt;
| 10102 || AIF_MOOD || Mood&lt;br /&gt;
|-&lt;br /&gt;
| 10103 || AIF_OCCASION || Occasion&lt;br /&gt;
|-&lt;br /&gt;
| 10104 || AIF_QUALITY || Quality&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Memos===&lt;br /&gt;
&#039;&#039;Value field is &amp;quot;MemoText&amp;quot;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;MemoType&#039;&#039;&#039;&lt;br /&gt;
{| border=&amp;quot;2&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Value || AIF Code || Description&lt;br /&gt;
|-&lt;br /&gt;
| 20000 || AIF_LYRICS || Lyrics&lt;br /&gt;
|-&lt;br /&gt;
| 20001 || AIF_COMMENT || Comment&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Portable_Mediamonkey&amp;diff=5417</id>
		<title>Portable Mediamonkey</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Portable_Mediamonkey&amp;diff=5417"/>
		<updated>2009-12-03T21:56:49Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== This is an overview of how to setup MediaMonkey for USB stick, external drive, or shared network install. ==&lt;br /&gt;
&lt;br /&gt;
First, read the FAQs for [http://www.mediamonkey.com/support/index.php?_m=knowledgebase&amp;amp;_a=viewarticle&amp;amp;kbarticleid=49&amp;amp;nav=0,2 Shared Settings] and [http://www.mediamonkey.com/support/index.php?_m=knowledgebase&amp;amp;_a=viewarticle&amp;amp;kbarticleid=46&amp;amp;nav=0,2 Changing the location of the library database].&lt;br /&gt;
&lt;br /&gt;
These 2 articles provide the background necessary to understand what needs to be done.&lt;br /&gt;
&lt;br /&gt;
Once you understand the FAQs, then you will also understand that the process outlined below requires your device to always have the same drive letter (or UNC network path if you are using a NAS or server). You can manually assign a letter in the Windows Control Panel &amp;gt; Computer Management &amp;gt; Disk Manager.  For Shared Network drives, even if you have created a mapped drive shortcut, you should use the UNC path.  For example, if your shared network drive is named NETDRIVE and is mapped to drive letter z:, use \\NETDRIVE\&amp;lt;folder&amp;gt;\&amp;lt;filename&amp;gt; for any references in the ini file, do not use z:\&amp;lt;folder&amp;gt;\&amp;lt;filename&amp;gt;.  By using the UNC network path you are protected from problems from having the drive mapped to a different letter on other computers on the network.&lt;br /&gt;
&lt;br /&gt;
Another important point is that MediaMonkey also stores some settings in the registry. These settings are generally the UI settings/positions and &#039;Gold&#039; key if you have one, among other things.  These settings will not be portable between computers, but normally you won&#039;t need them to be once you&#039;re all set up. You will likely have to activate your gold license the first time you access MediaMonkey on the device from a new computer.&lt;br /&gt;
&lt;br /&gt;
Finally, you should understand that both articles can be done independently. You can have shared settings while still having independent databases, or you can have independent settings while having a shared database.&lt;br /&gt;
&lt;br /&gt;
What we are going to do, is combine both functions so that both settings and library are stored in one location (your USB stick/external drive/network folder).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===&#039;&#039;&#039;NOTE&#039;&#039;&#039;: &#039;&#039;When you are looking for the default mediamonkey.ini or mm.db, you may have to enable &amp;quot;View hidden/system files&amp;quot; in your windows explorer options or search&#039;&#039;.===&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Move&#039;&#039;&#039; your existing MediaMonkey program folder or install a fresh copy to your destination device (USB stick, external drive, network share).  Installing a fresh copy works better.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
* &#039;&#039;&#039;Move&#039;&#039;&#039; your Mediamonkey.ini from the [http://www.mediamonkey.com/support/index.php?_m=knowledgebase&amp;amp;_a=viewarticle&amp;amp;kbarticleid=17&amp;amp;nav=0,2 default user location] to the program location you moved or installed MM to on your destination device.  Your user Mediamonkey.ini should reside in the same location as the Mediamonkey.exe (rename or overwrite any existing Mediamonkey.ini in the program folder).  If you are using a network share drive as the &amp;quot;Device&amp;quot;, and you are moving an existing ini file from the c:\users\&amp;lt;username&amp;gt;\appdata\local\MediaMonkey directory, it is important to edit the following lines of the ini file so that they have paths that are accessable from all computers on the network.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
From:&lt;br /&gt;
&lt;br /&gt;
TempDir=c:\users\&amp;lt;username&amp;gt;\appdata\local\Temp\&lt;br /&gt;
&lt;br /&gt;
CacheDir=c:\users\&amp;lt;username&amp;gt;\appdata\local\MediaMonkey\VirtualCD\&lt;br /&gt;
&lt;br /&gt;
PreviewDir=c:\users\&amp;lt;username&amp;gt;\appdata\local\MediaMonkey\Previews\&lt;br /&gt;
&lt;br /&gt;
To, for example,:&lt;br /&gt;
&lt;br /&gt;
TempDir=\\&amp;lt;shared network folder&amp;gt;\&amp;lt;MediaMonkey Program Folder&amp;gt;\Temp\&lt;br /&gt;
&lt;br /&gt;
CacheDir=\\&amp;lt;shared network folder&amp;gt;\&amp;lt;MediaMonkey Program Folder&amp;gt;\VirtualCD\&lt;br /&gt;
&lt;br /&gt;
PreviewDir=\\&amp;lt;shared network folder&amp;gt;\&amp;lt;MediaMonkey Program Folder&amp;gt;\Previews\&lt;br /&gt;
&lt;br /&gt;
Without this change, you will get an error saying there is a problem creating the Temp, Virtual CD and Previews folders upon start-up on any computers other than the computer which had the original ini file.  If you want to retain your existing versions of these files, you can move them from the original locations to the new locations in the shared network folder.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
* To have a shared database, you must now edit the Mediamonkey.ini and [http://www.mediamonkey.com/support/index.php?_m=knowledgebase&amp;amp;_a=viewarticle&amp;amp;kbarticleid=46&amp;amp;nav=0,2 follow the directions in the FAQ] by adding the appropriate entry and path.  You can let MM create a new database there or [http://www.mediamonkey.com/support/index.php?_m=knowledgebase&amp;amp;_a=viewarticle&amp;amp;kbarticleid=17&amp;amp;nav=0,2 move your existing database] to the new location on the destination device.  Once again, if you are using a shared network folder, use the UNC path, not the mapped drive letter.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now, you should have a MM install on your device, your MediaMonkey folder should contain your existing Mediamonkey.ini, and your Mediamonkey.ini should point to your database also located somewhere on the device.&lt;br /&gt;
&lt;br /&gt;
If your music is also on the device, then you should be able to access everything as one package. If your music is located elsewhere, then you must also have access to that location in order to play the music from that location.  If you plan on running MM from a shared network drive and the music is also on the shared network drive, then once again, it is important that the path for the location of the music be the UNC name, not a mapped drive letter. If you don&#039;t make this conversion, the network version of MM won&#039;t work on any computer which has the network drive mapped to a different letter than the computer from which the music on the network drive was added to the DB. This topic explains how to make the change to the UNC name from a mapped drive letter http://mediamonkey.com/forum/viewtopic.php?f=3&amp;amp;t=33788&amp;amp;start=0&amp;amp;st=0&amp;amp;sk=t&amp;amp;sd=a. Another more manual way to accomplish this is to start with a new DB and add the music to your DB by using the network path in the add/rescan dialog window rather than the mapped drive path. However, this method causes you to lose everything else in you DB other than you music.&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For example, I have all of my music, my MediaMonkey program folder, Mediamonkey.ini and MM3.db all located on my external drive J: and I can run MM and access my music from there as long as I make sure that the drive always gets J: when connected to any computer.&lt;br /&gt;
&lt;br /&gt;
Hopefully this information is helpful in getting your portable or network monkey working.  Here is a thread which discusses setting up MM on a shared network drive http://www.mediamonkey.com/forum/viewtopic.php?f=1&amp;amp;t=34083.&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Last.FM_Scrobbler_Plugin_Info&amp;diff=4916</id>
		<title>Last.FM Scrobbler Plugin Info</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Last.FM_Scrobbler_Plugin_Info&amp;diff=4916"/>
		<updated>2009-01-29T23:51:55Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= About Last.FM Scrobbler Support =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mediamonkey supports the Last.FM &#039;scrobbler&#039; plugins to submit played tracks within MediaMonkey itself (portable player sync&#039;d played tracks are not supported).&lt;br /&gt;
&lt;br /&gt;
Currently there are 3 main plugins available, only ONE of which should reside in the &amp;quot;&amp;lt;MediaMonkey program folder&amp;gt;\Plugins&amp;quot; folder.&lt;br /&gt;
&lt;br /&gt;
== Version 1: gen_audioscrobbler.dll (v 1.1.10) ==&lt;br /&gt;
&lt;br /&gt;
This is the last &#039;old style&#039; plugin for winamp 2 compatible clients. This plugin uses a config panel normally accessed via Tool &amp;gt; Options &amp;gt; Player &amp;gt; General Plugins &amp;gt; Plugin Config.&lt;br /&gt;
&lt;br /&gt;
You can download this from the links @ http://www.last.fm/forum/34905/_/135053&lt;br /&gt;
&lt;br /&gt;
Occasionally the config panel will get hidden behind the MM app window, if the MM window is made smaller you can usually then click on the config panel to bring it to the front where you can change and save your settings. Alternative way is to use ALT+TAB to bring back focus to config panel.&lt;br /&gt;
&lt;br /&gt;
This plugin does not support last.fm profile &amp;quot;Now Playing&amp;quot; updates, and some unicode characters can cause a track to not be submitted.&lt;br /&gt;
&lt;br /&gt;
== Version 2: gen_wa2_scrobbler.dll (v 2.x.x) ==&lt;br /&gt;
&lt;br /&gt;
This is the offical current style of last.fm plugins. This plugin utilizes a &#039;tray application&#039; which gives some additional metadata info and includes the last.fm radio player for streaming radio.&lt;br /&gt;
&lt;br /&gt;
The last compatible version for v2 plugins is [http://static.last.fm/plugins/ass/WinampPluginSetup_2.0.45.0.exe 2.0.45], newer plugins are currently incompatible with MediaMonkey.&lt;br /&gt;
&lt;br /&gt;
To configure the version 2 style, you must open the tray application and configure through it&#039;s options. The plugin does not have any self configure, nor will it function without the tray application installed and running (normally the plugin will start the tray app automatically).&lt;br /&gt;
&lt;br /&gt;
The latest official plugins are always available at Last.FM http://www.last.fm/download/ keeping in mind that while the latest tray app should work, plugins newer than [http://static.last.fm/plugins/ass/WinampPluginSetup_2.0.45.0.exe 2.0.45] will not.&lt;br /&gt;
&lt;br /&gt;
To install, make sure you have the [http://www.last.fm/download/ TRAY APP] already installed, then run the plugin installer  [http://static.last.fm/plugins/ass/WinampPluginSetup_2.0.45.0.exe 2.0.45], simply point the installer to the mediamonkey folder instead of the winamp folder.&lt;br /&gt;
&lt;br /&gt;
== Version 3: gen_LastFMScrobbler.dll [http://www.mediamonkey.com/forum/viewtopic.php?t=26404 Native Last.FM Scrobbler Plugin] (beta) ==&lt;br /&gt;
&lt;br /&gt;
See forum thread for details and download&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=ISDBTreeNode::NodeType&amp;diff=4898</id>
		<title>ISDBTreeNode::NodeType</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=ISDBTreeNode::NodeType&amp;diff=4898"/>
		<updated>2009-01-22T18:37:24Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{MethodDeclaration|SDBTreeNode|ISDBTreeNode|Property Get/Let NodeType As Long}}&lt;br /&gt;
&lt;br /&gt;
===Property description===&lt;br /&gt;
&lt;br /&gt;
Returns the type of node. Mainly for internal usage.&lt;br /&gt;
&lt;br /&gt;
[[MediaMonkey Tree structure]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Scripting|{{PAGENAME}}]]&lt;br /&gt;
[[Category:Automation objects|{{PAGENAME}}]]&lt;br /&gt;
[[Category:CoClass SDBTreeNode|{{PAGENAME}}]]&lt;br /&gt;
[[Category:Interface ISDBTreeNode|{{PAGENAME}}]]&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=ISDBScriptControl::Reload&amp;diff=4857</id>
		<title>ISDBScriptControl::Reload</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=ISDBScriptControl::Reload&amp;diff=4857"/>
		<updated>2009-01-21T05:23:39Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{MethodDeclaration|SDBScriptControl|ISDBScriptControl|Sub Reload(ScriptPath As String)}}&lt;br /&gt;
&lt;br /&gt;
===Parameters===&lt;br /&gt;
&lt;br /&gt;
{{MethodParameters &lt;br /&gt;
 |ScriptPath |String |Script file to be reloaded.}}&lt;br /&gt;
&lt;br /&gt;
===Method description===&lt;br /&gt;
&lt;br /&gt;
This method is for script development only. When called with a full script path, the script will be reloaded from disk before the its next event is called and so updated source from disk is used instead of the already loaded code from memory.&lt;br /&gt;
&lt;br /&gt;
In case the ScriptPath parameter is an empty string, all strings in memory will be reloaded.&lt;br /&gt;
&lt;br /&gt;
Note that by calling this method you lose all global variables of the reloaded script, their content can&#039;t be preserved. On the other hand, all registered events and SDB.Objects are preserved.&lt;br /&gt;
&lt;br /&gt;
Introduced in MediaMonkey 3.1.0.1212. &lt;br /&gt;
&lt;br /&gt;
[[Category:Scripting|{{PAGENAME}}]]&lt;br /&gt;
[[Category:Automation objects|{{PAGENAME}}]]&lt;br /&gt;
[[Category:CoClass SDBScriptControl|{{PAGENAME}}]]&lt;br /&gt;
[[Category:Interface ISDBScriptControl|{{PAGENAME}}]]&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=ISDBTree::Refresh&amp;diff=4856</id>
		<title>ISDBTree::Refresh</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=ISDBTree::Refresh&amp;diff=4856"/>
		<updated>2009-01-21T05:21:12Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{MethodDeclaration|SDBTree|ISDBTree|Sub Refresh}}&lt;br /&gt;
&lt;br /&gt;
===Method description===&lt;br /&gt;
&lt;br /&gt;
Causes the tree to be repainted. It&#039;s useful after some actions, e.g. changing tree node Caption doesn&#039;t repaint the node automatically and so this method might be needed.&lt;br /&gt;
&lt;br /&gt;
Example: SDB.MainTree.Refresh&lt;br /&gt;
&lt;br /&gt;
Introduced in MediaMonkey 3.1.0.1216.&lt;br /&gt;
&lt;br /&gt;
[[Category:Scripting|{{PAGENAME}}]]&lt;br /&gt;
[[Category:Automation objects|{{PAGENAME}}]]&lt;br /&gt;
[[Category:CoClass SDBTree|{{PAGENAME}}]]&lt;br /&gt;
[[Category:Interface ISDBTree|{{PAGENAME}}]]&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Talk:ISDBApplication::WebControl&amp;diff=4823</id>
		<title>Talk:ISDBApplication::WebControl</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Talk:ISDBApplication::WebControl&amp;diff=4823"/>
		<updated>2009-01-20T20:18:06Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;What are the full properties and methods available with this web control?&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Talk:ISDBTreeNode::CustomObject&amp;diff=4822</id>
		<title>Talk:ISDBTreeNode::CustomObject</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Talk:ISDBTreeNode::CustomObject&amp;diff=4822"/>
		<updated>2009-01-19T23:22:25Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Why would this be used, and how?&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Talk:ISDBTracksWindow::AddTrackEx&amp;diff=4804</id>
		<title>Talk:ISDBTracksWindow::AddTrackEx</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Talk:ISDBTracksWindow::AddTrackEx&amp;diff=4804"/>
		<updated>2009-01-14T20:45:24Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;What would be an example use of this or why it would be better than .addtrack instead?&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=ISDBUIButtonEvents::OnClick&amp;diff=4791</id>
		<title>ISDBUIButtonEvents::OnClick</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=ISDBUIButtonEvents::OnClick&amp;diff=4791"/>
		<updated>2009-01-12T21:13:29Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: /* Event description */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{MethodDeclaration|SDBUIButton|ISDBUIButtonEvents|Sub OnClick}}&lt;br /&gt;
&lt;br /&gt;
===Event description===&lt;br /&gt;
&lt;br /&gt;
This event is called when button is clicked. You must use btn.Common.OnClick for the event to work properly.&lt;br /&gt;
&lt;br /&gt;
[[Category:Scripting|{{PAGENAME}}]]&lt;br /&gt;
[[Category:Automation objects|{{PAGENAME}}]]&lt;br /&gt;
[[Category:CoClass SDBUIButton|{{PAGENAME}}]]&lt;br /&gt;
[[Category:Interface ISDBUIButtonEvents|{{PAGENAME}}]]&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=SDBUIButton&amp;diff=4790</id>
		<title>SDBUIButton</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=SDBUIButton&amp;diff=4790"/>
		<updated>2009-01-12T21:12:22Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{AutomationObjectsList}}&lt;br /&gt;
== CoClass SDBUIButton ==&lt;br /&gt;
&lt;br /&gt;
Button (UI element).&lt;br /&gt;
&lt;br /&gt;
=== ISDBUIButton members ===&lt;br /&gt;
   &lt;br /&gt;
{{MethodsList &lt;br /&gt;
|[[ISDBUIButton::Cancel|Cancel]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBUIButton::Caption|Caption]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBUIButton::Common|Common]] |Property Get |  &lt;br /&gt;
|[[ISDBUIButton::Default|Default]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBUIButton::ModalResult|ModalResult]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBUIButton::OnClickFunc|OnClickFunc]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBUIButton::UseScript|UseScript]] |Property Get/Let |  &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== ISDBUIButtonEvents members ===&lt;br /&gt;
   &lt;br /&gt;
{{MethodsList &lt;br /&gt;
|[[ISDBUIButtonEvents::OnClick|OnClick]] |Event |  Use Common.OnClick&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Scripting|{{PAGENAME}}]]&lt;br /&gt;
[[Category:Automation objects|{{PAGENAME}}]]&lt;br /&gt;
[[Category:CoClass SDBUIButton|{{PAGENAME}}]]&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Video_for_Mediamonkey&amp;diff=4081</id>
		<title>Video for Mediamonkey</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Video_for_Mediamonkey&amp;diff=4081"/>
		<updated>2008-04-24T22:42:28Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=About=&lt;br /&gt;
Help, info and links to get Mediamonkey to play/manage video&#039;s.&lt;br /&gt;
&lt;br /&gt;
=FAQ=&lt;br /&gt;
&lt;br /&gt;
=Working Video Input Plugins=&lt;br /&gt;
[http://www.winamp.com/plugins/details/22629 VidAmp]&lt;br /&gt;
[http://www.winamp.com/plugins/details/109518 VideoObject]&lt;br /&gt;
&lt;br /&gt;
=Scripts Related to Videos=&lt;br /&gt;
[http://www.mediamonkey.com/forum/viewtopic.php?t=6397 Video Node]&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Video_for_Mediamonkey&amp;diff=4080</id>
		<title>Video for Mediamonkey</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Video_for_Mediamonkey&amp;diff=4080"/>
		<updated>2008-04-24T22:36:50Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Help, info and links to get Mediamonkey to play/manage video&#039;s.&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=User:Teknojnky&amp;diff=4079</id>
		<title>User:Teknojnky</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=User:Teknojnky&amp;diff=4079"/>
		<updated>2008-04-24T22:35:50Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hi!&lt;br /&gt;
&lt;br /&gt;
[[Video for Mediamonkey]]&lt;br /&gt;
&lt;br /&gt;
[[User Wishlists and Feature Requests]]&lt;br /&gt;
&lt;br /&gt;
[[Last.FM Scrobbler Plugin Info]]&lt;br /&gt;
&lt;br /&gt;
[[ActiveX Warnings]]&lt;br /&gt;
&lt;br /&gt;
[[Portable Mediamonkey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Current Auto-Organize mask&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;$left(\Music\$if(&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=various,_&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=techno,_&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=soundtrack,_&amp;lt;Album Artist&amp;gt;,&amp;lt;Album Artist@1&amp;gt;\&amp;lt;Album Artist&amp;gt;))),&amp;lt;Artist@1&amp;gt;\&amp;lt;Artist&amp;gt;)\$if(&amp;lt;Album&amp;gt;,$if(&amp;lt;Year&amp;gt;,&amp;lt;Year&amp;gt; - )&amp;lt;Album&amp;gt;)\$if(&amp;lt;track#&amp;gt;,&amp;lt;track#&amp;gt; - )&amp;lt;Artist&amp;gt; - &amp;lt;Title&amp;gt;,240)&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Previous Auto-Organize mask&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;$left(\Music\$if(&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=&amp;lt;Artist&amp;gt;,&amp;lt;Artist@1&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=various,_Various\$if(&amp;lt;Year&amp;gt;,&amp;lt;Year&amp;gt; - )&amp;lt;Album&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=soundtrack,_Soundtrack\$if(&amp;lt;Year&amp;gt;,)&amp;lt;Album&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=Techno,_Techno\$if(&amp;lt;Year&amp;gt;,&amp;lt;Year&amp;gt; - )&amp;lt;Album&amp;gt;,&amp;lt;Album Artist@1&amp;gt;\&amp;lt;Album Artist&amp;gt;)))),&amp;lt;Artist@1&amp;gt;)\$if(&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=&amp;lt;Artist&amp;gt;,&amp;lt;Artist&amp;gt;\,),&amp;lt;Artist&amp;gt;\)\$if(&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=&amp;lt;Artist&amp;gt;,&amp;lt;Artist&amp;gt;,&amp;lt;Album Artist&amp;gt;),&amp;lt;Artist&amp;gt;)$if(&amp;lt;Album&amp;gt;,$if(&amp;lt;Year&amp;gt;, - &amp;lt;Year&amp;gt;) - &amp;lt;Album&amp;gt;$if(&amp;lt;Track#&amp;gt;, - &amp;lt;Track#&amp;gt;,),)$if(&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=&amp;lt;Artist&amp;gt;, - &amp;lt;Title&amp;gt;, - &amp;lt;Artist&amp;gt; - &amp;lt;Title&amp;gt;), - &amp;lt;Title&amp;gt;),240)&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Talk:Podcast_FAQ&amp;diff=4078</id>
		<title>Talk:Podcast FAQ</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Talk:Podcast_FAQ&amp;diff=4078"/>
		<updated>2008-04-24T21:44:08Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Good info--[[User:Teknojnky|Teknojnky]] 17:44, 24 April 2008 (EDT)&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Database_Structure&amp;diff=4022</id>
		<title>Database Structure</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Database_Structure&amp;diff=4022"/>
		<updated>2008-04-22T01:12:16Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DatabaseTablesList}}&lt;br /&gt;
&lt;br /&gt;
==MediaMonkey 3.0==&lt;br /&gt;
&lt;br /&gt;
== Database type ==&lt;br /&gt;
[http://www.sqlite.org SQLite] version 3&lt;br /&gt;
* Encoding: UTF-16le&lt;br /&gt;
* Text collate IUNICODE (except where indicated with a (*))&lt;br /&gt;
&lt;br /&gt;
== Additions to SQLite ==&lt;br /&gt;
Check out [http://www.sqlite.org/docs.html SQLite documentation]. MediaMonkey adds some more functions that you can use in SQL queries:&lt;br /&gt;
&lt;br /&gt;
=== Collations ===&lt;br /&gt;
* IUNICODE - Unicode language neutral case insensitive (Post [http://www.mediamonkey.com/forum/viewtopic.php?p=127635#127635 1] [http://www.mediamonkey.com/forum/viewtopic.php?p=79915#79915 2] by Jiri with more detail)&lt;br /&gt;
* NUMERICSTRING - Natural song order respecting numbers stored as strings. Useful for Track# and Disc# fields.&lt;br /&gt;
&lt;br /&gt;
=== Functions ===&lt;br /&gt;
* hassubfolders(string) - Used internally by MediaMonkey.&lt;br /&gt;
* instr(string1, string2) - Returns 1-based index of the first occurrence of string2 in string1, if not found 0 is returned. Case sensitive.&lt;br /&gt;
* like(string1, string2) - Used to replace internal SQLite LIKE operator with one that supports Unicode strings.&lt;br /&gt;
* nextpathpart(string) - Used internally by MediaMonkey.&lt;br /&gt;
* sin(number) - Mathematical sinus function.&lt;br /&gt;
* stricompw(string1, string2) - Compares two Unicode strings, case insensitive.&lt;br /&gt;
* upperw(string) - Unicode string upper case.&lt;br /&gt;
&lt;br /&gt;
== Default Mediamonkey 3 Database location ==&lt;br /&gt;
&#039;&#039;&#039;Windows XP:&#039;&#039;&#039; C:\Documents and Settings\&amp;lt;USERNAME&amp;gt;\Local Settings\Application Data\MediaMonkey\MM.DB&lt;br /&gt;
&amp;lt;br&amp;gt;&#039;&#039;&#039;Windows Vista:&#039;&#039;&#039; C:\Users\&amp;lt;USERNAME&amp;gt;\AppData\Local\MediaMonkey\MM.DB&lt;br /&gt;
&lt;br /&gt;
== Default Mediamonkey 2 Database location ==&lt;br /&gt;
My Documents\My Music\Mediamonkey\Mediamonkey.mdb&lt;br /&gt;
&lt;br /&gt;
== Used data types ==&lt;br /&gt;
&#039;&#039;&#039;INTEGER&#039;&#039;&#039; The value is a signed integer, stored in 1, 2, 3, 4, 6, or 8 bytes depending on the magnitude of the value.&lt;br /&gt;
&amp;lt;br&amp;gt;&#039;&#039;&#039;REAL&#039;&#039;&#039; The value is a floating point value, stored as an 8-byte IEEE floating point number.&lt;br /&gt;
&amp;lt;br&amp;gt;&#039;&#039;&#039;TEXT&#039;&#039;&#039; The value is a text string, stored using the database encoding (UTF-16-LE).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Structure explanation ==&lt;br /&gt;
The most important table is the &#039;&#039;Songs&#039;&#039; table, which is the starting point for all song-specific info. To allow rapid requests, most of the information is present in the table itself, e.g. the Artist name is spelled out.&lt;br /&gt;
The link between table Songs and other tables like Artists, Albums, ... happens with intermediary tables, e.g. ArtistsSongs. This allows us to assign multiple songs to one artist, AND multiple artists to one song.&lt;br /&gt;
&lt;br /&gt;
The database contains custom events, called &amp;quot;triggers&amp;quot;, that are executed when e.g. an artist is assigned to a track. For that example, the trigger will automatically increment the Artists table&#039;s Tracks counter field.&lt;br /&gt;
&lt;br /&gt;
== Database tables ==&lt;br /&gt;
*[[Albums table|Albums]]: Contains all Albums and some Album specific info&lt;br /&gt;
*[[Artists table|Artists]]: Contains all Artists, AlbumArtists, Composers, Conductors and Lyricists with their track count&lt;br /&gt;
*[[ArtistsAlbums table|ArtistsAlbums]]: Specifies the relation between an Album and its AlbumArtist(s)&lt;br /&gt;
*[[ArtistsSongs table|ArtistsSongs]]: Specifies the relation between a Song and its Artist(s), Composer(s), Conductor(s) and Lyricist(s)&lt;br /&gt;
*[[Covers table|Covers]]&lt;br /&gt;
*[[DBInfo table|DBInfo]]&lt;br /&gt;
*[[DeviceFilters table|DeviceFilters]]&lt;br /&gt;
*[[DeviceTracks table|DeviceTracks]]&lt;br /&gt;
*[[Devices table|Devices]]&lt;br /&gt;
*[[Filters table|Filters]]: Contains all Filters/Views configured in MM&lt;br /&gt;
*[[Folders table|Folders]]&lt;br /&gt;
*[[FoldersHier table|FoldersHier]]&lt;br /&gt;
*[[Genres table|Genres]]: Contains all Genres with track Count&lt;br /&gt;
*[[GenresSongs table|GenresSongs]]: Specifies the relation between a Song and its Genre(s)&lt;br /&gt;
*[[LastTreePath table|LastTreePath]]&lt;br /&gt;
*[[Lists table|Lists]]: Contains all Classifications and their sort order in the tree&lt;br /&gt;
*[[ListsSongs table|ListsSongs]]: Specifies the relation between a Song and its various Classifications&lt;br /&gt;
*[[Medias table|Medias]]&lt;br /&gt;
*[[OrganizeRules table|OrganizeRules]]&lt;br /&gt;
*[[PathProcessing table|PathProcessing]]&lt;br /&gt;
*[[Played table|Played]]&lt;br /&gt;
*[[PlaylistSongs table|PlaylistSongs]] Specifies the relation between a Song and what &#039;&#039;&#039;Static Playlist(s)&#039;&#039;&#039; it appears in&lt;br /&gt;
*[[Playlists table|Playlists]] : Contains all Static Playlists and Auto-Playlists&lt;br /&gt;
*[[PodcastDirs table|PodcastDirs]]&lt;br /&gt;
*[[PodcastEpisodes table|PodcastEpisodes]] Specifies the relation between a Song and a Podcast&lt;br /&gt;
*[[Podcasts table|Podcasts]] Specifies podcast subscriptions &lt;br /&gt;
*[[Songs table|Songs]] : Contains all songs with all their properties&lt;br /&gt;
*[[SynchAlbum table|SynchAlbum]]&lt;br /&gt;
*[[SynchArtist table|SynchArtist]]&lt;br /&gt;
*[[SynchLocation table|SynchLocation]]&lt;br /&gt;
*[[SynchPlaylist table|SynchPlaylist]]&lt;br /&gt;
*[[SynchPodcast table|SynchPodcast]]&lt;br /&gt;
&lt;br /&gt;
== Database structure == &lt;br /&gt;
&#039;&#039;(only most important tables)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Image:MM3DBStructure.PNG|center|650px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==MediaMonkey v2.5 and lower==&lt;br /&gt;
&lt;br /&gt;
===Database structure===&lt;br /&gt;
[[Image:DatabaseRelationsMM2.gif|center|650px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===AddSongInfo===&lt;br /&gt;
&#039;&#039;Value field is &amp;quot;TextData&amp;quot;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;DataType&#039;&#039;&#039;&lt;br /&gt;
{| border=&amp;quot;2&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Value || AIF Code || Description&lt;br /&gt;
|-&lt;br /&gt;
| 100 || AIF_COPYRIGHT || Copyright&lt;br /&gt;
|-&lt;br /&gt;
| 101 || AIF_PUBLISHER || Publisher&lt;br /&gt;
|-&lt;br /&gt;
| 102 || AIF_ENCODER || Encoder&lt;br /&gt;
|-&lt;br /&gt;
| 103 || AIF_ENCODEDBY || Encoded By&lt;br /&gt;
|-&lt;br /&gt;
| 200 || AIF_LYRICIST || Lyricist&lt;br /&gt;
|-&lt;br /&gt;
| 201 || AIF_BAND || Band&lt;br /&gt;
|-&lt;br /&gt;
| 202 || AIF_CONDUCTOR || Conductor&lt;br /&gt;
|-&lt;br /&gt;
| 203 || AIF_REMIXER || Remixer&lt;br /&gt;
|-&lt;br /&gt;
| 204 || AIF_INVOLVEDPEOPLE || Involved People&lt;br /&gt;
|-&lt;br /&gt;
| 205 || AIF_MUSICCOMPOSER || (See note)&lt;br /&gt;
|-&lt;br /&gt;
| 300 || AIF_ORIGTITLE || Original Title&lt;br /&gt;
|-&lt;br /&gt;
| 301 || AIF_ORIGARTIST || Original Artist&lt;br /&gt;
|-&lt;br /&gt;
| 302 || AIF_ORIGLYRICIST || Original Lyricist&lt;br /&gt;
|-&lt;br /&gt;
| 400 || AIF_GROUPDESC || &lt;br /&gt;
|-&lt;br /&gt;
| 401 || AIF_SUBTITLE || &lt;br /&gt;
|-&lt;br /&gt;
| 402 || AIF_ISRC || &lt;br /&gt;
|-&lt;br /&gt;
| 500 || AIF_INITIALKEY || &lt;br /&gt;
|-&lt;br /&gt;
| 501 || AIF_LANGUAGE || &lt;br /&gt;
|-&lt;br /&gt;
| 502 || AIF_MEDIATYPE || &lt;br /&gt;
|-&lt;br /&gt;
| 503 || AIF_RATINGSTRING || &lt;br /&gt;
|-&lt;br /&gt;
| 1000 || AIF_WEB_COMMERCIAL || &lt;br /&gt;
|-&lt;br /&gt;
| 1001 || AIF_WEB_COPYRIGHT || &lt;br /&gt;
|-&lt;br /&gt;
| 1002 || AIF_WEB_FILEPAGE || &lt;br /&gt;
|-&lt;br /&gt;
| 1003 || AIF_WEB_ARTIST || &lt;br /&gt;
|-&lt;br /&gt;
| 1004 || AIF_WEB_SOURCE || &lt;br /&gt;
|-&lt;br /&gt;
| 1005 || AIF_WEB_RADIO || &lt;br /&gt;
|-&lt;br /&gt;
| 1006 || AIF_WEB_PAYMENT || &lt;br /&gt;
|-&lt;br /&gt;
| 1007 || AIF_WEB_PUBLISHER || &lt;br /&gt;
|-&lt;br /&gt;
| 1100 || AIF_WEB_USER || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Note: Apparently, the value for the composer is stored in the Author field of the Songs table rather than in the AddSongInfo table under MediaMonkey 2.5. The situation in other versions is unknown.&lt;br /&gt;
&lt;br /&gt;
===AddSongInfoInt===&lt;br /&gt;
&#039;&#039;Value field is &amp;quot;IntData&amp;quot;&#039;&#039; (linked to Lists.ID)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;DataType&#039;&#039;&#039; (partially linked to Lists.IDListType)&lt;br /&gt;
{| border=&amp;quot;2&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Value || AIF Code || Description&lt;br /&gt;
|-&lt;br /&gt;
| 10000 || AIF_ORIGYEAR || Original Year&lt;br /&gt;
|-&lt;br /&gt;
| 10101 || AIF_TEMPO || Tempo&lt;br /&gt;
|-&lt;br /&gt;
| 10102 || AIF_MOOD || Mood&lt;br /&gt;
|-&lt;br /&gt;
| 10103 || AIF_OCCASION || Occasion&lt;br /&gt;
|-&lt;br /&gt;
| 10104 || AIF_QUALITY || Quality&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Memos===&lt;br /&gt;
&#039;&#039;Value field is &amp;quot;MemoText&amp;quot;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;MemoType&#039;&#039;&#039;&lt;br /&gt;
{| border=&amp;quot;2&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Value || AIF Code || Description&lt;br /&gt;
|-&lt;br /&gt;
| 20000 || AIF_LYRICS || Lyrics&lt;br /&gt;
|-&lt;br /&gt;
| 20001 || AIF_COMMENT || Comment&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Talk:Moving_MM_to_a_new_computer&amp;diff=3983</id>
		<title>Talk:Moving MM to a new computer</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Talk:Moving_MM_to_a_new_computer&amp;diff=3983"/>
		<updated>2008-04-19T18:59:36Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Great article. It might be wise to make a note somewhere to disable any startup scan options if the user decides to move the MM installation and mediamonkey.ini files. A startup scan run before updating the device id&#039;s will add a bunch of dupes. But I am not sure where would be the best spot to mention it.--[[User:Teknojnky|Teknojnky]] 14:59, 19 April 2008 (EDT)&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Talk:ISDBDatabase::BeginTransaction&amp;diff=3980</id>
		<title>Talk:ISDBDatabase::BeginTransaction</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Talk:ISDBDatabase::BeginTransaction&amp;diff=3980"/>
		<updated>2008-04-18T05:07:49Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;When/why should this be used, and even more importantly, when should it NOT be used?&lt;br /&gt;
&lt;br /&gt;
What happens if you are unable to &#039;commit&#039; the transaction (due to script error or crash, etc) and MM keeps running? or when the whole app crashes?&lt;br /&gt;
&lt;br /&gt;
: From what I&#039;ve read on the forum you should use it when you want to do different database queries at once (for better performance). If you have only one query at a time to do, you certainly don&#039;t need this. If the transaction isn&#039;t committed (e.g. due to MM crash), then the query won&#039;t be executed (I think). When the script crashes, the queries will only be committed when another action does the commit. However, in practice there will always first be a normal query, or a BeginTransaction command, which will probably void the command you started in your own script, or even result in an error. Anyone else has more info on this? -- [[User:Steegy|Steegy]] 15:28, 15 April 2008 (EDT)&lt;br /&gt;
&lt;br /&gt;
:: here is an example of how I&#039;ve started using transaction/commit&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;  &lt;br /&gt;
  SDB.Database.Commit&lt;br /&gt;
  SDB.Database.BeginTransaction&lt;br /&gt;
  Set Iter = SDB.Database.OpenSQL(Qry)&lt;br /&gt;
  SDB.ProcessMessages&lt;br /&gt;
  Do While NOT Iter.EOF&lt;br /&gt;
    &#039; do whatever processing you need to do&lt;br /&gt;
    Iter.Next&lt;br /&gt;
    SDB.ProcessMessages&lt;br /&gt;
  Loop&lt;br /&gt;
  SDB.Database.Commit&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:: I do this to avoid those sql errors &#039;can not open tranaction while another is in progress&#039; or whatever it was. I commit any pending transactions, open my transaction, then commmit it after the loop. Note however, I am not really making database changes, but I think the above is sequence is even more important for when doing actual db updates.&lt;br /&gt;
&lt;br /&gt;
:: I don&#039;t know if the above is the right way or not, but it seems to prevent the transaction errors and I have not seen any evidence it hurts anything. It seems to let multiple scripts and/or tag updates happen together without causing errors. --[[User:Teknojnky|Teknojnky]] 13:47, 17 April 2008 (EDT)&lt;br /&gt;
&lt;br /&gt;
::: Notice though that calling SDB.ProcessMessages too much (certainly in a fast small loop) can do more harm than good. If you *really really* need to use it in a fast loop, then only do it each X iterations (e.g. by using a counter and a conditional SDB.ProcessMessages that also resets your counter).&lt;br /&gt;
&amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
Dim Cnt : Cnt = 0&lt;br /&gt;
Do While SomethingIsTrue&lt;br /&gt;
    &#039; do whatever short processing you need to do&lt;br /&gt;
    If Cnt = 300 Then&lt;br /&gt;
        SDB.ProcessMessages&lt;br /&gt;
        Cnt = 0&lt;br /&gt;
    Else&lt;br /&gt;
        Cnt = Cnt + 1&lt;br /&gt;
    End If&lt;br /&gt;
Loop&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
That way (depending on X), SDB.ProcessMessages is only called e.g. each 500 ms instead of each 10 ms. -- [[User:Steegy|Steegy]] 19:12, 17 April 2008 (EDT)&lt;br /&gt;
&lt;br /&gt;
:::: Hmm, I am a big advocate of plenty of SDB.ProcessMessages, and while this may slow down the script somewhat, it keeps the UI and other tasks moving as smoothly as possible. This is really evident with the spectrum displays, without SDB.ProcessMessages, the display freezes and/or gets really jerky. I consider MM like how windows 3.1 was, in that it is a &#039;cooperative&#039; multi-tasking system instead of a &#039;premptive&#039; one.. ProcMess gives control back to allow other processing making scripts appear to run much smoother. I do agree that you don&#039;t need or want them everywhere, but they are particularly effective in loops and near queries (which also freeze up the ui, but can&#039;t do much about that other than giving ProcMess a chance to process anything that got blocked during the query).&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Talk:ISDBDatabase::BeginTransaction&amp;diff=3976</id>
		<title>Talk:ISDBDatabase::BeginTransaction</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Talk:ISDBDatabase::BeginTransaction&amp;diff=3976"/>
		<updated>2008-04-17T17:47:27Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;When/why should this be used, and even more importantly, when should it NOT be used?&lt;br /&gt;
&lt;br /&gt;
What happens if you are unable to &#039;commit&#039; the transaction (due to script error or crash, etc) and MM keeps running? or when the whole app crashes?&lt;br /&gt;
&lt;br /&gt;
: From what I&#039;ve read on the forum you should use it when you want to do different database queries at once (for better performance). If you have only one query at a time to do, you certainly don&#039;t need this. If the transaction isn&#039;t committed (e.g. due to MM crash), then the query won&#039;t be executed (I think). When the script crashes, the queries will only be committed when another action does the commit. However, in practice there will always first be a normal query, or a BeginTransaction command, which will probably void the command you started in your own script, or even result in an error. Anyone else has more info on this? -- [[User:Steegy|Steegy]] 15:28, 15 April 2008 (EDT)&lt;br /&gt;
&lt;br /&gt;
:: here is an example of how I&#039;ve started using transaction/commit&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;  &lt;br /&gt;
  SDB.Database.Commit&lt;br /&gt;
  SDB.Database.BeginTransaction&lt;br /&gt;
  Set Iter = SDB.Database.OpenSQL(Qry)&lt;br /&gt;
  SDB.ProcessMessages&lt;br /&gt;
  Do While NOT Iter.EOF&lt;br /&gt;
    &#039; do whatever processing you need to do&lt;br /&gt;
    Iter.Next&lt;br /&gt;
    SDB.ProcessMessages&lt;br /&gt;
  Loop&lt;br /&gt;
  SDB.Database.Commit&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:: I do this to avoid those sql errors &#039;can not open tranaction while another is in progress&#039; or whatever it was. I commit any pending transactions, open my transaction, then commmit it after the loop. Note however, I am not really making database changes, but I think the above is sequence is even more important for when doing actual db updates.&lt;br /&gt;
&lt;br /&gt;
:: I don&#039;t know if the above is the right way or not, but it seems to prevent the transaction errors and I have not seen any evidence it hurts anything. It seems to let multiple scripts and/or tag updates happen together without causing errors. --[[User:Teknojnky|Teknojnky]] 13:47, 17 April 2008 (EDT)&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Last.FM_Scrobbler_Plugin_Info&amp;diff=3804</id>
		<title>Last.FM Scrobbler Plugin Info</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Last.FM_Scrobbler_Plugin_Info&amp;diff=3804"/>
		<updated>2008-04-08T15:28:07Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: /* About Last.FM Scrobbler Support */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= About Last.FM Scrobbler Support =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mediamonkey supports the Last.FM &#039;scrobbler&#039; plugins to submit played tracks within MediaMonkey itself (portable player sync&#039;d played tracks are not supported).&lt;br /&gt;
&lt;br /&gt;
Currently there are 3 main plugins available, only ONE of which should reside in the &amp;quot;&amp;lt;MediaMonkey program folder&amp;gt;\Plugins&amp;quot; folder.&lt;br /&gt;
&lt;br /&gt;
== Version 1: gen_audioscrobbler.dll (v 1.1.10) ==&lt;br /&gt;
&lt;br /&gt;
This is the last &#039;old style&#039; plugin for winamp 2 compatible clients. This plugin uses a config panel normally accessed via Tool &amp;gt; Options &amp;gt; Player &amp;gt; General Plugins &amp;gt; Plugin Config.&lt;br /&gt;
&lt;br /&gt;
You can download this from the links @ http://www.last.fm/forum/34905/_/135053&lt;br /&gt;
&lt;br /&gt;
Occasionally the config panel will get hidden behind the MM app window, if the MM window is made smaller you can usually then click on the config panel to bring it to the front where you can change and save your settings. Alternative way is to use ALT+TAB to bring back focus to config panel.&lt;br /&gt;
&lt;br /&gt;
== Version 2: gen_wa2_scrobbler.dll (v 2.x.x) ==&lt;br /&gt;
&lt;br /&gt;
This is the offical current style of last.fm plugins. This plugin utilizes a &#039;tray application&#039; which gives some additional metadata info and includes the last.fm radio player for streaming radio.&lt;br /&gt;
&lt;br /&gt;
The last compatible version for v2 plugins is [http://static.last.fm/plugins/ass/WinampPluginSetup_2.0.45.0.exe 2.0.45], newer plugins are currently incompatible with MediaMonkey.&lt;br /&gt;
&lt;br /&gt;
To configure the version 2 style, you must open the tray application and configure through it&#039;s options. The plugin does not have any self configure, nor will it function without the tray application installed and running (normally the plugin will start the tray app automatically).&lt;br /&gt;
&lt;br /&gt;
The latest official plugins are always available at Last.FM http://www.last.fm/download/ keeping in mind that while the latest tray app should work, plugins newer than [http://static.last.fm/plugins/ass/WinampPluginSetup_2.0.45.0.exe 2.0.45] will not.&lt;br /&gt;
&lt;br /&gt;
To install, make sure you have the [http://www.last.fm/download/ TRAY APP] already installed, then run the plugin installer  [http://static.last.fm/plugins/ass/WinampPluginSetup_2.0.45.0.exe 2.0.45], simply point the installer to the mediamonkey folder instead of the winamp folder.&lt;br /&gt;
&lt;br /&gt;
== Version 3: gen_LastFMScrobbler.dll [http://www.mediamonkey.com/forum/viewtopic.php?t=26404 Peke&#039;s Last.FM Scrobbler Plugin] (beta) ==&lt;br /&gt;
&lt;br /&gt;
See forum thread for details and download&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Talk:Main_Page&amp;diff=3620</id>
		<title>Talk:Main Page</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Talk:Main_Page&amp;diff=3620"/>
		<updated>2008-03-28T19:35:43Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I see this page is locked, what is the best way to go abou getting a link added? I don&#039;t have anything I want to link at this time, I am just curious. -- [[User:Teknojnky|Teknojnky]] 12:52, 28 August 2007 (EDT)&lt;br /&gt;
: You can ask here (on the talk page) to add some link or to temporarily unprotect the page (e.g. for bigger changes). Of course keep in mind the reason why the page (as façade of the wiki) is protected. -- [[User:Steegy|Steegy]] 07:07, 31 August 2007 (EDT)&lt;br /&gt;
&lt;br /&gt;
I refreshed the main page, mainly to draw a clear line between users content (which for now isn&#039;t really existing) and content for &amp;quot;developers&amp;quot; (scripters, skinners, translators, ...). If you don&#039;t really like the layout or have suggestions, feel free to post here. -- [[User:Steegy|Steegy]] 21:18, 7 September 2007 (EDT)&lt;br /&gt;
&lt;br /&gt;
: I&#039;d like to see a link to the [[MediaMonkey_Automation_objects]] page directly in either the navigation block or the toolbox block, so its easier to navigate to the objects reference list. --[[User:Teknojnky|Teknojnky]] 13:54, 6 February 2008 (EST)&lt;br /&gt;
&lt;br /&gt;
I&#039;ve significantly updated the Intro for New Users section.  It seemed silly that the only way to find skins was to navigate under the &amp;quot;Developers&amp;quot; section for skinning.  I think it may be even better to put a direct link to skins for MM 3.0 and higher on the front page, but this change can do for now as I don&#039;t want to alter the front page without an opinion from some other users.  Let me know what you think about this. --[[User:Nohitter151|Steve]] 00:20, 5 March 2008 (EST)&lt;br /&gt;
&lt;br /&gt;
: Really a great job you guys have been doing!&lt;br /&gt;
: @Teknojnky: I&#039;ve been having the same issue (and I guess were not the only 2) so I added 3 reference links.&lt;br /&gt;
: @Steve/Nohitter151: sorry but I couldn&#039;t wait :p (I simply forgot to add a Skins link the first time and to split it from the developers skin page). -- [[User:Steegy|Steegy]] 16:34, 5 March 2008 (EST)&lt;br /&gt;
&lt;br /&gt;
: Not a problem Steegy, I&#039;m very happy with the front page now!  --[[User:Nohitter151|Steve]] 18:34, 5 March 2008 (EST)&lt;br /&gt;
&lt;br /&gt;
: Yea page looks great, thanks Steegy! --[[User:Teknojnky|Teknojnky]] 15:35, 28 March 2008 (EDT)&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Portable_Mediamonkey&amp;diff=3606</id>
		<title>Portable Mediamonkey</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Portable_Mediamonkey&amp;diff=3606"/>
		<updated>2008-03-26T22:28:45Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is an overview of how to setup mediamonkey for usb stick, external drive, or shared network install.&lt;br /&gt;
&lt;br /&gt;
First, read the FAQ&#039;s for [http://www.mediamonkey.com/support/index.php?_m=knowledgebase&amp;amp;_a=viewarticle&amp;amp;kbarticleid=49&amp;amp;nav=0,2 Shared Settings] and [http://www.mediamonkey.com/support/index.php?_m=knowledgebase&amp;amp;_a=viewarticle&amp;amp;kbarticleid=46&amp;amp;nav=0,2 changing the location of the library database].&lt;br /&gt;
&lt;br /&gt;
These 2 articles provide the background necessary to understand what needs to be done.&lt;br /&gt;
&lt;br /&gt;
Once you understand the FAQ&#039;s, then you must also understand that the below requires that your device always have the same drive letter or UNC network path if you are using a NAS or server. You can manually assign a letter in the windows control panel &amp;gt; computer management &amp;gt; disk mananger&lt;br /&gt;
&lt;br /&gt;
The other thing you should understand, is that mediamonkey also stores some settings in the registry. These settings are generally the UI settings/positions and &#039;gold&#039; key if you have one, among other stuff. These settings will not be portable between computers, but normally you won&#039;t need them to be once your all set up.&lt;br /&gt;
&lt;br /&gt;
And finally, you should understand that both articles can be done independantly. You can have shared settings while still having independent databases, or you can have independant settings while having a shared database.&lt;br /&gt;
&lt;br /&gt;
What we are going to do, is combine both functions so that both settings and library are stored in one location... your usb stick/external drive/network folder.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Move your existing Mediamonkey program folder or install a fresh copy to your destination device (usb stick, ext drive, network share)&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Move&#039;&#039;&#039; your mediamonkey.ini from the [http://www.mediamonkey.com/support/index.php?_m=knowledgebase&amp;amp;_a=viewarticle&amp;amp;kbarticleid=17&amp;amp;nav=0,2 default user location] to the program location you moved or installed MM to on your destination device. Your user mediamonkey.ini should reside in the same location as the mediamonkey.exe (rename or overwrite any existing mediamonkey.ini in the program folder)&lt;br /&gt;
&lt;br /&gt;
* To have a shared database, you must now edit the mediamonkey.ini and [http://www.mediamonkey.com/support/index.php?_m=knowledgebase&amp;amp;_a=viewarticle&amp;amp;kbarticleid=46&amp;amp;nav=0,2 follow the directions in the faq] by adding the appropriate entry and path. You can let MM create a new database there or [http://www.mediamonkey.com/support/index.php?_m=knowledgebase&amp;amp;_a=viewarticle&amp;amp;kbarticleid=17&amp;amp;nav=0,2 move your existing database] to the new location on the destination device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now, you should have a MM install on your device, your mediamonkey folder should contain your existing mediamonkey.ini, and your mediamonkey.in should point to your database also located somewhere on the device.&lt;br /&gt;
&lt;br /&gt;
If your music is also on the device, then you should be able to access everything as one package. If your music is located elsewhere, then you must also have access to that location in order to play the music from that location.&lt;br /&gt;
&lt;br /&gt;
For example, I have all of my music, my mediamonkey program folder, mediamonkey.ini and mm3.db all located on my external drive J: and I can run MM and access my music from there as long as I make sure that the drive always gets J: when connected to any computer.&lt;br /&gt;
&lt;br /&gt;
Hopefully this information is helpful in getting your portable monkey working.&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Tips_%26_Tricks&amp;diff=3605</id>
		<title>Tips &amp; Tricks</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Tips_%26_Tricks&amp;diff=3605"/>
		<updated>2008-03-26T22:23:14Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==About Tips &amp;amp; Tricks==&lt;br /&gt;
This page is for tips that make things easy or that are not known by new users.&lt;br /&gt;
&lt;br /&gt;
==Portable Mediamonkey==&lt;br /&gt;
[http://www.mediamonkey.com/wiki/index.php/Portable_Mediamonkey Take your Mediamonkey with you]&lt;br /&gt;
&lt;br /&gt;
==Skin/GUI==&lt;br /&gt;
[[ Icons tips ]]&lt;br /&gt;
&amp;lt;br&amp;gt;[[ MISC... Tips ]]&lt;br /&gt;
&lt;br /&gt;
==Recording/Editing==&lt;br /&gt;
[[ Song Recording Tips ]] and Cdrom ripping&lt;br /&gt;
&amp;lt;br&amp;gt;[[ Song Editing Tips ]]&lt;br /&gt;
&lt;br /&gt;
==Hardware==&lt;br /&gt;
[[ System Hardware Tips]]&lt;br /&gt;
&lt;br /&gt;
==Miscellaneous==&lt;br /&gt;
[[Not So Frequently Asked Questions]]&lt;br /&gt;
&lt;br /&gt;
==Tagging/MediaMonkey Functionality==&lt;br /&gt;
[[ Using MusicBrainz for CD Lookup ]]&lt;br /&gt;
&amp;lt;br&amp;gt;[[Tagging Search Sites]]&lt;br /&gt;
&amp;lt;br&amp;gt;[[User Auto-Organize File Masks Examples]]&lt;br /&gt;
&lt;br /&gt;
==Portable devices==&lt;br /&gt;
[[Sync MediaMonkey with a Zune]]&lt;br /&gt;
&lt;br /&gt;
==User Pages==&lt;br /&gt;
More user-to-user information on these [[User pages]].&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Portable_Mediamonkey&amp;diff=3604</id>
		<title>Portable Mediamonkey</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Portable_Mediamonkey&amp;diff=3604"/>
		<updated>2008-03-26T22:18:14Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is an overview of how to setup mediamonkey for usb stick, external drive, or shared network install.&lt;br /&gt;
&lt;br /&gt;
First, read the FAQ&#039;s for [http://www.mediamonkey.com/support/index.php?_m=knowledgebase&amp;amp;_a=viewarticle&amp;amp;kbarticleid=49&amp;amp;nav=0,2 Shared Settings] and [http://www.mediamonkey.com/support/index.php?_m=knowledgebase&amp;amp;_a=viewarticle&amp;amp;kbarticleid=46&amp;amp;nav=0,2 changing the location of the library database].&lt;br /&gt;
&lt;br /&gt;
These 2 articles provide the background necessary to understand what needs to be done.&lt;br /&gt;
&lt;br /&gt;
Once you understand the FAQ&#039;s, then you must also understand that the below requires that your device always have the same drive letter. You can manually assign a letter in the windows control panel &amp;gt; computer management &amp;gt; disk mananger&lt;br /&gt;
&lt;br /&gt;
The other thing you should understand, is that mediamonkey also stores some settings in the registry. These settings are generally the UI settings/positions and &#039;gold&#039; key if you have one, among other stuff. These settings will not be portable between computers, but normally you won&#039;t need them to be once your all set up.&lt;br /&gt;
&lt;br /&gt;
And finally, you should understand that both articles can be done independantly. You can have shared settings while still having independent databases, or you can have independant settings while having a shared database.&lt;br /&gt;
&lt;br /&gt;
What we are going to do, is combine both functions so that both settings and library are stored in one location... your usb stick/external drive/network folder.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Move your existing Mediamonkey program folder or install a fresh copy to your destination device (usb stick, ext drive, network share)&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Move&#039;&#039;&#039; your mediamonkey.ini from the [http://www.mediamonkey.com/support/index.php?_m=knowledgebase&amp;amp;_a=viewarticle&amp;amp;kbarticleid=17&amp;amp;nav=0,2 default user location] to the program location you moved or installed MM to on your destination device. Your user mediamonkey.ini should reside in the same location as the mediamonkey.exe (rename or overwrite any existing mediamonkey.ini in the program folder)&lt;br /&gt;
&lt;br /&gt;
* To have a shared database, you must now edit the mediamonkey.ini and [http://www.mediamonkey.com/support/index.php?_m=knowledgebase&amp;amp;_a=viewarticle&amp;amp;kbarticleid=46&amp;amp;nav=0,2 follow the directions in the faq] by adding the appropriate entry and path. You can let MM create a new database there or [http://www.mediamonkey.com/support/index.php?_m=knowledgebase&amp;amp;_a=viewarticle&amp;amp;kbarticleid=17&amp;amp;nav=0,2 move your existing database] to the new location on the destination device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now, you should have a MM install on your device, your mediamonkey folder should contain your existing mediamonkey.ini, and your mediamonkey.in should point to your database also located somewhere on the device.&lt;br /&gt;
&lt;br /&gt;
If your music is also on the device, then you should be able to access everything as one package. If your music is located elsewhere, then you must also have access to that location in order to play the music from that location.&lt;br /&gt;
&lt;br /&gt;
For example, I have all of my music, my mediamonkey program folder, mediamonkey.ini and mm3.db all located on my external drive J: and I can run MM and access my music from there as long as I make sure that the drive always gets J: when connected to any computer.&lt;br /&gt;
&lt;br /&gt;
Hopefully this information is helpful in getting your portable monkey working.&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Portable_Mediamonkey&amp;diff=3603</id>
		<title>Portable Mediamonkey</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Portable_Mediamonkey&amp;diff=3603"/>
		<updated>2008-03-26T22:13:16Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is an overview of how to setup mediamonkey for usb stick, external drive, or shared network install.&lt;br /&gt;
&lt;br /&gt;
First, read the FAQ&#039;s for [http://www.mediamonkey.com/support/index.php?_m=knowledgebase&amp;amp;_a=viewarticle&amp;amp;kbarticleid=49&amp;amp;nav=0,2 Shared Settings] and [http://www.mediamonkey.com/support/index.php?_m=knowledgebase&amp;amp;_a=viewarticle&amp;amp;kbarticleid=46&amp;amp;nav=0,2 changing the location of the library database].&lt;br /&gt;
&lt;br /&gt;
These 2 articles provide the background necessary to understand what needs to be done.&lt;br /&gt;
&lt;br /&gt;
Once you understand the FAQ&#039;s, then you must also understand that the below requires that your device always have the same drive letter. You can manually assign a letter in the windows control panel &amp;gt; computer management &amp;gt; disk mananger&lt;br /&gt;
&lt;br /&gt;
The other thing you should understand, is that mediamonkey also stores some settings in the registry. These settings are generally the UI settings/positions and &#039;gold&#039; key if you have one, among other stuff. These settings will not be portable between computers, but normally you won&#039;t need them to be once your all set up.&lt;br /&gt;
&lt;br /&gt;
And finally, you should understand that both articles can be done independantly. You can have shared settings while still having independent databases, or you can have independant settings while having a shared database.&lt;br /&gt;
&lt;br /&gt;
What we are going to do, is combine both functions so that both settings and library are stored in one location... your usb stick/external drive/network folder.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Move your existing Mediamonkey program folder or install a fresh copy to your destination device (usb stick, ext drive, network share)&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Move&#039;&#039;&#039; your mediamonkey.ini from the [http://www.mediamonkey.com/support/index.php?_m=knowledgebase&amp;amp;_a=viewarticle&amp;amp;kbarticleid=17&amp;amp;nav=0,2 default user location] to the program location you moved or installed MM to on your destination device. Your user mediamonkey.ini should reside in the same location as the mediamonkey.exe (rename or overwrite any existing mediamonkey.ini in the program folder)&lt;br /&gt;
&lt;br /&gt;
* To have a shared database, you must now edit the mediamonkey.ini and [http://www.mediamonkey.com/support/index.php?_m=knowledgebase&amp;amp;_a=viewarticle&amp;amp;kbarticleid=46&amp;amp;nav=0,2 follow the directions in the faq] by adding the appropriate entry and path. You can create a new database or move your existing database to the new location on the destination device.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now, you should have a MM install on your device, your mediamonkey folder should contain your existing mediamonkey.ini, and your mediamonkey.in should point to your database also located somewhere on the device.&lt;br /&gt;
&lt;br /&gt;
If your music is also on the device, then you should be able to access everything as one package. If your music is located elsewhere, then you must also have access to that location in order to play the music from that location.&lt;br /&gt;
&lt;br /&gt;
For example, I have all of my music, my mediamonkey program folder, mediamonkey.ini and mm3.db all located on my external drive J: and I can run MM and access my music from there as long as I make sure that the drive always gets J: when connected to any computer.&lt;br /&gt;
&lt;br /&gt;
Hopefully this information is helpful in getting your portable monkey working.&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=User:Teknojnky&amp;diff=3602</id>
		<title>User:Teknojnky</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=User:Teknojnky&amp;diff=3602"/>
		<updated>2008-03-26T21:51:39Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hi!&lt;br /&gt;
&lt;br /&gt;
[[User Wishlists and Feature Requests]]&lt;br /&gt;
&lt;br /&gt;
[[Last.FM Scrobbler Plugin Info]]&lt;br /&gt;
&lt;br /&gt;
[[ActiveX Warnings]]&lt;br /&gt;
&lt;br /&gt;
[[Portable Mediamonkey]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Current Auto-Organize mask&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;$left(\Music\$if(&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=various,_&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=techno,_&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=soundtrack,_&amp;lt;Album Artist&amp;gt;,&amp;lt;Album Artist@1&amp;gt;\&amp;lt;Album Artist&amp;gt;))),&amp;lt;Artist@1&amp;gt;\&amp;lt;Artist&amp;gt;)\$if(&amp;lt;Album&amp;gt;,$if(&amp;lt;Year&amp;gt;,&amp;lt;Year&amp;gt; - )&amp;lt;Album&amp;gt;)\$if(&amp;lt;track#&amp;gt;,&amp;lt;track#&amp;gt; - )&amp;lt;Artist&amp;gt; - &amp;lt;Title&amp;gt;,240)&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Previous Auto-Organize mask&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;$left(\Music\$if(&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=&amp;lt;Artist&amp;gt;,&amp;lt;Artist@1&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=various,_Various\$if(&amp;lt;Year&amp;gt;,&amp;lt;Year&amp;gt; - )&amp;lt;Album&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=soundtrack,_Soundtrack\$if(&amp;lt;Year&amp;gt;,)&amp;lt;Album&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=Techno,_Techno\$if(&amp;lt;Year&amp;gt;,&amp;lt;Year&amp;gt; - )&amp;lt;Album&amp;gt;,&amp;lt;Album Artist@1&amp;gt;\&amp;lt;Album Artist&amp;gt;)))),&amp;lt;Artist@1&amp;gt;)\$if(&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=&amp;lt;Artist&amp;gt;,&amp;lt;Artist&amp;gt;\,),&amp;lt;Artist&amp;gt;\)\$if(&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=&amp;lt;Artist&amp;gt;,&amp;lt;Artist&amp;gt;,&amp;lt;Album Artist&amp;gt;),&amp;lt;Artist&amp;gt;)$if(&amp;lt;Album&amp;gt;,$if(&amp;lt;Year&amp;gt;, - &amp;lt;Year&amp;gt;) - &amp;lt;Album&amp;gt;$if(&amp;lt;Track#&amp;gt;, - &amp;lt;Track#&amp;gt;,),)$if(&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=&amp;lt;Artist&amp;gt;, - &amp;lt;Title&amp;gt;, - &amp;lt;Artist&amp;gt; - &amp;lt;Title&amp;gt;), - &amp;lt;Title&amp;gt;),240)&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Database_Structure&amp;diff=3550</id>
		<title>Database Structure</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Database_Structure&amp;diff=3550"/>
		<updated>2008-03-22T22:01:08Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: /* Database location */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DatabaseTablesList}}&lt;br /&gt;
&lt;br /&gt;
==MediaMonkey 3.0==&lt;br /&gt;
&lt;br /&gt;
== Database type ==&lt;br /&gt;
[http://www.sqlite.org SQLite] version 3&lt;br /&gt;
* Encoding: UTF-16le&lt;br /&gt;
* Text collate IUNICODE (except where indicated with a (*))&lt;br /&gt;
&lt;br /&gt;
== Additions to SQLite ==&lt;br /&gt;
Check out [http://www.sqlite.org/docs.html SQLite documentation]. MediaMonkey adds some more functions that you can use in SQL queries:&lt;br /&gt;
&lt;br /&gt;
=== Collations ===&lt;br /&gt;
* IUNICODE - Unicode language neutral case insensitive ([http://www.mediamonkey.com/forum/viewtopic.php?p=127635#127635 Post] by Jiri with more detail)&lt;br /&gt;
* NUMERICSTRING - Natural song order respecting numbers stored as strings. Useful for Track# and Disc# fields.&lt;br /&gt;
&lt;br /&gt;
=== Functions ===&lt;br /&gt;
* hassubfolders(string) - Used internally by MediaMonkey.&lt;br /&gt;
* instr(string1, string2) - Returns 1-based index of the first occurrence of string2 in string1, if not found 0 is returned. Case sensitive.&lt;br /&gt;
* like(string1, string2) - Used to replace internal SQLite LIKE operator with one that supports Unicode strings.&lt;br /&gt;
* nextpathpart(string) - Used internally by MediaMonkey.&lt;br /&gt;
* sin(number) - Mathematical sinus function.&lt;br /&gt;
* stricompw(string1, string2) - Compares two Unicode strings, case insensitive.&lt;br /&gt;
* upperw(string) - Unicode string upper case.&lt;br /&gt;
&lt;br /&gt;
== Default Mediamonkey 3 Database location ==&lt;br /&gt;
&#039;&#039;&#039;Windows XP:&#039;&#039;&#039; C:\Documents and Settings\&amp;lt;USERNAME&amp;gt;\Local Settings\Application Data\MediaMonkey\MM.DB&lt;br /&gt;
&amp;lt;br&amp;gt;&#039;&#039;&#039;Windows Vista:&#039;&#039;&#039; C:\Users\&amp;lt;USERNAME&amp;gt;\AppData\Local\MediaMonkey\MM.DB&lt;br /&gt;
&lt;br /&gt;
== Default Mediamonkey 2 Database location ==&lt;br /&gt;
My Documents\My Music\Mediamonkey\Mediamonkey.mdb&lt;br /&gt;
&lt;br /&gt;
== Used data types ==&lt;br /&gt;
&#039;&#039;&#039;INTEGER&#039;&#039;&#039; The value is a signed integer, stored in 1, 2, 3, 4, 6, or 8 bytes depending on the magnitude of the value.&lt;br /&gt;
&amp;lt;br&amp;gt;&#039;&#039;&#039;REAL&#039;&#039;&#039; The value is a floating point value, stored as an 8-byte IEEE floating point number.&lt;br /&gt;
&amp;lt;br&amp;gt;&#039;&#039;&#039;TEXT&#039;&#039;&#039; The value is a text string, stored using the database encoding (UTF-16-LE).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Structure explanation ==&lt;br /&gt;
The most important table is the &#039;&#039;Songs&#039;&#039; table, which is the starting point for all song-specific info. To allow rapid requests, most of the information is present in the table itself, e.g. the Artist name is spelled out.&lt;br /&gt;
The link between table Songs and other tables like Artists, Albums, ... happens with intermediary tables, e.g. ArtistsSongs. This allows us to assign multiple songs to one artist, AND multiple artists to one song.&lt;br /&gt;
&lt;br /&gt;
The database contains custom events, called &amp;quot;triggers&amp;quot;, that are executed when e.g. an artist is assigned to a track. For that example, the trigger will automatically increment the Artists table&#039;s Tracks counter field.&lt;br /&gt;
&lt;br /&gt;
== Database tables ==&lt;br /&gt;
*[[Albums table|Albums]]: Contains all Albums and some Album specific info&lt;br /&gt;
*[[Artists table|Artists]]: Contains all Artists, AlbumArtists, Composers, Conductors and Lyricists with their track count&lt;br /&gt;
*[[ArtistsAlbums table|ArtistsAlbums]]: Specifies the relation between an Album and its AlbumArtist(s)&lt;br /&gt;
*[[ArtistsSongs table|ArtistsSongs]]: Specifies the relation between a Song and its Artist(s), Composer(s), Conductor(s) and Lyricist(s)&lt;br /&gt;
*[[Covers table|Covers]]&lt;br /&gt;
*[[DBInfo table|DBInfo]]&lt;br /&gt;
*[[DeviceFilters table|DeviceFilters]]&lt;br /&gt;
*[[DeviceTracks table|DeviceTracks]]&lt;br /&gt;
*[[Devices table|Devices]]&lt;br /&gt;
*[[Filters table|Filters]]: Contains all Filters/Views configured in MM&lt;br /&gt;
*[[Folders table|Folders]]&lt;br /&gt;
*[[FoldersHier table|FoldersHier]]&lt;br /&gt;
*[[Genres table|Genres]]: Contains all Genres with track Count&lt;br /&gt;
*[[GenresSongs table|GenresSongs]]: Specifies the relation between a Song and its Genre(s)&lt;br /&gt;
*[[LastTreePath table|LastTreePath]]&lt;br /&gt;
*[[Lists table|Lists]]: Contains all Classifications and their sort order in the tree&lt;br /&gt;
*[[ListsSongs table|ListsSongs]]: Specifies the relation between a Song and its various Classifications&lt;br /&gt;
*[[Medias table|Medias]]&lt;br /&gt;
*[[OrganizeRules table|OrganizeRules]]&lt;br /&gt;
*[[PathProcessing table|PathProcessing]]&lt;br /&gt;
*[[Played table|Played]]&lt;br /&gt;
*[[PlaylistSongs table|PlaylistSongs]] Specifies the relation between a Song and what &#039;&#039;&#039;Static Playlist(s)&#039;&#039;&#039; it appears in&lt;br /&gt;
*[[Playlists table|Playlists]] : Contains all Static Playlists and Auto-Playlists&lt;br /&gt;
*[[PodcastDirs table|PodcastDirs]]&lt;br /&gt;
*[[PodcastEpisodes table|PodcastEpisodes]] Specifies the relation between a Song and a Podcast&lt;br /&gt;
*[[Podcasts table|Podcasts]] Specifies podcast subscriptions &lt;br /&gt;
*[[Songs table|Songs]] : Contains all songs with all their properties&lt;br /&gt;
*[[SynchAlbum table|SynchAlbum]]&lt;br /&gt;
*[[SynchArtist table|SynchArtist]]&lt;br /&gt;
*[[SynchLocation table|SynchLocation]]&lt;br /&gt;
*[[SynchPlaylist table|SynchPlaylist]]&lt;br /&gt;
*[[SynchPodcast table|SynchPodcast]]&lt;br /&gt;
&lt;br /&gt;
== Database structure == &lt;br /&gt;
&#039;&#039;(only most important tables)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Image:MM3DBStructure.PNG|center|650px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==MediaMonkey v2.5 and lower==&lt;br /&gt;
&lt;br /&gt;
===Database structure===&lt;br /&gt;
[[Image:DatabaseRelationsMM2.gif|center|650px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===AddSongInfo===&lt;br /&gt;
&#039;&#039;Value field is &amp;quot;TextData&amp;quot;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;DataType&#039;&#039;&#039;&lt;br /&gt;
{| border=&amp;quot;2&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Value || AIF Code || Description&lt;br /&gt;
|-&lt;br /&gt;
| 100 || AIF_COPYRIGHT || Copyright&lt;br /&gt;
|-&lt;br /&gt;
| 101 || AIF_PUBLISHER || Publisher&lt;br /&gt;
|-&lt;br /&gt;
| 102 || AIF_ENCODER || Encoder&lt;br /&gt;
|-&lt;br /&gt;
| 103 || AIF_ENCODEDBY || Encoded By&lt;br /&gt;
|-&lt;br /&gt;
| 200 || AIF_LYRICIST || Lyricist&lt;br /&gt;
|-&lt;br /&gt;
| 201 || AIF_BAND || Band&lt;br /&gt;
|-&lt;br /&gt;
| 202 || AIF_CONDUCTOR || Conductor&lt;br /&gt;
|-&lt;br /&gt;
| 203 || AIF_REMIXER || Remixer&lt;br /&gt;
|-&lt;br /&gt;
| 204 || AIF_INVOLVEDPEOPLE || Involved People&lt;br /&gt;
|-&lt;br /&gt;
| 205 || AIF_MUSICCOMPOSER || (See note)&lt;br /&gt;
|-&lt;br /&gt;
| 300 || AIF_ORIGTITLE || Original Title&lt;br /&gt;
|-&lt;br /&gt;
| 301 || AIF_ORIGARTIST || Original Artist&lt;br /&gt;
|-&lt;br /&gt;
| 302 || AIF_ORIGLYRICIST || Original Lyricist&lt;br /&gt;
|-&lt;br /&gt;
| 400 || AIF_GROUPDESC || &lt;br /&gt;
|-&lt;br /&gt;
| 401 || AIF_SUBTITLE || &lt;br /&gt;
|-&lt;br /&gt;
| 402 || AIF_ISRC || &lt;br /&gt;
|-&lt;br /&gt;
| 500 || AIF_INITIALKEY || &lt;br /&gt;
|-&lt;br /&gt;
| 501 || AIF_LANGUAGE || &lt;br /&gt;
|-&lt;br /&gt;
| 502 || AIF_MEDIATYPE || &lt;br /&gt;
|-&lt;br /&gt;
| 503 || AIF_RATINGSTRING || &lt;br /&gt;
|-&lt;br /&gt;
| 1000 || AIF_WEB_COMMERCIAL || &lt;br /&gt;
|-&lt;br /&gt;
| 1001 || AIF_WEB_COPYRIGHT || &lt;br /&gt;
|-&lt;br /&gt;
| 1002 || AIF_WEB_FILEPAGE || &lt;br /&gt;
|-&lt;br /&gt;
| 1003 || AIF_WEB_ARTIST || &lt;br /&gt;
|-&lt;br /&gt;
| 1004 || AIF_WEB_SOURCE || &lt;br /&gt;
|-&lt;br /&gt;
| 1005 || AIF_WEB_RADIO || &lt;br /&gt;
|-&lt;br /&gt;
| 1006 || AIF_WEB_PAYMENT || &lt;br /&gt;
|-&lt;br /&gt;
| 1007 || AIF_WEB_PUBLISHER || &lt;br /&gt;
|-&lt;br /&gt;
| 1100 || AIF_WEB_USER || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Note: Apparently, the value for the composer is stored in the Author field of the Songs table rather than in the AddSongInfo table under MediaMonkey 2.5. The situation in other versions is unknown.&lt;br /&gt;
&lt;br /&gt;
===AddSongInfoInt===&lt;br /&gt;
&#039;&#039;Value field is &amp;quot;IntData&amp;quot;&#039;&#039; (linked to Lists.ID)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;DataType&#039;&#039;&#039; (partially linked to Lists.IDListType)&lt;br /&gt;
{| border=&amp;quot;2&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Value || AIF Code || Description&lt;br /&gt;
|-&lt;br /&gt;
| 10000 || AIF_ORIGYEAR || Original Year&lt;br /&gt;
|-&lt;br /&gt;
| 10101 || AIF_TEMPO || Tempo&lt;br /&gt;
|-&lt;br /&gt;
| 10102 || AIF_MOOD || Mood&lt;br /&gt;
|-&lt;br /&gt;
| 10103 || AIF_OCCASION || Occasion&lt;br /&gt;
|-&lt;br /&gt;
| 10104 || AIF_QUALITY || Quality&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Memos===&lt;br /&gt;
&#039;&#039;Value field is &amp;quot;MemoText&amp;quot;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;MemoType&#039;&#039;&#039;&lt;br /&gt;
{| border=&amp;quot;2&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Value || AIF Code || Description&lt;br /&gt;
|-&lt;br /&gt;
| 20000 || AIF_LYRICS || Lyrics&lt;br /&gt;
|-&lt;br /&gt;
| 20001 || AIF_COMMENT || Comment&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=User:Teknojnky&amp;diff=3502</id>
		<title>User:Teknojnky</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=User:Teknojnky&amp;diff=3502"/>
		<updated>2008-03-12T20:20:27Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hi!&lt;br /&gt;
&lt;br /&gt;
[[User Wishlists and Feature Requests]]&lt;br /&gt;
&lt;br /&gt;
[[Last.FM Scrobbler Plugin Info]]&lt;br /&gt;
&lt;br /&gt;
[[ActiveX Warnings]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Current Auto-Organize mask&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;$left(\Music\$if(&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=various,_&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=techno,_&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=soundtrack,_&amp;lt;Album Artist&amp;gt;,&amp;lt;Album Artist@1&amp;gt;\&amp;lt;Album Artist&amp;gt;))),&amp;lt;Artist@1&amp;gt;\&amp;lt;Artist&amp;gt;)\$if(&amp;lt;Album&amp;gt;,$if(&amp;lt;Year&amp;gt;,&amp;lt;Year&amp;gt; - )&amp;lt;Album&amp;gt;)\$if(&amp;lt;track#&amp;gt;,&amp;lt;track#&amp;gt; - )&amp;lt;Artist&amp;gt; - &amp;lt;Title&amp;gt;,240)&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Previous Auto-Organize mask&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;$left(\Music\$if(&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=&amp;lt;Artist&amp;gt;,&amp;lt;Artist@1&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=various,_Various\$if(&amp;lt;Year&amp;gt;,&amp;lt;Year&amp;gt; - )&amp;lt;Album&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=soundtrack,_Soundtrack\$if(&amp;lt;Year&amp;gt;,)&amp;lt;Album&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=Techno,_Techno\$if(&amp;lt;Year&amp;gt;,&amp;lt;Year&amp;gt; - )&amp;lt;Album&amp;gt;,&amp;lt;Album Artist@1&amp;gt;\&amp;lt;Album Artist&amp;gt;)))),&amp;lt;Artist@1&amp;gt;)\$if(&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=&amp;lt;Artist&amp;gt;,&amp;lt;Artist&amp;gt;\,),&amp;lt;Artist&amp;gt;\)\$if(&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=&amp;lt;Artist&amp;gt;,&amp;lt;Artist&amp;gt;,&amp;lt;Album Artist&amp;gt;),&amp;lt;Artist&amp;gt;)$if(&amp;lt;Album&amp;gt;,$if(&amp;lt;Year&amp;gt;, - &amp;lt;Year&amp;gt;) - &amp;lt;Album&amp;gt;$if(&amp;lt;Track#&amp;gt;, - &amp;lt;Track#&amp;gt;,),)$if(&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=&amp;lt;Artist&amp;gt;, - &amp;lt;Title&amp;gt;, - &amp;lt;Artist&amp;gt; - &amp;lt;Title&amp;gt;), - &amp;lt;Title&amp;gt;),240)&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=ISDBTree::CurrentNode&amp;diff=3500</id>
		<title>ISDBTree::CurrentNode</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=ISDBTree::CurrentNode&amp;diff=3500"/>
		<updated>2008-03-12T18:53:25Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{MethodDeclaration|SDBTree|ISDBTree|Property Get/Let CurrentNode As ISDBTreeNode}}&lt;br /&gt;
&lt;br /&gt;
===Property description===&lt;br /&gt;
&lt;br /&gt;
Gets or sets the current tree node.&lt;br /&gt;
&lt;br /&gt;
To avoid object errors during runtime, you should always verify the object is valid before using or referencing it.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
Function Foo&lt;br /&gt;
  If Not (SDB.MainTree.CurrentNode Is Nothing) Then&lt;br /&gt;
  	&#039;do whatever here&lt;br /&gt;
  End If&lt;br /&gt;
End Function&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Scripting|{{PAGENAME}}]]&lt;br /&gt;
[[Category:Automation objects|{{PAGENAME}}]]&lt;br /&gt;
[[Category:CoClass SDBTree|{{PAGENAME}}]]&lt;br /&gt;
[[Category:Interface ISDBTree|{{PAGENAME}}]]&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Last.FM_Scrobbler_Plugin_Info&amp;diff=3490</id>
		<title>Last.FM Scrobbler Plugin Info</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Last.FM_Scrobbler_Plugin_Info&amp;diff=3490"/>
		<updated>2008-03-07T18:12:33Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Last.FM Scrobbler Support ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mediamonkey supports the Last.FM &#039;scrobbler&#039; plugins to submit played tracks within MediaMonkey itself (portable player sync&#039;d played tracks are not supported).&lt;br /&gt;
&lt;br /&gt;
Currently there are 3 main plugins available, only ONE of which should reside in the &amp;quot;&amp;lt;MediaMonkey program folder&amp;gt;\Plugins&amp;quot; folder.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Version 1: gen_audioscrobbler.dll (v 1.1.10)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
This is the last &#039;old style&#039; plugin for winamp 2 compatible clients. This plugin uses a config panel normally accessed via Tool &amp;gt; Options &amp;gt; Player &amp;gt; General Plugins &amp;gt; Plugin Config.&lt;br /&gt;
&lt;br /&gt;
You can download this from the links @ http://www.last.fm/forum/34905/_/135053&lt;br /&gt;
&lt;br /&gt;
Occasionally the config panel will get hidden behind the MM app window, if the MM window is made smaller you can usually then click on the config panel to bring it to the front where you can change and save your settings. Alternative way is to use ALT+TAB to bring back focus to config panel.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Version 2: gen_wa2_scrobbler.dll (v 2.x.x)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
This is the offical current style of last.fm plugins. This plugin utilizes a &#039;tray application&#039; which gives some additional metadata info and includes the last.fm radio player for streaming radio.&lt;br /&gt;
&lt;br /&gt;
The last compatible version for v2 plugins is [http://static.last.fm/plugins/ass/WinampPluginSetup_2.0.45.0.exe 2.0.45], newer plugins are currently incompatible with MediaMonkey.&lt;br /&gt;
&lt;br /&gt;
To configure the version 2 style, you must open the tray application and configure through it&#039;s options. The plugin does not have any self configure, nor will it function without the tray application installed and running (normally the plugin will start the tray app automatically).&lt;br /&gt;
&lt;br /&gt;
The latest official plugins are always available at Last.FM http://www.last.fm/download/ keeping in mind that while the latest tray app should work, plugins newer than [http://static.last.fm/plugins/ass/WinampPluginSetup_2.0.45.0.exe 2.0.45] will not.&lt;br /&gt;
&lt;br /&gt;
To install, make sure you have the [http://www.last.fm/download/ TRAY APP] already installed, then run the plugin installer  [http://static.last.fm/plugins/ass/WinampPluginSetup_2.0.45.0.exe 2.0.45], simply point the installer to the mediamonkey folder instead of the winamp folder.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Version 3: gen_LastFMScrobbler.dll [http://www.mediamonkey.com/forum/viewtopic.php?t=26404 Peke&#039;s Last.FM Scrobbler Plugin] (beta)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
See forum thread for details and download&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=User_Auto-Organize_File_Masks_Examples&amp;diff=3307</id>
		<title>User Auto-Organize File Masks Examples</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=User_Auto-Organize_File_Masks_Examples&amp;diff=3307"/>
		<updated>2008-02-26T20:20:43Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: /* Post your favorite auto-organize masks and an example path/filename. */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Post your favorite [http://www.mediamonkey.com/sw/webhelp/frame/source/configuring%20directory%20and%20file%20formats.htm auto-organize masks] and an example path/filename. ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;\Music\A\A Perfect Circle\2004 - eMOTIVe\02 - A Perfect Circle - Imagine.mp3&lt;br /&gt;
&lt;br /&gt;
\Music\Z\ZZ Top\1983 - Eliminator\01 - ZZ Top - Gimme All Your Lovin&#039;.mp3&lt;br /&gt;
&lt;br /&gt;
\Music\_Soundtrack\2006 - V for Vendetta\09 - Cat Power - I Found a Reason.mp3&lt;br /&gt;
&lt;br /&gt;
\Music\_Techno\1991 - XL Recordings- The Second Chapter\07 - Cubic 22 - Night in Motion (Original mix).flac&lt;br /&gt;
&lt;br /&gt;
\Music\_Various\2007 - Endzeit Bunkertracks, Act 3 (disc 2- Torture session)\01 - Faderhead - Dirtygrrrls - Dirtybois (Modulate mix).flac&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;$left(\Music\$if(&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=various,_&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=techno,_&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=soundtrack,_&amp;lt;Album Artist&amp;gt;,&amp;lt;Album Artist@1&amp;gt;\&amp;lt;Album Artist&amp;gt;))),&amp;lt;Artist@1&amp;gt;\&amp;lt;Artist&amp;gt;)\$if(&amp;lt;Album&amp;gt;,$if(&amp;lt;Year&amp;gt;,&amp;lt;Year&amp;gt; - )&amp;lt;Album&amp;gt;)\$if(&amp;lt;track#&amp;gt;,&amp;lt;track#&amp;gt; - )&amp;lt;Artist&amp;gt; - &amp;lt;Title&amp;gt;,240)&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=User_Auto-Organize_File_Masks_Examples&amp;diff=3306</id>
		<title>User Auto-Organize File Masks Examples</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=User_Auto-Organize_File_Masks_Examples&amp;diff=3306"/>
		<updated>2008-02-26T20:14:12Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Post your favorite auto-organize masks and an example path/filename. ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;\Music\A\A Perfect Circle\2004 - eMOTIVe\02 - A Perfect Circle - Imagine.mp3&lt;br /&gt;
&lt;br /&gt;
\Music\Z\ZZ Top\1983 - Eliminator\01 - ZZ Top - Gimme All Your Lovin&#039;.mp3&lt;br /&gt;
&lt;br /&gt;
\Music\_Soundtrack\2006 - V for Vendetta\09 - Cat Power - I Found a Reason.mp3&lt;br /&gt;
&lt;br /&gt;
\Music\_Techno\1991 - XL Recordings- The Second Chapter\07 - Cubic 22 - Night in Motion (Original mix).flac&lt;br /&gt;
&lt;br /&gt;
\Music\_Various\2007 - Endzeit Bunkertracks, Act 3 (disc 2- Torture session)\01 - Faderhead - Dirtygrrrls - Dirtybois (Modulate mix).flac&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;$left(\Music\$if(&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=various,_&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=techno,_&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=soundtrack,_&amp;lt;Album Artist&amp;gt;,&amp;lt;Album Artist@1&amp;gt;\&amp;lt;Album Artist&amp;gt;))),&amp;lt;Artist@1&amp;gt;\&amp;lt;Artist&amp;gt;)\$if(&amp;lt;Album&amp;gt;,$if(&amp;lt;Year&amp;gt;,&amp;lt;Year&amp;gt; - )&amp;lt;Album&amp;gt;)\$if(&amp;lt;track#&amp;gt;,&amp;lt;track#&amp;gt; - )&amp;lt;Artist&amp;gt; - &amp;lt;Title&amp;gt;,240)&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Tips_%26_Tricks&amp;diff=3305</id>
		<title>Tips &amp; Tricks</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Tips_%26_Tricks&amp;diff=3305"/>
		<updated>2008-02-26T20:01:19Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;&lt;br /&gt;
This page is for tips that make things easy or that are not known by new computer users.&lt;br /&gt;
in other words some tips that were from older windows os&#039;s that still work on winXp or newer versions of windows.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[[ Icons tips ]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[[ Song Recording Tips ]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[[ Song Editing Tips ]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[[ System Hardware Tips]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[[ MISC... Tips ]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[[ Using MusicBrainz for CD Lookup ]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[[Not So Frequently Asked Questions]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[[Tagging Search Sites]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[[User Auto-Organize File Masks Examples]]&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=User:Teknojnky&amp;diff=3304</id>
		<title>User:Teknojnky</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=User:Teknojnky&amp;diff=3304"/>
		<updated>2008-02-26T19:58:46Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hi!&lt;br /&gt;
&lt;br /&gt;
[[User Wishlists and Feature Requests]]&lt;br /&gt;
&lt;br /&gt;
[[Last.FM Scrobbler Plugin Info]]&lt;br /&gt;
&lt;br /&gt;
[[ActiveX Warnings]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Current Auto-Organize mask&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;$left(\Music\$if(&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=various,_&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=techno,_&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=soundtrack,_&amp;lt;Album Artist&amp;gt;,&amp;lt;Album Artist@1&amp;gt;\&amp;lt;Album Artist&amp;gt;))),&amp;lt;Artist@1&amp;gt;\&amp;lt;Artist&amp;gt;)\$if(&amp;lt;Album&amp;gt;,$if(&amp;lt;Year&amp;gt;,&amp;lt;Year&amp;gt; - )&amp;lt;Album&amp;gt;)\$if(&amp;lt;track#&amp;gt;,&amp;lt;track#&amp;gt; - )&amp;lt;Artist&amp;gt; - &amp;lt;Title&amp;gt;,240)&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Previous Auto-Organize mask&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;$left(\Music\$if(&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=&amp;lt;Artist&amp;gt;,&amp;lt;Artist@1&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=various,_Various\$if(&amp;lt;Year&amp;gt;,&amp;lt;Year&amp;gt; - )&amp;lt;Album&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=soundtrack,_Soundtrack\$if(&amp;lt;Year&amp;gt;,)&amp;lt;Album&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=Techno,_Techno\$if(&amp;lt;Year&amp;gt;,&amp;lt;Year&amp;gt; - )&amp;lt;Album&amp;gt;,&amp;lt;Album Artist@1&amp;gt;\&amp;lt;Album Artist&amp;gt;)))),&amp;lt;Artist@1&amp;gt;)\$if(&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=&amp;lt;Artist&amp;gt;,&amp;lt;Artist&amp;gt;\,),&amp;lt;Artist&amp;gt;\)\$if(&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=&amp;lt;Artist&amp;gt;,&amp;lt;Artist&amp;gt;,&amp;lt;Album Artist&amp;gt;),&amp;lt;Artist&amp;gt;)$if(&amp;lt;Album&amp;gt;,$if(&amp;lt;Year&amp;gt;, - &amp;lt;Year&amp;gt;) - &amp;lt;Album&amp;gt;$if(&amp;lt;Track#&amp;gt;, - &amp;lt;Track#&amp;gt;,),)$if(&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=&amp;lt;Artist&amp;gt;, - &amp;lt;Title&amp;gt;, - &amp;lt;Artist&amp;gt; - &amp;lt;Title&amp;gt;), - &amp;lt;Title&amp;gt;),240)&amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=User:Teknojnky&amp;diff=3289</id>
		<title>User:Teknojnky</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=User:Teknojnky&amp;diff=3289"/>
		<updated>2008-02-22T20:45:47Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hi!&lt;br /&gt;
&lt;br /&gt;
[[User Wishlists and Feature Requests]]&lt;br /&gt;
&lt;br /&gt;
[[Last.FM Scrobbler Plugin Info]]&lt;br /&gt;
&lt;br /&gt;
[[ActiveX Warnings]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Current Auto-Organize mask&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;$left(\Music\$if(&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=various,_&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=techno,_&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=soundtrack,_&amp;lt;Album Artist&amp;gt;,&amp;lt;Album Artist@1&amp;gt;\&amp;lt;Album Artist&amp;gt;))),&amp;lt;Artist@1&amp;gt;\&amp;lt;Artist&amp;gt;)\$if(&amp;lt;Year&amp;gt;,&amp;lt;Year&amp;gt; - )$if(&amp;lt;Album&amp;gt;,&amp;lt;Album&amp;gt;)\&amp;lt;Track#&amp;gt; - &amp;lt;Artist&amp;gt; - &amp;lt;Title&amp;gt;,240)&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Previous Auto-Organize mask&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;$left(\Music\$if(&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=&amp;lt;Artist&amp;gt;,&amp;lt;Artist@1&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=various,_Various\$if(&amp;lt;Year&amp;gt;,&amp;lt;Year&amp;gt; - )&amp;lt;Album&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=soundtrack,_Soundtrack\$if(&amp;lt;Year&amp;gt;,)&amp;lt;Album&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=Techno,_Techno\$if(&amp;lt;Year&amp;gt;,&amp;lt;Year&amp;gt; - )&amp;lt;Album&amp;gt;,&amp;lt;Album Artist@1&amp;gt;\&amp;lt;Album Artist&amp;gt;)))),&amp;lt;Artist@1&amp;gt;)\$if(&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=&amp;lt;Artist&amp;gt;,&amp;lt;Artist&amp;gt;\,),&amp;lt;Artist&amp;gt;\)\$if(&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=&amp;lt;Artist&amp;gt;,&amp;lt;Artist&amp;gt;,&amp;lt;Album Artist&amp;gt;),&amp;lt;Artist&amp;gt;)$if(&amp;lt;Album&amp;gt;,$if(&amp;lt;Year&amp;gt;, - &amp;lt;Year&amp;gt;) - &amp;lt;Album&amp;gt;$if(&amp;lt;Track#&amp;gt;, - &amp;lt;Track#&amp;gt;,),)$if(&amp;lt;Album Artist&amp;gt;,$if(&amp;lt;Album Artist&amp;gt;=&amp;lt;Artist&amp;gt;, - &amp;lt;Title&amp;gt;, - &amp;lt;Artist&amp;gt; - &amp;lt;Title&amp;gt;), - &amp;lt;Title&amp;gt;),240)&amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=ISDBSongData::LastPlayed&amp;diff=3272</id>
		<title>ISDBSongData::LastPlayed</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=ISDBSongData::LastPlayed&amp;diff=3272"/>
		<updated>2008-02-19T17:18:58Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: /* Property description */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{MethodDeclaration|SDBSongData|ISDBSongData|Property Get/Let LastPlayed As Date}}&lt;br /&gt;
&lt;br /&gt;
===Property description===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Scripting|{{PAGENAME}}]]&lt;br /&gt;
[[Category:Automation objects|{{PAGENAME}}]]&lt;br /&gt;
[[Category:CoClass SDBSongData|{{PAGENAME}}]]&lt;br /&gt;
[[Category:Interface ISDBSongData|{{PAGENAME}}]]&lt;br /&gt;
&lt;br /&gt;
Some discussion in [http://www.mediamonkey.com/forum/viewtopic.php?t=25687 this thread], in summary use vb datediff() function to compare dates (ie .LastPlayed &amp;gt; x seconds/minutes/hours/days/etc).&lt;br /&gt;
&lt;br /&gt;
Don&#039;t forget to take into account if using SQL with MM dates, to adjust for timezone differences between sqlite: &lt;br /&gt;
&lt;br /&gt;
Now = (JulianDay(&#039;now&#039;,&#039;localtime&#039;)-2415018.5)&lt;br /&gt;
&lt;br /&gt;
LastTimePlayed = JulianDay(LastTimePlayed)&lt;br /&gt;
&lt;br /&gt;
These are for SQL, not for the &#039;date&#039; object.&lt;br /&gt;
&lt;br /&gt;
Another good [http://www.mediamonkey.com/forum/viewtopic.php?p=131973#131973 post] regarding dates in MM.&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=ActiveX_Warnings&amp;diff=3222</id>
		<title>ActiveX Warnings</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=ActiveX_Warnings&amp;diff=3222"/>
		<updated>2008-02-09T01:58:30Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;ActiveX warnings: If you have switched &amp;quot;Initialise and script ActiveX controls not marked as safe&amp;quot; in your Local Intranet settings in Internet Explorer, and you are still getting the warning messages - try this: &lt;br /&gt;
&lt;br /&gt;
1) Run regedit.exe &lt;br /&gt;
&lt;br /&gt;
2) Goto HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\0 &lt;br /&gt;
&lt;br /&gt;
3) Modify key 1201 = 0 &lt;br /&gt;
&lt;br /&gt;
This sets your &amp;quot;My Computer&amp;quot; zone setting (which is not displayed in the Internet Options) to Enabled.&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
&lt;br /&gt;
[http://support.microsoft.com/?kbid=315933 MS KB article]&lt;br /&gt;
&lt;br /&gt;
[http://support.microsoft.com/?scid=833633 MS KB article]&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=ActiveX_Warnings&amp;diff=3221</id>
		<title>ActiveX Warnings</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=ActiveX_Warnings&amp;diff=3221"/>
		<updated>2008-02-09T01:56:01Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;ActiveX warnings: If you have switched &amp;quot;Initialise and script ActiveX controls not marked as safe&amp;quot; in your Local Intranet settings in Internet Explorer, and you are still getting the warning messages - try this: &lt;br /&gt;
&lt;br /&gt;
1) Run regedit.exe &lt;br /&gt;
2) Goto HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\0 &lt;br /&gt;
3) Modify key 1201 = 0 &lt;br /&gt;
&lt;br /&gt;
This sets your &amp;quot;My Computer&amp;quot; zone setting (which is not displayed in the Internet Options) to Enabled.&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
[http://support.microsoft.com/?kbid=315933 MS KB article]&lt;br /&gt;
[http://support.microsoft.com/?scid=833633 MS KB article]&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Introduction_To_Scripts&amp;diff=3220</id>
		<title>Introduction To Scripts</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Introduction_To_Scripts&amp;diff=3220"/>
		<updated>2008-02-09T01:44:09Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Scripts are a fundamental feature of MM.&lt;br /&gt;
They allow the user to automate MediaMonkey and enhance it with new features as autmated tagging, resuming playback on startup, getting info from the internet.&lt;br /&gt;
&lt;br /&gt;
Scripts are available in the [http://www.mediamonkey.com/forum/viewforum.php?f=2 scripting forum].&lt;br /&gt;
&lt;br /&gt;
== See also==&lt;br /&gt;
[[Introduction to scripting]]&lt;br /&gt;
&lt;br /&gt;
[[ActiveX Warnings]]&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=ActiveX_Warnings&amp;diff=3219</id>
		<title>ActiveX Warnings</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=ActiveX_Warnings&amp;diff=3219"/>
		<updated>2008-02-09T01:43:31Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;ActiveX warnings: If you have switched &amp;quot;Initialise and script ActiveX controls not marked as safe&amp;quot; in your Local Intranet settings in Internet Explorer, and you are still getting the warning messages - try this: &lt;br /&gt;
&lt;br /&gt;
1) Run regedit.exe &lt;br /&gt;
2) Goto HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\0 &lt;br /&gt;
3) Modify key 1201 = 0 &lt;br /&gt;
&lt;br /&gt;
This sets your &amp;quot;My Computer&amp;quot; zone setting (which is not displayed in the Internet Options) to Enabled.&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=User:Teknojnky&amp;diff=3218</id>
		<title>User:Teknojnky</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=User:Teknojnky&amp;diff=3218"/>
		<updated>2008-02-09T01:42:20Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hi!&lt;br /&gt;
&lt;br /&gt;
[[User Wishlists and Feature Requests]]&lt;br /&gt;
&lt;br /&gt;
[[Last.FM Scrobbler Plugin Info]]&lt;br /&gt;
&lt;br /&gt;
[[ActiveX Warnings]]&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Talk:SDBSongData&amp;diff=3217</id>
		<title>Talk:SDBSongData</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Talk:SDBSongData&amp;diff=3217"/>
		<updated>2008-02-08T21:07:35Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Is there a way to programattically get all the &#039;user&#039; fields or do they all have to be entered manually?&lt;br /&gt;
&lt;br /&gt;
For example, populating a list box of fields... it would seem logical that there is (or should be) an internal list of modifiable fields somewhere. &lt;br /&gt;
&lt;br /&gt;
something akin to&lt;br /&gt;
&lt;br /&gt;
dim obj, fieldlist&lt;br /&gt;
&lt;br /&gt;
set obj = sdb.selectedsonglist.item(0)&lt;br /&gt;
&lt;br /&gt;
set fieldlist = obj.getuserfields &#039;returns list of all settable user fields&lt;br /&gt;
&lt;br /&gt;
--[[User:Teknojnky|Teknojnky]] 16:07, 8 February 2008 (EST)&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Talk:SDBTreeNode&amp;diff=3212</id>
		<title>Talk:SDBTreeNode</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Talk:SDBTreeNode&amp;diff=3212"/>
		<updated>2008-02-08T00:51:48Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;How to use the custom properties effectively? --[[User:Teknojnky|Teknojnky]] 19:51, 7 February 2008 (EST)&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Talk:Sample_Lyricist_Tree_Node_script&amp;diff=3211</id>
		<title>Talk:Sample Lyricist Tree Node script</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Talk:Sample_Lyricist_Tree_Node_script&amp;diff=3211"/>
		<updated>2008-02-08T00:40:54Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This sample should probly be updated to use the new event mechanisms if the old ones are deprecated.&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Talk:Main_Page&amp;diff=3209</id>
		<title>Talk:Main Page</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Talk:Main_Page&amp;diff=3209"/>
		<updated>2008-02-06T18:54:50Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I see this page is locked, what is the best way to go abou getting a link added? I don&#039;t have anything I want to link at this time, I am just curious. -- [[User:Teknojnky|Teknojnky]] 12:52, 28 August 2007 (EDT)&lt;br /&gt;
: You can ask here (on the talk page) to add some link or to temporarily unprotect the page (e.g. for bigger changes). Of course keep in mind the reason why the page (as façade of the wiki) is protected. -- [[User:Steegy|Steegy]] 07:07, 31 August 2007 (EDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
I refreshed the main page, mainly to draw a clear line between users content (which for now isn&#039;t really existing) and content for &amp;quot;developers&amp;quot; (scripters, skinners, translators, ...). If you don&#039;t really like the layout or have suggestions, feel free to post here. -- [[User:Steegy|Steegy]] 21:18, 7 September 2007 (EDT)&lt;br /&gt;
&lt;br /&gt;
I&#039;d like to see a link to the [[MediaMonkey_Automation_objects]] page directly in either the navigation block or the toolbox block, so its easier to navigate to the objects reference list. --[[User:Teknojnky|Teknojnky]] 13:54, 6 February 2008 (EST)&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Talk:ISDBSongData::GetCopy&amp;diff=3207</id>
		<title>Talk:ISDBSongData::GetCopy</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Talk:ISDBSongData::GetCopy&amp;diff=3207"/>
		<updated>2008-02-05T18:21:53Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I don&#039;t understand what this method does or what it would be used for.&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=SDBSongData&amp;diff=3206</id>
		<title>SDBSongData</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=SDBSongData&amp;diff=3206"/>
		<updated>2008-02-05T18:18:44Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: /* ISDBSongData members */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{AutomationObjectsList}}&lt;br /&gt;
== CoClass SDBSongData ==&lt;br /&gt;
&lt;br /&gt;
Object with all properties of a track.&lt;br /&gt;
&lt;br /&gt;
To apply changes made to a SongData object, be sure to call one or more of the methods [[ISDBSongData::UpdateAlbum|UpdateAlbum]], [[ISDBSongData::UpdateArtist|UpdateArtist]], [[ISDBSongData::UpdateDB|UpdateDB]] and/or [[ISDBSongData::WriteTags|WriteTags]]. In some cases, you can call the [[ISDBSongList::UpdateAll|UpdateAll]] method of the SongList object containing the SongData object.&lt;br /&gt;
&lt;br /&gt;
=== ISDBSongData members ===&lt;br /&gt;
   &lt;br /&gt;
{{MethodsList &lt;br /&gt;
|[[ISDBSongData::Album|Album]] |Property Get |  &lt;br /&gt;
|[[ISDBSongData::AlbumArt|AlbumArt]] |Property Get |  &lt;br /&gt;
|[[ISDBSongData::AlbumArtistName|AlbumArtistName]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::AlbumName|AlbumName]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::Artist|Artist]] |Property Get |  &lt;br /&gt;
|[[ISDBSongData::ArtistName|ArtistName]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::Author|Author]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::Band|Band]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::Bitrate|Bitrate]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::Bookmark|Bookmark]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::BPM|BPM]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::Cached|Cached]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::CachedPath|CachedPath]] |Property Get |  &lt;br /&gt;
|[[ISDBSongData::CalculateGapData|CalculateGapData]] |Method |  &lt;br /&gt;
|[[ISDBSongData::Channels|Channels]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::Comment|Comment]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::Conductor|Conductor]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::Copyright|Copyright]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::Custom1|Custom1]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::Custom2|Custom2]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::Custom3|Custom3]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::Custom4|Custom4]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::Custom5|Custom5]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::DateAdded|DateAdded]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::DiscNumber|DiscNumber]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::DiscNumberStr|DiscNumberStr]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::Encoder|Encoder]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::FileLength|FileLength]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::FileModified|FileModified]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::GaplessBytes|GaplessBytes]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::Genre|Genre]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::GetCopy|GetCopy]] |Method |  &lt;br /&gt;
|[[ISDBSongData::Grouping|Grouping]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::ID|ID]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::InvolvedPeople|InvolvedPeople]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::isBookmarkable|isBookmarkable]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::IsntInDB|IsntInDB]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::ISRC|ISRC]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::LastPlayed|LastPlayed]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::Leveling|Leveling]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::LevelingAlbum|LevelingAlbum]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::Lyricist|Lyricist]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::Lyrics|Lyrics]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::Media|Media]] |Property Get |  &lt;br /&gt;
|[[ISDBSongData::MediaLabel|MediaLabel]] |Property Get |  &lt;br /&gt;
|[[ISDBSongData::MetadataFromFilename|MetadataFromFilename]] |Method |  &lt;br /&gt;
|[[ISDBSongData::Mood|Mood]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::MusicComposer|MusicComposer]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::Occasion|Occasion]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::OriginalArtist|OriginalArtist]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::OriginalLyricist|OriginalLyricist]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::OriginalTitle|OriginalTitle]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::OriginalYear|OriginalYear]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::ParseText|ParseText]] |Method |  &lt;br /&gt;
|[[ISDBSongData::Path|Path]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::PeakValue|PeakValue]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::PlayCounter|PlayCounter]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::PlaylistOrder|PlaylistOrder]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::PostGap|PostGap]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::PreGap|PreGap]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::Preview|Preview]] |Property Get |  &lt;br /&gt;
|[[ISDBSongData::PreviewPath|PreviewPath]] |Property Get |  &lt;br /&gt;
|[[ISDBSongData::Publisher|Publisher]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::Quality|Quality]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::Rating|Rating]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::RatingString|RatingString]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::ReadTags|ReadTags]] |Method |  &lt;br /&gt;
|[[ISDBSongData::RenameByMask|RenameByMask]] |Method |  &lt;br /&gt;
|[[ISDBSongData::SampleRate|SampleRate]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::SongID|SongID]] |Property Get |  &lt;br /&gt;
|[[ISDBSongData::SongLength|SongLength]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::SongLengthString|SongLengthString]] |Property Get |  &lt;br /&gt;
|[[ISDBSongData::Tempo|Tempo]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::Title|Title]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::TotalSamples|TotalSamples]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::TrackOrder|TrackOrder]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::TrackOrderStr|TrackOrderStr]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::UpdateAlbum|UpdateAlbum]] |Method |  &lt;br /&gt;
|[[ISDBSongData::UpdateArtist|UpdateArtist]] |Method |  &lt;br /&gt;
|[[ISDBSongData::UpdateDB|UpdateDB]] |Method |  &lt;br /&gt;
|[[ISDBSongData::VBR|VBR]] |Property Get/Let |  &lt;br /&gt;
|[[ISDBSongData::WriteTags|WriteTags]] |Method |  &lt;br /&gt;
|[[ISDBSongData::Year|Year]] |Property Get/Let |  &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Scripting|{{PAGENAME}}]]&lt;br /&gt;
[[Category:Automation objects|{{PAGENAME}}]]&lt;br /&gt;
[[Category:CoClass SDBSongData|{{PAGENAME}}]]&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Talk:ISDBDatabase::BeginTransaction&amp;diff=3203</id>
		<title>Talk:ISDBDatabase::BeginTransaction</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Talk:ISDBDatabase::BeginTransaction&amp;diff=3203"/>
		<updated>2008-02-05T04:08:57Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;When/why should this be used, and even more importantly, when should it NOT be used?&lt;br /&gt;
&lt;br /&gt;
What happens if you are unable to &#039;commit&#039; the transaction (due to script error or crash, etc) and MM keeps running? or when the whole app crashes?&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
	<entry>
		<id>https://www.mediamonkey.com/wiki/index.php?title=Talk:ISDBSongList::Delete&amp;diff=3202</id>
		<title>Talk:ISDBSongList::Delete</title>
		<link rel="alternate" type="text/html" href="https://www.mediamonkey.com/wiki/index.php?title=Talk:ISDBSongList::Delete&amp;diff=3202"/>
		<updated>2008-02-05T04:03:15Z</updated>

		<summary type="html">&lt;p&gt;Teknojnky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;What is the best way to use this method?&lt;br /&gt;
&lt;br /&gt;
If I try to delete a track within a loop, the loop does not get the updated .count and it will go out of bounds..&lt;br /&gt;
&lt;br /&gt;
example:&lt;br /&gt;
&lt;br /&gt;
For x = 0 to sdbsonglist.count-1&lt;br /&gt;
 if sdbsonglist.item(x).rating &amp;lt; 50 then&lt;br /&gt;
   sdbsonglist.delete(x)&lt;br /&gt;
 end if&lt;br /&gt;
Next&lt;br /&gt;
&lt;br /&gt;
that is a realistic situation when you are checking a track list for certain criteria (ie rating etc) and you want to remove a track without creating a new secondary songlist object.&lt;br /&gt;
--[[User:Teknojnky|Teknojnky]] 23:03, 4 February 2008 (EST)&lt;/div&gt;</summary>
		<author><name>Teknojnky</name></author>
	</entry>
</feed>