PDA

View Full Version : jeza.ioFTPD.Tools


jeza
11-22-2011, 11:25 AM
All scripts need MS.NET Framework 4.0 installed!


Zip Script

Its a Zip Script :dizzy:


Manager
Site manager

DUPE
REQUEST
NEWDAY


Archiever
Archive old releases

MOVE
DELETE
COPY


Version : 4.6.50.621

x64: http://jezatools.googlecode.com/files/jeza.ioFTPD.Tools.v4.6.50.621_x64.zip
x86: http://jezatools.googlecode.com/files/jeza.ioFTPD.Tools.v4.6.50.621_x86.zip

ArtX
11-27-2011, 02:08 PM
Don't know if this is a bug or a config error, but when ever i issue the site rescan command, it runs, show all the files are fine, yet the final line looks like

[L] 200-{8}TotalFiles...: {4}{8}MissingFiles.: {5}{8}OkFiles......: {6}{8}FailedFiles..: {7}

and the complete tag is not made, I have noticed that there is a .jeza.ioFTPD.Debug file in every dir i have ran rescan on.

I have tried with both x86 and x64 versions

jeza
11-28-2011, 12:18 AM
It is a bug.
The line (ClientRescanFoot) was not correct formated.
And the script is not creating COMPLETE TAG at all, only .missing files are created.
I will fix it and post new version.

.jeza.ioFTPD.Debug is created in every folder where the script is used and it contains debug info about the actions that are taken.
It is a plain text file and you can open it with your favorite text editor and check if there is some error at the end...

ArtX
11-28-2011, 03:42 AM
so do i get a cookie for reporting a bug? :D

jeza
11-28-2011, 05:03 AM
so do i get a cookie for reporting a bug? :D

sure you do :D

x64: http://jezatools.googlecode.com/files/jeza.ioFTPD.Tools.v4.5.42.594_x64.zip
x86: http://jezatools.googlecode.com/files/jeza.ioFTPD.Tools.v4.5.42.594_x86.zip

Upgrade instructions:

Create backup of file jeza.ioFTPD.ZipScript.exe.config
Replace all *.dll and *.exe files
In jeza.ioFTPD.ZipScript.exe.config add


<!-- delete all files that start with this string in rescan folder -->
<add key="TagCleanUpStringCrc32" value="]-[" />
<add key="TagIncompleteCrc32" value="]-[iNCOMPLETE]-[ {11}% ]-[{6}FiLE(s) of {4}FiLE(s)]-[iNCOMPLETE]-[" />
<add key="TagCompleteCrc32" value="]-[Complete]-[{11}%]-[ {9} - {6}F]-[" />

ArtX
11-28-2011, 06:28 AM
working here, so far, is there a way to change the tag to a folder and not a file? If not can i add this as a request? :)

edit: rescan works fine, although something else has cropped up

edit2: for some reason the security on this board wont let me post the out put here, so here it is on pastebin http://pastebin.com/Faw9332C

jeza
11-28-2011, 07:15 AM
i always used file as tag, so i never added support for folder :)
i will do my best to make it configurable file/fodler

try to add a ticket with .jeza.ioFTPD.Debug file as attachment here (http://code.google.com/p/jezatools/issues/list) if the forum does not allow it

ArtX
11-28-2011, 08:26 AM
bug filed :)

jeza
11-28-2011, 12:28 PM
it seems that you have more than one sfv in that folder. is this correct?
script checks the number of SFV files in race folder.
if number of SFVs in the folder is not equal to 1, this message is shown to user.

ArtX
11-28-2011, 01:38 PM
incorrect, i have no sfv's in that folder, just 55 .missing files an .ioFTPD file, .jeza.ioFTPD.Debug and.jeza.ioFTPD.Race , flash fxp says its transferred it, your script says its there, yet when i look using flashfxp or in windows explorer its not there

I did attempt to re upload it, it said same as before, its there expecting 55 files, I have even deleted the folder and started again, same issue.

I do have a fresh box installing at the moment, so i will try with a fresh install of both your script and ioFTPD, see if that does the trick

Yil
11-28-2011, 02:17 PM
This is great. A .NET zipscript. I've been sort of curious about the performance of C# for events. Obviously TCL is not fast, but it has the benefit of an already running interpreter which means that for trivial things it's fast enough, but on something more complex like the archiver it's quite slow (though speed isn't really necessary there).

I haven't spent much time on ioFTPD lately, let alone got to playing with a new C# library, but I did want to point out that I think I've thought up a way to expand on the module idea and allow for user-defined modules to be called the same way TCL/EXEC would be called now. This would enable a relatively simple shim dll who could kick the args to a persistent event-driven application which would eliminate the overhead involved in things like C# which have a prohibitive startup cost. I've wanted something like this way back before I even released v6.0 because I thought the regular EXEC overhead was too high for trivial things but abandoned the idea when things were good enough and TCL scripts were the most common.

The only reason I mention this now is because if you find C# too slow for some things there is a way around that.

jeza
11-29-2011, 04:05 AM
i do not really care about performance, but i did some tests... :)

it takes ~600ms to process OnUploadComplete event :)

it would be nice to speed up things a little, because if i remember correct same zipscript in c++ completed the OnUploadComplete event in ~30ms

ArtX
11-29-2011, 08:25 AM
Upgrade instructions:

In jeza.ioFTPD.ZipScript.exe.config add


<!-- delete all files that start with this string in rescan folder -->
<add key="TagCleanUpStringCrc32" value="]-[" />
<add key="TagIncompleteCrc32" value="]-[iNCOMPLETE]-[ {11}% ]-[{6}FiLE(s) of {4}FiLE(s)]-[iNCOMPLETE]-[" />
<add key="TagCompleteCrc32" value="]-[Complete]-[{11}%]-[ {9} - {6}F]-[" />

^^^
is what threw me off, in the file you sent me it is different, mine doesn't have Crc32 on the end, i thought I had to replace the lines, but i didn't, still all working fine now, well apart for the folder as tag thing :D

jeza
11-29-2011, 11:26 AM
they are together with other rescan settings :D

<!--
Rescan
-->
<add key="ClientCrc32Head" value=" Expected Actual Status FileName " />
<add key="ClientCrc32Body" value=" {1,-8} {2,-8} {3,-8} {0,-60:B60}" />
<add key="ClientCrc32Foot" value="{8}TotalFiles...: {4}{8}MissingFiles.: {5}{8}OkFiles......: {6}{8}FailedFiles..: {7}" />
<!-- delete all files that start with this string in rescan folder -->
<add key="TagCleanUpStringCrc32" value="]-[" />
<add key="TagIncompleteCrc32" value="]-[iNCOMPLETE]-[ {11}% ]-[{6}FiLE(s) of {4}FiLE(s)]-[iNCOMPLETE]-[" />
<add key="TagCompleteCrc32" value="]-[Complete]-[{11}%]-[ {9} - {6}F]-[" />

ArtX
11-29-2011, 11:49 AM
After going back and checking i know what i did wrong now, looked at wrong section, meh, these things happen, now about the folder as tag....... :p

jeza
12-02-2011, 02:12 AM
New version 4.6.46.600, see first post for downloads


================================================== ================================================== ====================
From 4.5.42.594 to 4.6.46.600

In jeza.ioFTPD.ZipScript.exe.config add
<add key="TagAsFolderCrc32" value="false"/>
<add key="TagAsFolder" value="false"/>

set its value to true if you wanna TAG created as Folders
Replace all *.exe and *.dll files
================================================== ================================================== ====================

ArtX
12-02-2011, 12:13 PM
Thanks, now everyone should be happy :)

Sc0tTy
12-06-2011, 04:55 AM
Didn't realize you created a seperate topic.

I will upgrade the v3.3.10 i've been using to v4.6.46 and let you knw how it goes

Sc0tTy
12-06-2011, 05:12 AM
Okay, .xml config runs fine :)

I've been using you're archive script for a while now and i must say it works quite well
But i've got 1 feature request and 1 fix.
Can you have the console window display the same as the log?

When moving on the same partition, it's not nescesarry to copy the files and than delete the source, just moving from 1 place to the other should be fine. Saving a ton of I/O etc.

jeza
12-10-2011, 02:47 AM
Update only for Archive!

in .config add
<add key="LogToConsole" value="true"/>
replace all .exe and .dll files

jeza
12-21-2011, 03:04 AM
New version out
upgrade only if you are using archive and wanna update DUPE on archiving...


In jeza.ioFTPD.Archive.exe.config add
<add key="FileNameInternalLog" value="e:\\server\\ioFTPD\\logs\\jeza.ioFTPD.log" />

<add key="UpdateDupe" value="true"/>
<add key="DataSourceDupe" value="Data Source=e:\\server\\ioFTPD\\scripts\\jeza.ioFTPD.Ma nager\\jeza.ioFTPD.Dupe.s3db"/>
<add key="DataSourceDupeUpdateCommand" value="UPDATE Folders SET PathReal = '{1}', PathVirtual = '{2}' WHERE ReleaseName = '{0}'"/>

Replace all *.dll and *.exe files in 'jeza.ioFTPD.ArchiveScript'
Replace 'XMLSchema.xsd' in 'jeza.ioFTPD.ArchiveScript'


DataSourceDupeUpdateCommand is by default set to update my DUPE DB.
it was not tested with other dupeDB like nxdupe, but i think it should work with any db that uses sqlite.

new archivetask looks like this now

<task>
<logFormat>ARCHIVE: &quot;Archive&quot; &quot;Moving {0} from {1} to {2}&quot;</logFormat>
<status>Enabled</status>
<actionType>Move</actionType>
<source>E:\\temp\\TestFiles</source>
<sourceVirtual>/temp/TestFiles/</sourceVirtual>
<destination>E:\\temp\\archive</destination>
<destinationVirtual>/archive/</destinationVirtual>
<action id="TotalFolderUsedSpace">
<value>12345000</value>
<minFolderAction>2</minFolderAction>
</action>
</task>


new is:
sourceVirtual
destinationVirtual
logFormat - add only if you wanna add text to ioFTPD.log when executing this task (for bot anounce)

jeza
12-22-2011, 01:31 PM
New version...

ZipScript update

Added :

Extract rar on complete
Rescene.Info (http://rescene.info/index.htm)



From 4.6.49.613 to 4.6.50.614

In jeza.ioFTPD.ZsipScript.exe.config add
<!-- http://rescene.info/index.htm -->
<add key="UseResceneInfoOnRarComplete" value="true"/>
<!-- Rescene.Info Executable -->
<add key="ResceneInfoExecutable" value="E:\\0day\\archive\\srr.1.2\\srr.exe"/>
<!-- Extract release in those directories -->
<add key="ExtractRarOnComplete" value="/movies/ /series/"/>

Replace all *.dll and *.exe files in 'jeza.ioFTPD.ZipScript'
Delete 'ICSharpCode.SharpZipLib.dll'

isteana
02-16-2012, 04:29 PM
thanks for useful scripts by C#
it sure will be faster than TCL

ArtX
03-13-2012, 08:11 AM
is there a way to disable the creation of jeza.ioFTPD.Debug files? I was going to delete the entry but thought I best ask first as I don't want to break the script :/

Also any plans on getting this working with a bot? :)

jeza
03-13-2012, 01:58 PM
i will create a "release" version without debuging when i come back home (weekend).
you can use it with any bot that uses ioFTPD.log file for example.

you have also an option to write anounce messages to file of your choice
<add key="FileNameInternalLog" value="e:\\server\\ioFTPD\\logs\\jeza.ioFTPD.log" /> and bot can read it and anounce...

Example of writing SFV info to ioFTPD.log :
<add key="LogToIoFtpdSfv" value="true" /> <!-- log SFV uploaded to ioFTPD.log -->


Example of writing SFV info to file of your choice:
<add key="LogToInternalSfv" value="true" />


i also released a complete sitebot with trial/quota and everything ;)
but it is almost nothing documented :P

check out this thread https://oss.azurewebsites.net/forum/new-scripts-announces-updates/11241-jscripts.html :eek:

ArtX
03-14-2012, 11:35 AM
Seems I am getting an issue when using the manager part of your script.

The error in the debug log is


[2012-03-14 16:30:30] Assembly.GetExecutingAssembly().Location: ['C:\ioFTPD\scripts\jeza.ioFTPD.Manager\jeza.ioFTPD .Framework.dll']

error in flash is

[L] MKD test
[L] 550 test: Action blocked by external script.

Only seems to happen if I have

OnNewDir = EXEC ..\scripts\jeza.ioFTPD.Manager\jeza.ioFTPD.Manager .exe newdir

in my ioFTPD.ini

Seems rescan doesn't work in any dir that has zip files in it, any dir that has an .sfv file it works fine

Sorry if this has already been mentioned

jeza
03-18-2012, 01:09 AM
here is a version with debug disabled : http://jezatools.googlecode.com/files/jeza.ioFTPD.Tools.v4.6.50.614-noDebug.rar

rescan does work only with files that have an SFV, because rescan checks CRC32 info that is found in SFV.

please paste more lines from debug file so i can check whats wrong when newdir is created

Quarzar
11-06-2012, 03:59 PM
Thanks for the great scripts.

But your noDebug ZipScript still create the jeza.ioFTPD.Debug files

and your IMDB info seems not to be working - it's removing the nfo's :confused:

[2012-11-06 21:52:12] args: 'args[0]='upload', args[1]='E:\TEST\Test2-T\test.nfo', args[2]='62D77253', args[3]='/TEST/Test2-T/test.nfo''
[2012-11-06 21:52:12] CurrentRaceData: FileExtension: .nfo, FileName: test.nfo, FileNameWithoutExtension: test, FileSize: 54, DirectoryName: Test2-T,
DirectoryPath: E:\TEST\Test2-T, RaceType: Nfo, UploadCrc: 62D77253, UploadFile: E:\TEST\Test2-T\test.nfo, UploadVirtualFile: /TEST/Test2-T/test.nfo,
UserName: Test, GroupName: test, Speed: 113, DirectoryParent: E:\TEST, UploadVirtualPath: /TEST/Test2-T/, Uid: 1, Gid: 2, LinkImdb:
[2012-11-06 21:52:12] Skip file extension match=[False] :: ['.nfo' => 'jpg,jpeg,cue,txt,tcl,itcl,ini,cfg,m3u,avi,mpg,mpe g,vob,mkv,mp4']
[2012-11-06 21:52:12] Refuse file extension match=[False] :: ['.nfo' => 'bat,cmd,exe,dll']
[2012-11-06 21:52:12] Parsing: 'E:\TEST\Test2-T\test.nfo'
[2012-11-06 21:52:12] line: 'iMDB LiNK.....: http://www.imdb.com/title/tt0088247/'
[2012-11-06 21:52:12] Format: ,----------=[ ZipScript by Jeza ]=-----------------------------------------------------------,
[2012-11-06 21:52:12] Format: | File.....: test.nfo |
[2012-11-06 21:52:12] Format: '---------------------------------------------------------------------=[ 0/0 ]=----------'
[2012-11-06 21:52:12] Process IMDB info
[2012-11-06 21:52:12] Format: NFO: "/TEST/Test2-T/" "test.nfo" "Test" "test"
[2012-11-06 21:52:12] Log to Internal: 'NFO: "/TEST/Test2-T/" "test.nfo" "Test" "test"'
[2012-11-06 21:52:12] GetImdbResponseForEventId: 'tt0088247'
[2012-11-06 21:52:12] GetImdbInfo: 'http://www.imdbapi.com/?i=tt0088247'


[21:52:12] [R] STOR test.nfo
[21:52:12] [R] 150 Opening ASCII mode data connection for test.nfo.
[21:52:15] [R] 226-,----------=[ ZipScript by Jeza ]=-----------------------------------------------------------,
[21:52:15] [R] 226-| File.....: test.nfo |
[21:52:15] [R] 226-'---------------------------------------------------------------------=[ 0/0 ]=----------'
[21:52:15] [R] 226-Checked in 3071,1757ms

jeza
11-07-2012, 12:10 AM
is there anything else or does the logging stops there?
can you upload your test file and debug file so i can check it?

Quarzar
11-07-2012, 11:39 AM
The logging stops there

I attach the logfiles, testfiles and the testfiles / logfiles from the ftpd dir

Yil
11-07-2012, 09:44 PM
Approved the attachment which I think is necessary for jeza to download it...

jeza
11-08-2012, 02:38 PM
new version available : 4.6.50.615 (Fixed IMDB exception)

For upgrade just replace jeza.ioFTPD.Framework.dll

Quarzar
11-09-2012, 01:24 PM
It's working now.

But i had some suggestions...

Integrate an option which enable or disable the creation of .jeza.ioFTPD.Debug, because i can't delete folders over the ftp client. It's recreate the folder and add a .jeza.ioFTPD.Debug.

After the IMDB info the script could write some infos to the .ioFTPD.Message file like that example

|----------=[ Movie Info ]=-----------------------------------------------------------|
| Title....: Terminator 2: Judgment Day |
| Rating...: 8.6 |
| Votes....: 388,227 |
| Year.....: 1991 |
| Genre....: Action, Sci-Fi, Thriller |
|----------=[ User Stats ]=-----------------------------------------------------------|
| 1. Test 4MB 42760kBit/s 1F |
|----------=[ Group Stats ]=-----------------------------------------------------------|
| 1. test 4MB 42760kBit/s 1F |
'---------------------------------------------------------------------=[ 1/1 ]=----------'

Write the content of diz files to the .ioFTPD.Message

|----------=[ User Stats ]=-----------------------------------------------------------|
| |
|----------=[ Group Stats ]=-----------------------------------------------------------|
| |
'---------------------------------------------------------------------=[ x/x ]=----------'
content from file_id.diz

jeza
11-12-2012, 03:29 PM
New Version : 4.6.50.621 - See first post for download
Upgrade only for ZipScript (added iMDB iNFO and diz to .ioFTPD.Message file)
If you wanna disable DEBUG file, just use "" in 'FileNameDebug' config setting.
Example
<add key="FileNameDebug" value="" />
Upgrade

In jeza.ioFTPD.ZsipScript.exe.config add
<add key="AddDizToMessageFile" value="false"/> <!-- Add the .diz content to .ioFTPD.Message file -->
<add key="AddImdbInfoToMessageFile" value="false"/> <!-- Add the iMDB iNFO content to .ioFTPD.Message file -->

<add key="MessageImdbInfoHead" value="|----------=[ Movie Info ]=-----------------------------------------------------------|" />
<add key="MessageImdbInfo" value="| Title....: {5,-80:B79}|{22}| Rating...: {16,-80:B79}|{22}| Votes....: {17,-80:B79}|{22}| Year.....: {6,-80:B79}|{22}| Genre....: {9,-80:B79}|{22}| Runtime..: {15,-80:B79}|" />

Replace all *.dll and *.exe files in 'jeza.ioFTPD.ZipScript'

xy0thep
11-29-2012, 06:05 PM
hi there,

first of all i need to say that im only using your archive script (latest version). concerning that i got some questions:

1.) i set up the xml-file like the following:

<?xml version="1.0" encoding="utf-8"?>
<tasks xmlns="http://jeza.ioFTPD.Tools/XMLSchema.xsd">
<task>
<logFormat>ARCHIVE: &quot;Archive&quot; &quot;Moving {0} from {1} to {2}&quot;</logFormat>
<status>Enabled</status>
<actionType>Move</actionType>
<source>C:\\FTPD\\TEST</source>
<sourceVirtual>/TEST/</sourceVirtual>
<destination>X:\\INCOMING</destination>
<destinationVirtual>/ARCHIVES/INCOMING/</destinationVirtual>
<action id="TotalFreeSpace">
<value>4000000000</value>
<minFolderAction>1</minFolderAction>
</action>
</task>
</tasks>

question is: when selected move as "action type" isnt the source supposed to be deleted (automatically, after successful move)?
it worked so far. when hdd-space dropped below ~4GB the oldest stuff was moved to defined destination dir, but the source dir kept the stuff aswell and didnt delete it.

2. what is that "logFormat" about? is it for internal logging (see my third question aswell)?
i'd like to have an output to my ioftpd.log file for being able to use that output on dzsbot to annouce moved dirs on irc. is that possible?

3. from config file:
<add key="FileNameInternalLog" value="c:\\ioFTPD\\logs\\jeza.ioFTPD.log" />
whats that about? i couldnt find a file named like that on the logs dir. is it supposed to be the location of the "normal" ioftpd.log? (see question 2)

4. concerning updates of a dupe database:
any chance to support nxtools' db? i tried the following setting, but i got an error:

<add key="UpdateDupe" value="true"/>
<add key="DataSourceDupe" value="Data Source=c:\\ioFTPD\\scripts\\nxTools\\data\\DupeDir s.db"/>
<add key="DataSourceDupeUpdateCommand" value="UPDATE Folders SET PathReal = '{1}', PathVirtual = '{2}' WHERE ReleaseName = '{0}'"/>

error:


[23:14:54] [R] 200-[2012-11-29 23:14:52] Updating DUPEDB with 'UPDATE Folders SET PathReal = '{1}', PathVirtual = '{2}' WHERE ReleaseName = '{0}''
[23:14:54] [R] 200-[2012-11-29 23:14:52] DUPEDB : 'Data Source=c:\\ioFTPD\\scripts\\nxTools\\data\\DupeDir s.db'
[23:14:54] [R] 200-[2012-11-29 23:14:52] releaseName='RELEASE', realPath='C:\FTPD\TEST\RELEASE', virtualPath='/ARCHIVES/INCOMING//RELEASE'
[23:14:54] [R] 200-[2012-11-29 23:14:52] ExecuteNonQuery: 'UPDATE Folders SET PathReal = 'C:\FTPD\TEST\RELEASE', PathVirtual = '/ARCHIVES/INCOMING//RELEASE' WHERE ReleaseName = 'RELEASE'
[23:14:54] [R] 200-[2012-11-29 23:14:54] System.Data.SQLite.SQLiteException (0x80004005): SQLite error
[23:14:54] [R] 200-no such table: Folders
[23:14:54] [R] 200- bei System.Data.SQLite.SQLite3.Prepare(SQLiteConnectio n cnn, String strSql, SQLiteStatement previous, UInt32 timeoutMS, String& strRemain)
[23:14:54] [R] 200- bei System.Data.SQLite.SQLiteCommand.BuildNextCommand( )
[23:14:54] [R] 200- bei System.Data.SQLite.SQLiteDataReader.NextResult()
[23:14:54] [R] 200- bei System.Data.SQLite.SQLiteCommand.ExecuteReader(Com mandBehavior behavior)
[23:14:54] [R] 200- bei System.Data.SQLite.SQLiteCommand.ExecuteNonQuery()
[23:14:54] [R] 200- bei jeza.ioFTPD.Framework.DataBase.ExecuteNonQuery(Str ing commandText)
[23:14:54] [R] 200- bei jeza.ioFTPD.Framework.ConsoleAppTasks.UpdateDupeDb (ArchiveTask archiveTask, DirectoryInfo directoryInfo)
[23:14:54] [R] 200- bei jeza.ioFTPD.Framework.ConsoleAppTasks.ExecuteArchi veTask(ArchiveTask archiveTask, DirectoryInfo directoryInfo)
[23:14:54] [R] 200- bei jeza.ioFTPD.Framework.ConsoleAppTasks.ExecuteArchi veTask(ArchiveTask archiveTask, List`1 sourceFolders)
[23:14:54] [R] 200- bei jeza.ioFTPD.Framework.ConsoleAppTasks.ManageDiskSp ace(ArchiveTask task, List`1 sourceFolders)
[23:14:54] [R] 200- bei jeza.ioFTPD.Framework.ConsoleAppTasks.ExecuteArchi veTasks()
[23:14:54] [R] 200- bei jeza.ioFTPD.Framework.ConsoleAppTasks.Execute(Task Type taskType)
[23:14:54] [R] 200- bei jeza.ioFTPD.Archive.Program.Main()
[23:14:54] [R] 200 Command successful.

guess the error is that nxtools' db has other sql tables?? maybe someone knows what to adjust to make it fit to nxtools db?

guess it has to be set here, but i dunno what.

<add key="UpdateDupe" value="true"/>
<add key="DataSourceDupe" value="Data Source=c:\\ioFTPD\\scripts\\nxTools\\data\\DupeDir s.db"/>
<add key="DataSourceDupeUpdateCommand" value="UPDATE Folders SET PathReal = '{1}', PathVirtual = '{2}' WHERE ReleaseName = '{0}'"/>

thx for replies in advance!

jeza
12-02-2012, 01:25 AM
It seems that all your problems come from UPDATE dupe command.

ActionType=MOVE
Script teeps are : COPY to destination, update dupe if enabled and finally delete source.
The script failed on step 2 (update dupe) and thats why the third step (DELETE source) was never reached
logFormat
This setting is used to write to ioFTPD.log or internal log file. it was not logged, because the script exited on update dupe.
Example :
<logFormat>ARCHIVE: &quot;Archive&quot; &quot;Moving {0} from {1} to {2}&quot;</logFormat>
will write a line into ioFTPD.log : 2012-12-02 12 23:23 ARCHIVE: "archive" "Moving blablabla from /sadfsd/sdfsd/ to /fsfsdfsf/"

FileNameInternalLog
when xml configuration has logFormat node it will allways log to ioFTPD.log, and also to 'FileNameInternalLog' if specified in .config.
this is only if someone wanna have a second log file (additional to default ioFTPD.log) and/or the irc bot reads anounce lines from that file...
update dupe db
sorry i don't know the correct update command for nxdupe, but if you get it, you can change it in 'DataSourceDupeUpdateCommand'


for now just disable update dupe and everything should start working again.
<add key="UpdateDupe" value="false"/>

xy0thep
12-02-2012, 02:45 AM
thx for ur reply.

im gonna test w/o that dupe update just to see if it works (dupedb update is essential for me concerning archiving).

about the log-format again: is this independant from the move function or didnt it log anything here because like u said its the update failure?

will report back when i'm done testing

concerning the nx update ill report back aswell. i took a look into the sql structure and tables of the nx .db files and i think its easy to get an adjusted dupe update command done.

jeza
12-03-2012, 04:49 AM
now it did not log anything because of the failure with update dupe.
for the next release i will change that, so the script will not exit on dupe failure...

xy0thep
12-03-2012, 08:13 AM
hi,

it was like u told me. all errors where caused of the dupe db update. now it works like a charm.

neat script, great work, appreciated!

for the nxtools db i nearly got it to work aswell. will take a deeper look next days and report back.

biggysmlz
01-31-2013, 07:26 AM
Hi, I am using this script to archive stuff and its pretty great, but i face one issue, while the site archive command works without issues at all, whenever i have the script in the scheduler, in the debug log i can see it always fails with this error:

Archive...
[2013-01-31 13:00:21] Assembly.GetExecutingAssembly().Location: ['z:\path\ioFTPD\scripts\jeza.ioFTPD.ArchiveScript\ jeza.ioFTPD.Framework.dll']
[2013-01-31 13:00:21] System.Runtime.InteropServices.COMException (0x80090006): Invalid Signature. (Exception from HRESULT: 0x80090006)
at System.StubHelpers.InterfaceMarshaler.ConvertToMan aged(IntPtr pUnk, IntPtr itfMT, IntPtr classMT, Int32 flags)
at Microsoft.Win32.Win32Native.CreateAssemblyNameObje ct(IAssemblyName& ppEnum, String szAssemblyName, UInt32 dwFlags, IntPtr pvReserved)
at Microsoft.Win32.Fusion.ReadCache(ArrayList alAssems, String name, UInt32 nFlag)
at System.Reflection.RuntimeAssembly.EnumerateCache(A ssemblyName partialName)
at System.Reflection.RuntimeAssembly.LoadWithPartialN ameInternal(AssemblyName an, Evidence securityEvidence, StackCrawlMark& stackMark)
at System.Reflection.Assembly.LoadWithPartialName(Str ing partialName, Evidence securityEvidence)
at System.Xml.Serialization.TempAssembly.LoadGenerate dAssembly(Type type, String defaultNamespace, XmlSerializerImplementation& contract)
at System.Xml.Serialization.XmlSerializer..ctor(Type type, String defaultNamespace)
at jeza.ioFTPD.Framework.Extensions.Deserialize[T](T xmlObject, String fileName, String defaultNamespace)
at jeza.ioFTPD.Framework.ConsoleAppTasks.ParseConfig( )
at jeza.ioFTPD.Archive.Program.Main()

Any idea why? When i run it via site cmd "site archive" it works fine..

jeza
02-01-2013, 12:32 AM
To be honest, i have no idea.
maybe Yil can help?

biggysmlz
02-01-2013, 07:04 AM
Ive worked around this by adding the run of this task to windows task scheduler, seems to wokr fine, i have another question tho, is there a way to make archiver add logs to ioFTPD log file, so the activity gets announced by a sitebot?

jeza
02-03-2013, 06:44 AM
you can add 'logFormat' node to every task configuration.
like this example:
<task>
<logFormat>ARCHIVE: &quot;Archive&quot; &quot;Moving {0} from {1} to {2}&quot;</logFormat>
<status>Enabled</status>
<actionType>Move</actionType>
<source>E:\\temp\\TestFiles</source>
<sourceVirtual>/temp/TestFiles/</sourceVirtual>
<destination>E:\\temp\\archive</destination>
<destinationVirtual>/archive/</destinationVirtual>
<action id="TotalFolderUsedSpace">
<value>12345000</value>
<minFolderAction>2</minFolderAction>
</action>
</task>


this would write something like this into ioFTPD.log
datetime ARCHIVE: "Archive" "Moving blabla from asda to ttt"

biggysmlz
02-03-2013, 07:58 AM
thanks a lot worked


actually... do I have to specify ioFTPD.log files path in the configs?

jeza
02-03-2013, 12:14 PM
no, you don't need to specify the ioFTPD.log file location.

Yil
02-03-2013, 12:53 PM
Just a note. I'm sure how jeza's outputting into the ioftpd.log file information but if you don't need to specify the location of the logs then it's probably through the EXEC module ! interface which is the probably the best way for a script to do it. However, if you run the script via window's scheduler (as I think you said) and not ioFTPD's internal scheduler it won't be able to output to the logfile and/or do anything else like set permissions, etc if it does any of that.

biggysmlz
02-03-2013, 01:00 PM
Just a note. I'm sure how jeza's outputting into the ioftpd.log file information but if you don't need to specify the location of the logs then it's probably through the EXEC module ! interface which is the probably the best way for a script to do it. However, if you run the script via window's scheduler (as I think you said) and not ioFTPD's internal scheduler it won't be able to output to the logfile and/or do anything else like set permissions, etc if it does any of that.

Seems You are right Yil, from what i see in the debug file, it does TRY to add the log to ioFTPD files, aswell as it adds it to jeza.ioFTPD.log, but whneever its ran by windows task scheduler, it ONLY adds it to jeza.ioFTPD.log, when i run it via site command, adds it fine to both.

Imo only option would be to make it add the line to ioFTPD.log the same way it does add it to jeza.ioFTPD.log. Ive even tried to change the jeza.ioFTPD.log files path in config to the ioFTPD.log, BUT the line that gets added is slightly different from what it should be ie:

[2013-02-03 17:00:01] ARCHIVE: "Archive" "Moving Gerard_Gil-Los_Pasos_Dobles-OST-2012-EiTheLMP3 from MP3 to ARCHIVE/MP3"

instead of:

02-03-2013 17:00:01 ARCHIVE: "Archive" "Moving Gerard_Gil-Los_Pasos_Dobles-OST-2012-EiTheLMP3 from MP3 to ARCHIVE/MP3"

Jeza: any chance to add the feature to specify ioFTPD path to configs and allow Your script to work fine, even if ran by Windows Task Scheduler?

Yil
02-03-2013, 11:06 PM
Is that error you were getting before when you ran it from ioFTPD's scheduler? If not then just run it from ioFTPD's scheduler else I'll be happy to help track down the issue so you can.

I'm not sure how C# handles writing to files if Jeza wants to write to it directly. Assuming it opens it for exclusive writes and can write whole lines at a time it should be ok, but it's not a great idea to write partial lines to the logfile as that tends to break simple scripts like eggdrop's which read it and get confused if lines aren't terminated.

biggysmlz
02-04-2013, 05:11 AM
Is that error you were getting before when you ran it from ioFTPD's scheduler? If not then just run it from ioFTPD's scheduler else I'll be happy to help track down the issue so you can.

I'm not sure how C# handles writing to files if Jeza wants to write to it directly. Assuming it opens it for exclusive writes and can write whole lines at a time it should be ok, but it's not a great idea to write partial lines to the logfile as that tends to break simple scripts like eggdrop's which read it and get confused if lines aren't terminated.

Yil, this is the error that occurs everytime its ran via Scheduler:

[2013-01-31 13:00:21] System.Runtime.InteropServices.COMException (0x80090006): Invalid Signature. (Exception from HRESULT: 0x80090006)
at System.StubHelpers.InterfaceMarshaler.ConvertToMan aged(IntPtr pUnk, IntPtr itfMT, IntPtr classMT, Int32 flags)
at Microsoft.Win32.Win32Native.CreateAssemblyNameObje ct(IAssemblyName& ppEnum, String szAssemblyName, UInt32 dwFlags, IntPtr pvReserved)
at Microsoft.Win32.Fusion.ReadCache(ArrayList alAssems, String name, UInt32 nFlag)
at System.Reflection.RuntimeAssembly.EnumerateCache(A ssemblyName partialName)
at System.Reflection.RuntimeAssembly.LoadWithPartialN ameInternal(AssemblyName an, Evidence securityEvidence, StackCrawlMark& stackMark)
at System.Reflection.Assembly.LoadWithPartialName(Str ing partialName, Evidence securityEvidence)
at System.Xml.Serialization.TempAssembly.LoadGenerate dAssembly(Type type, String defaultNamespace, XmlSerializerImplementation& contract)
at System.Xml.Serialization.XmlSerializer..ctor(Type type, String defaultNamespace)
at jeza.ioFTPD.Framework.Extensions.Deserialize[T](T xmlObject, String fileName, String defaultNamespace)
at jeza.ioFTPD.Framework.ConsoleAppTasks.ParseConfig( )
at jeza.ioFTPD.Archive.Program.Main()

jeza
02-04-2013, 08:14 AM
Yil
the script writes to ioFTPD.log via !putlog
Console.Write("!putlog {0}\n", message);

biggysmlz
i think it is the best if we wait if Yil comes with a solution,
else i can add an option that will write to ioFTPD.log and hope it will work :)

biggysmlz
02-04-2013, 11:08 AM
Yil
the script writes to ioFTPD.log via !putlog
Console.Write("!putlog {0}\n", message);

biggysmlz
i think it is the best if we wait if Yil comes with a solution,
else i can add an option that will write to ioFTPD.log and hope it will work :)

OK, well fixing Scheduler would be the best, so i dont have to trigger it via 3rd party programs :)

Yil
02-04-2013, 07:03 PM
I'm no C# guru, but it looks like System.Runtime.InteropServices.COMException is being thrown at a pretty low level in something I wouldn't think Jeza would be involved with.

I have no clue how to really tell the different C# runtimes apart easily but perhaps Jeza can tell us which he built against and you can double check you have it installed. For instance .NET 2, 3.0, 3.5, 4 and now 4.5 are all different and perhaps only the client vs full or whatever might matter as well.

biggysmlz
02-04-2013, 07:09 PM
I'm no C# guru, but it looks like System.Runtime.InteropServices.COMException is being thrown at a pretty low level in something I wouldn't think Jeza would be involved with.

I have no clue how to really tell the different C# runtimes apart easily but perhaps Jeza can tell us which he built against and you can double check you have it installed. For instance .NET 2, 3.0, 3.5, 4 and now 4.5 are all different and perhaps only the client vs full or whatever might matter as well.

jeza? let me know, and ill double check the system.

jeza
02-05-2013, 12:46 AM
it is build for .net Framework 4 (full version not client).

can you please show 2-3 more lines of debug file, before it throws the exception?
there should be something like 'Assembly.GetExecutingAssembly().Location...'

biggysmlz
02-05-2013, 09:48 AM
it is build for .net Framework 4 (full version not client).

can you please show 2-3 more lines of debug file, before it throws the exception?
there should be something like 'Assembly.GetExecutingAssembly().Location...'


Archive...
[2013-02-01 12:00:50] Assembly.GetExecutingAssembly().Location: ['c:\ioFTPD\scripts\jeza.ioFTPD.ArchiveScript\jeza. ioFTPD.Framework.dll']
[2013-02-01 12:00:51] System.Runtime.InteropServices.COMException (0x80090006): Invalid Signature. (Exception from HRESULT: 0x80090006)
at System.StubHelpers.InterfaceMarshaler.ConvertToMan aged(IntPtr pUnk, IntPtr itfMT, IntPtr classMT, Int32 flags)
at Microsoft.Win32.Win32Native.CreateAssemblyNameObje ct(IAssemblyName& ppEnum, String szAssemblyName, UInt32 dwFlags, IntPtr pvReserved)
at Microsoft.Win32.Fusion.ReadCache(ArrayList alAssems, String name, UInt32 nFlag)
at System.Reflection.RuntimeAssembly.EnumerateCache(A ssemblyName partialName)
at System.Reflection.RuntimeAssembly.LoadWithPartialN ameInternal(AssemblyName an, Evidence securityEvidence, StackCrawlMark& stackMark)
at System.Reflection.Assembly.LoadWithPartialName(Str ing partialName, Evidence securityEvidence)
at System.Xml.Serialization.TempAssembly.LoadGenerate dAssembly(Type type, String defaultNamespace, XmlSerializerImplementation& contract)
at System.Xml.Serialization.XmlSerializer..ctor(Type type, String defaultNamespace)
at jeza.ioFTPD.Framework.Extensions.Deserialize[T](T xmlObject, String fileName, String defaultNamespace)
at jeza.ioFTPD.Framework.ConsoleAppTasks.ParseConfig( )
at jeza.ioFTPD.Archive.Program.Main()

MONGi
02-21-2013, 03:28 PM
Hello together,

i testing the first time at this evening "jeza.ioFTPD.ArchiveScript".

Have read the readme.txt and configure the files as wrote there.

Microsoft .net Framework 4 Client Profile & Extended are installed.
My System: Intel I3-3,3GHz - 8GB RAM - OS:Windows Server 2008 R2 x64

I get follow error in "jeza.ioFTPD.Archive.Debug":
[2013-02-21 20:58:09] --------------------------------------------------------------
[2013-02-21 20:58:09] Archive...
[2013-02-21 20:58:09] Assembly.GetExecutingAssembly().Location: ['D:\ioFTPD\scripts\jeza.ioFTPD.ArchiveScript\jeza. ioFTPD.Framework.dll']
[2013-02-21 20:58:09] System.Runtime.InteropServices.COMException (0x80090006): Ungültige Signatur (Ausnahme von HRESULT: 0x80090006)
bei System.StubHelpers.InterfaceMarshaler.ConvertToMan aged(IntPtr pUnk, IntPtr itfMT, IntPtr classMT, Int32 flags)
bei Microsoft.Win32.Win32Native.CreateAssemblyNameObje ct(IAssemblyName& ppEnum, String szAssemblyName, UInt32 dwFlags, IntPtr pvReserved)
bei Microsoft.Win32.Fusion.ReadCache(ArrayList alAssems, String name, UInt32 nFlag)
bei System.Reflection.RuntimeAssembly.EnumerateCache(A ssemblyName partialName)
bei System.Reflection.RuntimeAssembly.LoadWithPartialN ameInternal(AssemblyName an, Evidence securityEvidence, StackCrawlMark& stackMark)
bei System.Reflection.Assembly.LoadWithPartialName(Str ing partialName, Evidence securityEvidence)
bei System.Xml.Serialization.TempAssembly.LoadGenerate dAssembly(Type type, String defaultNamespace, XmlSerializerImplementation& contract)
bei System.Xml.Serialization.XmlSerializer..ctor(Type type, String defaultNamespace)
bei jeza.ioFTPD.Framework.Extensions.Deserialize[T](T xmlObject, String fileName, String defaultNamespace)
bei jeza.ioFTPD.Framework.ConsoleAppTasks.ParseConfig( )
bei jeza.ioFTPD.Archive.Program.Main()

Ok, i absolutly don`t understand this error-text.
What happened or what to do to fix it?

My configure:

jeza.ioFTPD.Archive.exe.config:
<?xml version="1.0"?>
<configuration>
<appSettings>
<add key="FileNameDebug" value="d:\\ioFTPD\\logs\\jeza.ioFTPD.Archive.Debug"/>
<add key="FileNameInternalLog" value="d:\\ioFTPD\\logs\\jeza.ioFTPD.log" />
<add key="FileNameConfiguration" value="archiveConfiguration.xml"/>
<add key="LogToConsole" value="true"/>

<add key="UpdateDupe" value="true"/>
<add key="DataSourceDupe" value="Data Source=d:\\ioFTPD\\scripts\\jeza.ioFTPD.Manager\\j eza.ioFTPD.Dupe.s3db"/>
<add key="DataSourceDupeUpdateCommand" value="UPDATE Folders SET PathReal = '{1}', PathVirtual = '{2}' WHERE ReleaseName = '{0}'"/>
</appSettings>
</configuration>

archiveConfiguration.xml: (all other tasks are disabled)
<task>
<status>Enabled</status>
<actionType>Delete</actionType>
<source>J:\\TEMP</source>
<destination>J:\\TEMP</destination>
<action id="TotalFolderCount">
<value>4</value>
<minFolderAction>3</minFolderAction>
</action>
</task>

Thanks for all answers :)

MONGi
02-21-2013, 05:40 PM
I have update Microsoft .net Framework from 4.0 to 4.5.
(dotnetfx45_full_x86_x64)

But the error is is the same after scheduling.

Anybody a idea?

xy0thep
02-22-2013, 07:21 AM
thx for ur reply.

im gonna test w/o that dupe update just to see if it works (dupedb update is essential for me concerning archiving).

about the log-format again: is this independant from the move function or didnt it log anything here because like u said its the update failure?

will report back when i'm done testing

concerning the nx update ill report back aswell. i took a look into the sql structure and tables of the nx .db files and i think its easy to get an adjusted dupe update command done.

hi there,

now i did some testing while setting up a tempory ioFTPD + all ur addons in a virtual environment.

i figured that the nxtools dupe db update on the archiver would be the following:

<add key="DataSourceDupeUpdateCommand" value="UPDATE DupeDirs SET DirPath = '{2}' WHERE DirName = '{0}'"/>

nx db doesnt contain any info for physical path but thats not the problem.

while in your db ReleaseName equals DirName in nxtools there still is no problem.

now when we come to your PathVirtual it should equal DirPath in nxtools.

so far, so good... but now i encountered a problem i wasnt sure about before w/o testing your whole dupe script. while nxtools uses just /virtualpath/ in sql table you are using /virtualpath/releasename/.

this yields in a working update of the nx db but with the problem the updated entry is like:

/virtualpath/releasename/releasename/ :(

i guess its hardcoded and i normally wouldnt dare to ask but since im in love with nxtools and your archive script... do you know any solution to fix this??

im no coder, so forgive me if its too much, but...

...isnt it possible to make a nxtools compatible version of your scripts' .exe?

i guess its not many lines of code to have ur virtual path sql entry in there changed from /virtualpath/releasename/ to /virtualpath/ only

you'd make me very happy!

greets

OT: why does a mod always have to approve my posts?

MONGi
02-23-2013, 06:30 AM
So, now i have deinstallation all .net framework components and install framework 4 full again, restart.
If the scheduler start the task, i get now only one error in the error.log:

02-23-2013 12:25:35 Scheduler event 'Archive' returned error.

I`ve check the scheduler path again, but no fault located.

Archive = 2 23 * * EXEC ..\scripts\jeza.ioFTPD.ArchiveScript\jeza.ioFTPD.A rchive.exe scheduler
##changed 2 23 * * to actually time for testing##
Attention, the space in the line of .exe don`t exist, copy and paste ;)

What`s the problem now?

Thx for any answers :)

Greetings,
Mongi

MxxCon
02-23-2013, 02:55 PM
OT: why does a mod always have to approve my posts?
System thinks your posts are spam so they have to be approved/rejected.

jeza
02-24-2013, 03:27 AM
update : jeza.ioFTPD.Framework (http://jezatools.googlecode.com/files/jeza.ioFTPD.Framework.7z) (replace existing files)

DataSourceDupeUpdateCommand can now use next parameters

{0} : releaseName
{1} : realPath (full path + releasename)
{2} : virtualPath (full virtual path + releasename)
{3} : DestinationVirtual (from config)
{4} : Destination (from config)
{5} : SourceVirtual (from config)
{6} : Source (from config)
{7} : realpath (without releasename)


for the error 'System.Runtime.InteropServices.COMException (0x80090006):' i still have no idea.
workaround is to use windows task instead of scheduler in ioFTPD and set <add key="FileNameInternalLog" value="e:\\server\\ioFTPD\\logs\\jeza.ioFTPD.log" /> to ioFTPD.log

MONGi
02-24-2013, 02:56 PM
for the error 'System.Runtime.InteropServices.COMException (0x80090006):' i still have no idea.
workaround is to use windows task instead of scheduler in ioFTPD and set <add key="FileNameInternalLog" value="e:\\server\\ioFTPD\\logs\\jeza.ioFTPD.log" /> to ioFTPD.log

Hi jeza,

thank you for the quick reply.

I don`t understand, what i do now with:
add key="FileNameInternalLog" value="e:\\server\\ioFTPD\\logs\\jeza.ioFTPD.log" />[/CODE] to ioFTPD.log

Can you explain?

Sorry about my terrible english :)

Greetings,
Mongi

jeza
02-24-2013, 03:34 PM
change it to ioFTPD.log location
example:
<add key="FileNameInternalLog" value="c:\\ioFTPD\\logs\\ioFTPD.log" />

when you now execute the program from windows task, it will write a line into ioFTPD.log file for the anounce.

xy0thep
02-27-2013, 10:21 AM
update : jeza.ioFTPD.Framework (http://jezatools.googlecode.com/files/jeza.ioFTPD.Framework.7z) (replace existing files)

DataSourceDupeUpdateCommand can now use next parameters

{0} : releaseName
{1} : realPath (full path + releasename)
{2} : virtualPath (full virtual path + releasename)
{3} : DestinationVirtual (from config)
{4} : Destination (from config)
{5} : SourceVirtual (from config)
{6} : Source (from config)
{7} : realpath (without releasename)


for the error 'System.Runtime.InteropServices.COMException (0x80090006):' i still have no idea.
workaround is to use windows task instead of scheduler in ioFTPD and set <add key="FileNameInternalLog" value="e:\\server\\ioFTPD\\logs\\jeza.ioFTPD.log" /> to ioFTPD.log

first thanks for the implementation/modification. i copied over the new files and didnt change anything in settings. i had no problems anymore so far before.

OS is WinXP SP3 running virtually in a Win7x64. .NET Framework is v4.0

however i encountered a few new errors now :confused:

Case 1 ( <add key="DataSourceDupeUpdateCommand" value="UPDATE DupeDirs SET DirPath = '{3}' WHERE DirName = '{0}'"/> ); occurs aswell when you set DirPath = '{7}:

2013-02-27 15:46:24] --------------------------------------------------------------
[2013-02-27 15:46:24] Archive...
[2013-02-27 15:46:24] Assembly.GetExecutingAssembly().Location: ['C:\ioFTPD\scripts\ArchiveScript\jeza.ioFTPD.Frame work.dll']
[2013-02-27 15:46:24] Starting with task: ['ArchiveType: Move, ArchiveStatus: Enabled, Source: 'C:\\ioFTPD\\FTP-ROOT-DIR\\Incoming', Destination: 'F:\\Archive', Action: [Id: TotalFolderCount, Value: 10, MinFolderAction: 8], LogFormat: 'ARCHIVE: "moving \00302,08\002{0}\002\003 from \002{1}\002 to \002{2}\002"'']
[2013-02-27 15:46:24] ExecuteArchiveTask 'TotalFolderCount' on 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS'!
[2013-02-27 15:46:24] Source Folder : 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS'
[2013-02-27 15:46:24] Destination Folder: 'F:\Archive'
[2013-02-27 15:46:24] CopyTo: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS' to 'F:\Archive\ATEST-RLS'
[2013-02-27 15:46:24] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\.ioFTPD.backup' to 'F:\Archive\ATEST-RLS\.ioFTPD.backup'
[2013-02-27 15:46:24] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file0.zip' to 'F:\Archive\ATEST-RLS\file0.zip'
[2013-02-27 15:46:25] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file1.zip' to 'F:\Archive\ATEST-RLS\file1.zip'
[2013-02-27 15:46:25] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file10.zip' to 'F:\Archive\ATEST-RLS\file10.zip'
[2013-02-27 15:46:26] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file11.zip' to 'F:\Archive\ATEST-RLS\file11.zip'
[2013-02-27 15:46:27] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file12.zip' to 'F:\Archive\ATEST-RLS\file12.zip'
[2013-02-27 15:46:28] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file13.zip' to 'F:\Archive\ATEST-RLS\file13.zip'
[2013-02-27 15:46:28] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file14.zip' to 'F:\Archive\ATEST-RLS\file14.zip'
[2013-02-27 15:46:29] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file15.zip' to 'F:\Archive\ATEST-RLS\file15.zip'
[2013-02-27 15:46:29] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file16.zip' to 'F:\Archive\ATEST-RLS\file16.zip'
[2013-02-27 15:46:31] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file17.zip' to 'F:\Archive\ATEST-RLS\file17.zip'
[2013-02-27 15:46:32] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file18.zip' to 'F:\Archive\ATEST-RLS\file18.zip'
[2013-02-27 15:46:33] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file19.zip' to 'F:\Archive\ATEST-RLS\file19.zip'
[2013-02-27 15:46:35] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file2.zip' to 'F:\Archive\ATEST-RLS\file2.zip'
[2013-02-27 15:46:36] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file20.zip' to 'F:\Archive\ATEST-RLS\file20.zip'
[2013-02-27 15:46:37] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file21.zip' to 'F:\Archive\ATEST-RLS\file21.zip'
[2013-02-27 15:46:38] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file22.zip' to 'F:\Archive\ATEST-RLS\file22.zip'
[2013-02-27 15:46:40] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file23.zip' to 'F:\Archive\ATEST-RLS\file23.zip'
[2013-02-27 15:46:41] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file24.zip' to 'F:\Archive\ATEST-RLS\file24.zip'
[2013-02-27 15:46:42] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file25.zip' to 'F:\Archive\ATEST-RLS\file25.zip'
[2013-02-27 15:46:42] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file26.zip' to 'F:\Archive\ATEST-RLS\file26.zip'
[2013-02-27 15:46:42] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file27.zip' to 'F:\Archive\ATEST-RLS\file27.zip'
[2013-02-27 15:46:44] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file28.zip' to 'F:\Archive\ATEST-RLS\file28.zip'
[2013-02-27 15:46:45] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file29.zip' to 'F:\Archive\ATEST-RLS\file29.zip'
[2013-02-27 15:46:46] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file3.zip' to 'F:\Archive\ATEST-RLS\file3.zip'
[2013-02-27 15:46:47] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file30.zip' to 'F:\Archive\ATEST-RLS\file30.zip'
[2013-02-27 15:46:48] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file4.zip' to 'F:\Archive\ATEST-RLS\file4.zip'
[2013-02-27 15:46:50] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file5.zip' to 'F:\Archive\ATEST-RLS\file5.zip'
[2013-02-27 15:46:51] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file6.zip' to 'F:\Archive\ATEST-RLS\file6.zip'
[2013-02-27 15:46:52] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file7.zip' to 'F:\Archive\ATEST-RLS\file7.zip'
[2013-02-27 15:46:53] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file8.zip' to 'F:\Archive\ATEST-RLS\file8.zip'
[2013-02-27 15:46:54] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file9.zip' to 'F:\Archive\ATEST-RLS\file9.zip'
[2013-02-27 15:46:55] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file_id.diz' to 'F:\Archive\ATEST-RLS\file_id.diz'
[2013-02-27 15:46:55] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\rls.nfo' to 'F:\Archive\ATEST-RLS\rls.nfo'
[2013-02-27 15:46:55] CopyTo: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\( 147MB 31F - COMPLETE )' to 'F:\Archive\ATEST-RLS\( 147MB 31F - COMPLETE )'
[2013-02-27 15:46:55] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\( 147MB 31F - COMPLETE )\.ioFTPD' to 'F:\Archive\ATEST-RLS\( 147MB 31F - COMPLETE )\.ioFTPD'
[2013-02-27 15:46:55] CopyTo: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\Sample' to 'F:\Archive\ATEST-RLS\Sample'
[2013-02-27 15:46:55] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\Sample\.ioFTPD' to 'F:\Archive\ATEST-RLS\Sample\.ioFTPD'
[2013-02-27 15:46:55] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\Sample\jay028spf_274022113.jpg' to 'F:\Archive\ATEST-RLS\Sample\jay028spf_274022113.jpg'
[2013-02-27 15:46:55] DeleteFile: 'F:\Archive\ATEST-RLS\.ioFTPD'
[2013-02-27 15:46:55] File not found! 'F:\Archive\ATEST-RLS\.ioFTPD'
[2013-02-27 15:46:55] Updating DUPEDB with 'UPDATE DupeDirs SET DirPath = '{3}' WHERE DirName = '{0}''
[2013-02-27 15:46:55] DUPEDB : 'Data Source=c:\\ioFTPD\\scripts\\nxTools\\data\\DupeDir s.db'
[2013-02-27 15:46:55] releaseName='ATEST-RLS', realPath='C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS', virtualPath='/Archive//ATEST-RLS'
[2013-02-27 15:46:56] System.FormatException: Der Index, basierend auf 0 (null), muss größer als oder gleich Null sein, und kleiner als die Größe der Argumentenliste.
bei System.Text.StringBuilder.AppendFormat(IFormatProv ider provider, String format, Object[] args)
bei System.String.Format(IFormatProvider provider, String format, Object[] args)
bei System.String.Format(String format, Object arg0, Object arg1, Object arg2)
bei jeza.ioFTPD.Framework.ConsoleAppTasks.UpdateDupeDb (ArchiveTask archiveTask, DirectoryInfo directoryInfo)
bei jeza.ioFTPD.Framework.ConsoleAppTasks.ExecuteArchi veTask(ArchiveTask archiveTask, DirectoryInfo directoryInfo)
bei jeza.ioFTPD.Framework.ConsoleAppTasks.ExecuteArchi veTask(ArchiveTask archiveTask, List`1 sourceFolders)
bei jeza.ioFTPD.Framework.ConsoleAppTasks.ExecuteArchi veTasks()
bei jeza.ioFTPD.Framework.ConsoleAppTasks.Execute(Task Type taskType)
bei jeza.ioFTPD.Archive.Program.Main()

Case 2 ( <add key="DataSourceDupeUpdateCommand" value="UPDATE DupeDirs SET DirPath = '{2}' WHERE DirName = '{0}'"/> ):

[2013-02-27 15:48:37] --------------------------------------------------------------
[2013-02-27 15:48:37] Archive...
[2013-02-27 15:48:37] Assembly.GetExecutingAssembly().Location: ['C:\ioFTPD\scripts\ArchiveScript\jeza.ioFTPD.Frame work.dll']
[2013-02-27 15:48:38] Starting with task: ['ArchiveType: Move, ArchiveStatus: Enabled, Source: 'C:\\ioFTPD\\FTP-ROOT-DIR\\Incoming', Destination: 'F:\\Archive', Action: [Id: TotalFolderCount, Value: 10, MinFolderAction: 8], LogFormat: 'ARCHIVE: "moving \00302,08\002{0}\002\003 from \002{1}\002 to \002{2}\002"'']
[2013-02-27 15:48:38] ExecuteArchiveTask 'TotalFolderCount' on 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS'!
[2013-02-27 15:48:38] Source Folder : 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS'
[2013-02-27 15:48:38] Destination Folder: 'F:\Archive'
[2013-02-27 15:48:38] CopyTo: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS' to 'F:\Archive\ATEST-RLS'
[2013-02-27 15:48:38] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\.ioFTPD.backup' to 'F:\Archive\ATEST-RLS\.ioFTPD.backup'
[2013-02-27 15:48:38] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file0.zip' to 'F:\Archive\ATEST-RLS\file0.zip'
[2013-02-27 15:48:38] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file1.zip' to 'F:\Archive\ATEST-RLS\file1.zip'
[2013-02-27 15:48:38] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file10.zip' to 'F:\Archive\ATEST-RLS\file10.zip'
[2013-02-27 15:48:38] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file11.zip' to 'F:\Archive\ATEST-RLS\file11.zip'
[2013-02-27 15:48:38] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file12.zip' to 'F:\Archive\ATEST-RLS\file12.zip'
[2013-02-27 15:48:39] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file13.zip' to 'F:\Archive\ATEST-RLS\file13.zip'
[2013-02-27 15:48:40] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file14.zip' to 'F:\Archive\ATEST-RLS\file14.zip'
[2013-02-27 15:48:42] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file15.zip' to 'F:\Archive\ATEST-RLS\file15.zip'
[2013-02-27 15:48:42] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file16.zip' to 'F:\Archive\ATEST-RLS\file16.zip'
[2013-02-27 15:48:44] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file17.zip' to 'F:\Archive\ATEST-RLS\file17.zip'
[2013-02-27 15:48:46] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file18.zip' to 'F:\Archive\ATEST-RLS\file18.zip'
[2013-02-27 15:48:47] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file19.zip' to 'F:\Archive\ATEST-RLS\file19.zip'
[2013-02-27 15:48:48] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file2.zip' to 'F:\Archive\ATEST-RLS\file2.zip'
[2013-02-27 15:48:49] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file20.zip' to 'F:\Archive\ATEST-RLS\file20.zip'
[2013-02-27 15:48:50] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file21.zip' to 'F:\Archive\ATEST-RLS\file21.zip'
[2013-02-27 15:48:51] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file22.zip' to 'F:\Archive\ATEST-RLS\file22.zip'
[2013-02-27 15:48:52] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file23.zip' to 'F:\Archive\ATEST-RLS\file23.zip'
[2013-02-27 15:48:53] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file24.zip' to 'F:\Archive\ATEST-RLS\file24.zip'
[2013-02-27 15:48:55] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file25.zip' to 'F:\Archive\ATEST-RLS\file25.zip'
[2013-02-27 15:48:56] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file26.zip' to 'F:\Archive\ATEST-RLS\file26.zip'
[2013-02-27 15:48:57] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file27.zip' to 'F:\Archive\ATEST-RLS\file27.zip'
[2013-02-27 15:48:58] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file28.zip' to 'F:\Archive\ATEST-RLS\file28.zip'
[2013-02-27 15:48:59] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file29.zip' to 'F:\Archive\ATEST-RLS\file29.zip'
[2013-02-27 15:49:00] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file3.zip' to 'F:\Archive\ATEST-RLS\file3.zip'
[2013-02-27 15:49:00] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file30.zip' to 'F:\Archive\ATEST-RLS\file30.zip'
[2013-02-27 15:49:02] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file4.zip' to 'F:\Archive\ATEST-RLS\file4.zip'
[2013-02-27 15:49:03] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file5.zip' to 'F:\Archive\ATEST-RLS\file5.zip'
[2013-02-27 15:49:04] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file6.zip' to 'F:\Archive\ATEST-RLS\file6.zip'
[2013-02-27 15:49:05] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file7.zip' to 'F:\Archive\ATEST-RLS\file7.zip'
[2013-02-27 15:49:06] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file8.zip' to 'F:\Archive\ATEST-RLS\file8.zip'
[2013-02-27 15:49:07] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file9.zip' to 'F:\Archive\ATEST-RLS\file9.zip'
[2013-02-27 15:49:08] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\file_id.diz' to 'F:\Archive\ATEST-RLS\file_id.diz'
[2013-02-27 15:49:08] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\rls.nfo' to 'F:\Archive\ATEST-RLS\rls.nfo'
[2013-02-27 15:49:08] CopyTo: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\( 147MB 31F - COMPLETE )' to 'F:\Archive\ATEST-RLS\( 147MB 31F - COMPLETE )'
[2013-02-27 15:49:08] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\( 147MB 31F - COMPLETE )\.ioFTPD' to 'F:\Archive\ATEST-RLS\( 147MB 31F - COMPLETE )\.ioFTPD'
[2013-02-27 15:49:08] CopyTo: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\Sample' to 'F:\Archive\ATEST-RLS\Sample'
[2013-02-27 15:49:08] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\Sample\.ioFTPD' to 'F:\Archive\ATEST-RLS\Sample\.ioFTPD'
[2013-02-27 15:49:08] CopyFile: 'C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS\Sample\jay028spf_274022113.jpg' to 'F:\Archive\ATEST-RLS\Sample\jay028spf_274022113.jpg'
[2013-02-27 15:49:09] DeleteFile: 'F:\Archive\ATEST-RLS\.ioFTPD'
[2013-02-27 15:49:09] File not found! 'F:\Archive\ATEST-RLS\.ioFTPD'
[2013-02-27 15:49:09] Updating DUPEDB with 'UPDATE DupeDirs SET DirPath = '{2}' WHERE DirName = '{0}''
[2013-02-27 15:49:09] DUPEDB : 'Data Source=c:\\ioFTPD\\scripts\\nxTools\\data\\DupeDir s.db'
[2013-02-27 15:49:09] releaseName='ATEST-RLS', realPath='C:\ioFTPD\FTP-ROOT-DIR\Incoming\ATEST-RLS', virtualPath='/Archive//ATEST-RLS'
[2013-02-27 15:49:09] System.BadImageFormatException: Die Datei oder Assembly "System.Data.SQLite, Version=1.0.76.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139" oder eine Abhängigkeit davon wurde nicht gefunden. Es wurde versucht, eine Datei mit einem falschen Format zu laden.
Dateiname: "System.Data.SQLite, Version=1.0.76.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139"
bei jeza.ioFTPD.Framework.DataBase.ExecuteNonQuery(Str ing commandText)
bei jeza.ioFTPD.Framework.ConsoleAppTasks.UpdateDupeDb (ArchiveTask archiveTask, DirectoryInfo directoryInfo)
bei jeza.ioFTPD.Framework.ConsoleAppTasks.ExecuteArchi veTask(ArchiveTask archiveTask, DirectoryInfo directoryInfo)
bei jeza.ioFTPD.Framework.ConsoleAppTasks.ExecuteArchi veTask(ArchiveTask archiveTask, List`1 sourceFolders)
bei jeza.ioFTPD.Framework.ConsoleAppTasks.ExecuteArchi veTasks()
bei jeza.ioFTPD.Framework.ConsoleAppTasks.Execute(Task Type taskType)
bei jeza.ioFTPD.Archive.Program.Main()

WRN: Protokollierung der Assemblybindung ist AUS.
Sie können die Protokollierung der Assemblybindungsfehler aktivieren, indem Sie den Registrierungswert [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) auf 1 festlegen.
Hinweis: Die Protokollierung der Assemblybindungsfehler führt zu einer gewissen Leistungseinbuße.
Sie können dieses Feature deaktivieren, indem Sie den Registrierungswert [HKLM\Software\Microsoft\Fusion!EnableLog] entfernen.

Since my system language is German i'll translate you the german text passages:

- on case 1 it tells like "[2013-02-27 15:46:56] System.FormatException: Index, based on 0 (null)needs to be greater or equal 0, also smaller than the size of the argument list.
at ..."

- on case 2 "[2013-02-27 15:49:09] System.BadImageFormatException: File or Assembly "System.Data.SQLite, Version=1.0.76.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139" or a dependency of that wasn't found. It was tried to load a file with a wrong format.
Filename: "System.Data.SQLite, Version=1.0.76.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139"
at jeza.ioFTPD.Framework.DataBase.ExecuteNonQuery(Str ing commandText)
at jeza.ioFTPD.Framework.ConsoleAppTasks.UpdateDupeDb (ArchiveTask archiveTask, DirectoryInfo directoryInfo)
at jeza.ioFTPD.Framework.ConsoleAppTasks.ExecuteArchi veTask(ArchiveTask archiveTask, DirectoryInfo directoryInfo)
at jeza.ioFTPD.Framework.ConsoleAppTasks.ExecuteArchi veTask(ArchiveTask archiveTask, List`1 sourceFolders)
at jeza.ioFTPD.Framework.ConsoleAppTasks.ExecuteArchi veTasks()
at jeza.ioFTPD.Framework.ConsoleAppTasks.Execute(Task Type taskType)
at jeza.ioFTPD.Archive.Program.Main()

WRN: Protokollierung der Assemblybindung ist AUS.
Sie können die Protokollierung der Assemblybindungsfehler aktivieren, indem Sie den Registrierungswert [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) auf 1 festlegen.
Hinweis: Die Protokollierung der Assemblybindungsfehler führt zu einer gewissen Leistungseinbuße.
Sie können dieses Feature deaktivieren, indem Sie den Registrierungswert [HKLM\Software\Microsoft\Fusion!EnableLog] entfernen."

last part i guess is just a framework info, so i didnt translate it.

thx for reply in advance

jeza
03-05-2013, 02:13 AM
i will check it on weekend.

the second issue is probably wrong dll for sqlite.
make sure you use the 32 bit version on 32 bit machine
and 64 on 64 machine.

maybe becasue you run x64 win7 on x86 machine with XP?

xy0thep
03-05-2013, 12:49 PM
thx for checking...

yeah maybe that could be the issue..

im running win7 x64 and tested on windows virtual pc (its XP x86).
however framework 4.0 is installed within virtual and so probably is 32bit.

gotta backup my original ioFTPD within win7 and check again.

but im not getting ANY of those two errors when using your dupescript :confused: (also in virtual environment) so maybe its not the x64/x86 problem? im confused...

EDIT: i just tried it on the original configuration and its working perfectly fine!!!

so u dont have to look into it, must have been interferences between a x64 host and a x86 virtual environment...

thx for your modification again :D

jeza
03-09-2013, 03:32 AM
update ...
replace the existing files...
http://jezatools.googlecode.com/files/jeza.ioFTPD.Framework.7z

molbob
04-03-2013, 06:55 AM
Is there a way to ....
a. "site rescan all"`?
b. only add dirs to dupedb, not single files?

thx

jeza
04-03-2013, 11:43 PM
try "site rescan"
dupe works only for folders, not for files

MONGi
04-14-2013, 11:33 PM
Hi all,

I created a folder "_NUKED" and would now like that happens all the folders in which the word "NUKED" in the title, will be moved into the "_NUKED" directory.
Because, logically, there are several directories on the FTP I ask myself the question, as in this case, the configuration must look like.
my configuration looks like this, but there are only folders from the "MP3" moved, not from "MP3 ABOOK". My guess is the "-" causes Problems.

Example:

<task>
<regExpressionInclude>\S*(NUKED)\S*</regExpressionInclude>
<status>Enabled</status>
<actionType>Move</actionType>
<source>H:\\MP3</source>
<source>H:\\MP3-ABOOK</source>
<destination>D:\\ioFTPD\\sites\\_NUKED</destination>
<action id="TotalFolderCount">
<value>0</value>
<minFolderAction>0</minFolderAction>
</Action>

Does anyone have an idea?

Only "<source>H:\\</source>" dont work too.

Thanks for any help :)

Sorry, my english...

Regards,
Mongi

jeza
04-15-2013, 07:10 AM
create 2 tasks:

<task>
<regExpressionInclude>\S*(NUKED)\S*</regExpressionInclude>
<status>Enabled</status>
<actionType>Move</actionType>
<source>H:\\MP3</source>
<destination>D:\\ioFTPD\\sites\\_NUKED</destination>
<action id="TotalFolderCount">
<value>0</value>
<minFolderAction>0</minFolderAction>
</Action>
</task>
<task>
<regExpressionInclude>\S*(NUKED)\S*</regExpressionInclude>
<status>Enabled</status>
<actionType>Move</actionType>
<source>H:\\MP3-ABOOK</source>
<destination>D:\\ioFTPD\\sites\\_NUKED</destination>
<action id="TotalFolderCount">
<value>0</value>
<minFolderAction>0</minFolderAction>
</Action>
</task>

MONGi
04-15-2013, 01:43 PM
Hello jeza,

thanks for your quick response.

I tested your resume two days ago, it does not hatt.
From the "MP3" they were moved, not only from the "A-BOOKS". Nuked folders were included in both lists!

Any ideas?

Greetings


EDIT:

Hello, i`ve tested again and now it will work :)

Have follow missed:

<task>
<regExpressionInclude>\S*(NUKED)\S*</regExpressionInclude>
<status>Enabled</status>
<actionType>Move</actionType>
<source>H:\\MP3-ABOOK</source>
<destination>D:\\ioFTPD\\sites\\_NUKED</destination>
<action id="TotalFolderCount">
<value>0</value>
<minFolderAction>0</minFolderAction>
------------------------> </Action>
</task>

MONGi
04-28-2013, 05:06 AM
Hello,

i have a new question:

I want to move one or more folders with the entire contents after a certain time (f.e. 1day).
From I:/Test1 to I:/Test2

My Code:

<task>
<status>Enabled</status>
<actionType>MOVE</actionType>
<source>I:\\Test1</source>
<destination>I:\\Test2</destination>
<action id="DateOlder">
<value>1</value>
<minFolderAction>1</minFolderAction>
</action>
</Task>


My LOG:

[2013-04-28 11:22:18] Archive...
[2013-04-28 11:22:18] Assembly.GetExecutingAssembly().Location: ['D:\ioFTPD\scripts\jeza.ioFTPD.ArchiveScript\jeza. ioFTPD.Framework.dll']
[2013-04-28 11:22:18] System.InvalidOperationException: There is an error in XML document (156, 6). ---> System.InvalidOperationException: Instance validation error: 'MOVE' is not a valid value for ArchiveType.
at Microsoft.Xml.Serialization.GeneratedAssembly.XmlS erializationReaderTaskConfiguration.Read1_ArchiveT ype(String s)
at Microsoft.Xml.Serialization.GeneratedAssembly.XmlS erializationReaderTaskConfiguration.Read6_ArchiveT ask(Boolean isNullable, Boolean checkType)
at Microsoft.Xml.Serialization.GeneratedAssembly.XmlS erializationReaderTaskConfiguration.Read13_TaskCon figuration(Boolean isNullable, Boolean checkType)
at Microsoft.Xml.Serialization.GeneratedAssembly.XmlS erializationReaderTaskConfiguration.Read14_tasks()
--- End of inner exception stack trace ---
at System.Xml.Serialization.XmlSerializer.Deserialize (XmlReader xmlReader, String encodingStyle, XmlDeserializationEvents events)
at System.Xml.Serialization.XmlSerializer.Deserialize (XmlReader xmlReader, String encodingStyle)
at jeza.ioFTPD.Framework.Extensions.Deserialize[T](T xmlObject, String fileName, String defaultNamespace) in D:\jezatools\googlecode\trunk\ioFTPD\jeza.ioFTPD.F ramework\Extensions.cs:line 362
at jeza.ioFTPD.Framework.ConsoleAppTasks.ParseConfig( ) in D:\jezatools\googlecode\trunk\ioFTPD\jeza.ioFTPD.F ramework\ConsoleAppTasks.cs:line 42
at jeza.ioFTPD.Archive.Program.Main()


What exactly I am doing wrong?

Thanks for all answer :)

Greetings,
Mongi

MONGi
04-28-2013, 07:41 AM
Hello,

i have a new question:

I want to move one or more folders with the entire contents after a certain time (f.e. 1day).
From I:/Test1 to I:/Test2

My Code:

<task>
<status>Enabled</status>
<actionType>MOVE</actionType>
<source>I:\\Test1</source>
<destination>I:\\Test2</destination>
<action id="DateOlder">
<value>1</value>
<minFolderAction>1</minFolderAction>
</action>
</Task>


My LOG:

[2013-04-28 11:22:18] Archive...
[2013-04-28 11:22:18] Assembly.GetExecutingAssembly().Location: ['D:\ioFTPD\scripts\jeza.ioFTPD.ArchiveScript\jeza. ioFTPD.Framework.dll']
[2013-04-28 11:22:18] System.InvalidOperationException: There is an error in XML document (156, 6). ---> System.InvalidOperationException: Instance validation error: 'MOVE' is not a valid value for ArchiveType.
at Microsoft.Xml.Serialization.GeneratedAssembly.XmlS erializationReaderTaskConfiguration.Read1_ArchiveT ype(String s)
at Microsoft.Xml.Serialization.GeneratedAssembly.XmlS erializationReaderTaskConfiguration.Read6_ArchiveT ask(Boolean isNullable, Boolean checkType)
at Microsoft.Xml.Serialization.GeneratedAssembly.XmlS erializationReaderTaskConfiguration.Read13_TaskCon figuration(Boolean isNullable, Boolean checkType)
at Microsoft.Xml.Serialization.GeneratedAssembly.XmlS erializationReaderTaskConfiguration.Read14_tasks()
--- End of inner exception stack trace ---
at System.Xml.Serialization.XmlSerializer.Deserialize (XmlReader xmlReader, String encodingStyle, XmlDeserializationEvents events)
at System.Xml.Serialization.XmlSerializer.Deserialize (XmlReader xmlReader, String encodingStyle)
at jeza.ioFTPD.Framework.Extensions.Deserialize[T](T xmlObject, String fileName, String defaultNamespace) in D:\jezatools\googlecode\trunk\ioFTPD\jeza.ioFTPD.F ramework\Extensions.cs:line 362
at jeza.ioFTPD.Framework.ConsoleAppTasks.ParseConfig( ) in D:\jezatools\googlecode\trunk\ioFTPD\jeza.ioFTPD.F ramework\ConsoleAppTasks.cs:line 42
at jeza.ioFTPD.Archive.Program.Main()


What exactly I am doing wrong?

Thanks for all answer :)

Greetings,
Mongi

Hello,

i'm so stupid...ive changed only "MOVE" to "Move" and all work fine.

Thanks :)

Hans_
01-09-2014, 10:19 AM
update : jeza.ioFTPD.Framework (http://jezatools.googlecode.com/files/jeza.ioFTPD.Framework.7z) (replace existing files)

DataSourceDupeUpdateCommand can now use next parameters

{0} : releaseName
{1} : realPath (full path + releasename)
{2} : virtualPath (full virtual path + releasename)
{3} : DestinationVirtual (from config)
{4} : Destination (from config)
{5} : SourceVirtual (from config)
{6} : Source (from config)
{7} : realpath (without releasename)


for the error 'System.Runtime.InteropServices.COMException (0x80090006):' i still have no idea.
workaround is to use windows task instead of scheduler in ioFTPD and set <add key="FileNameInternalLog" value="e:\\server\\ioFTPD\\logs\\jeza.ioFTPD.log" /> to ioFTPD.log

hey jeza,

hope your a well and had a good start in to the new year so far...

is the framework update allready included in Version : 4.6.50.621 ?

how is development going regarding jeza tools? will there be a new version soon? (speed / bug improvments)

take care and keep up the good work your doing!

thank you and take care

jeza
01-11-2014, 12:36 AM
framework update is not included in 4.6.50.621...

nothing much is happening with the script development.
i am waiting for the c sharp shared memory dll to come out...

dragon001
02-16-2014, 05:34 PM
Hey jeza thanks for this amazing script, i am haveing the same problem as Carpo had in the first couple of threads. I installed the zipscript first and it worked fine out of the box, then i decided to install the maneger too, but then it went wrong. I got the same error has corpo did. Is there a fix i have missed ?

(23:29:05) [1] MKD test
(23:29:06) [1] 550 test: Action blocked by external script.

But if i remove the line:
OnNewDir = EXEC ..\scripts\jeza.ioFTPD.Manager\jeza.ioFTPD.Manager .exe newdir

Then it works again, is there a fix for this i have missed ? becuase i cant find it ?

jeza
02-17-2014, 04:32 PM
is there anything in the debug file?

by default it point to thislocation:
<add key="FileNameDebug" value="e:\\server\\ioFTPD\\logs\\jeza.ioFTPD.Manager.Debu g"/> <!-- full path to the file with debu info -->

dragon001
02-18-2014, 02:09 PM
Ok i got it working now, it missed a line in the config, and it all cool now. But when i delete a file there are still all the .missing files in the dir, how do i wipe/delete those without going into the foler in mycomputer etc ? is there a cmd or setnings there can delete those ?

jeza
02-19-2014, 01:54 AM
i assume you are are using the zipscript.
when you delete the .sfv file, all the files with the missing extension should be deleted as well...

dragon001
02-19-2014, 02:32 PM
Yes i am using the zipscript, using ioftpd 7.7.2, when i try to delete a dir it deletes all the .rar files inside the dir, but the main dir stays, and then the .missing are coming back, and i cant do the delete, it says:

(20:27:12) [2] 550 test: Directory not empty.

jeza
02-20-2014, 12:28 AM
is there anything in the debug file? inside the folder should be a file .ioMessage.debug or something like that...
or in the other debug file from Manager...

else it might be something with ioFTPD settings...

MONGi
02-22-2014, 08:16 PM
Hello Jeza,

i`ve a question.

If i use under scheduler:

Archive = 45 23 * * EXEC ..\scripts\jeza.ioFTPD.ArchiveScript\jeza.ioFTPD.A rchive.exe Scheduler



...i get follow debug-log:
[2014-02-23 02:04:57] --------------------------------------------------------------
[2014-02-23 02:04:57] Archive...
[2014-02-23 02:04:57] Assembly.GetExecutingAssembly().Location: ['d:\ioFTPD\scripts\jeza.ioftpd.archivescript\jeza. ioFTPD.Framework.dll']
[2014-02-23 02:04:57] System.Runtime.InteropServices.COMException (0x80090006): Ungültige Signatur (Ausnahme von HRESULT: 0x80090006)
bei System.StubHelpers.InterfaceMarshaler.ConvertToMan aged(IntPtr pUnk, IntPtr itfMT, IntPtr classMT, Int32 flags)
bei Microsoft.Win32.Win32Native.CreateAssemblyNameObje ct(IAssemblyName& ppEnum, String szAssemblyName, UInt32 dwFlags, IntPtr pvReserved)
bei Microsoft.Win32.Fusion.ReadCache(ArrayList alAssems, String name, UInt32 nFlag)
bei System.Reflection.RuntimeAssembly.EnumerateCache(A ssemblyName partialName)
bei System.Reflection.RuntimeAssembly.LoadWithPartialN ameInternal(AssemblyName an, Evidence securityEvidence, StackCrawlMark& stackMark)
bei System.Reflection.Assembly.LoadWithPartialName(Str ing partialName, Evidence securityEvidence)
bei System.Xml.Serialization.TempAssembly.LoadGenerate dAssembly(Type type, String defaultNamespace, XmlSerializerImplementation& contract)
bei System.Xml.Serialization.XmlSerializer..ctor(Type type, String defaultNamespace)
bei jeza.ioFTPD.Framework.Extensions.Deserialize[T](T xmlObject, String fileName, String defaultNamespace) in D:\jezatools\googlecode\trunk\ioFTPD\jeza.ioFTPD.F ramework\Extensions.cs:Zeile 361.
bei jeza.ioFTPD.Framework.ConsoleAppTasks.ParseConfig( ) in D:\jezatools\googlecode\trunk\ioFTPD\jeza.ioFTPD.F ramework\ConsoleAppTasks.cs:Zeile 42.
bei jeza.ioFTPD.Archive.Program.Main()

If i start jeza.ioFTPD.Archive.exe manually, per "site archive" or starting with windows task scheduling it`s works fine!?

Do you know what the problem is?

jeza
02-23-2014, 11:57 AM
https://oss.azurewebsites.net/forum/82792-post61.html

MONGi
02-23-2014, 01:33 PM
https://oss.azurewebsites.net/forum/82792-post61.html

Hi Jeza,

thanks for the reply.

i`ve Change the following files:
- jeza.ioFTPD.Framework.dll
- jeza.ioFTPD.Framework.pdb

...but still have the same error as before:
[2014-02-23 19:25:11] --------------------------------------------------------------
[2014-02-23 19:25:11] Archive...
[2014-02-23 19:25:11] Assembly.GetExecutingAssembly().Location: ['d:\ioFTPD\scripts\jeza.ioftpd.archivescript\jeza. ioFTPD.Framework.dll']
[2014-02-23 19:25:11] System.Runtime.InteropServices.COMException (0x80090006): Ungültige Signatur (Ausnahme von HRESULT: 0x80090006)
bei System.StubHelpers.InterfaceMarshaler.ConvertToMan aged(IntPtr pUnk, IntPtr itfMT, IntPtr classMT, Int32 flags)
bei Microsoft.Win32.Win32Native.CreateAssemblyNameObje ct(IAssemblyName& ppEnum, String szAssemblyName, UInt32 dwFlags, IntPtr pvReserved)
bei Microsoft.Win32.Fusion.ReadCache(ArrayList alAssems, String name, UInt32 nFlag)
bei System.Reflection.RuntimeAssembly.EnumerateCache(A ssemblyName partialName)
bei System.Reflection.RuntimeAssembly.LoadWithPartialN ameInternal(AssemblyName an, Evidence securityEvidence, StackCrawlMark& stackMark)
bei System.Reflection.Assembly.LoadWithPartialName(Str ing partialName, Evidence securityEvidence)
bei System.Xml.Serialization.TempAssembly.LoadGenerate dAssembly(Type type, String defaultNamespace, XmlSerializerImplementation& contract)
bei System.Xml.Serialization.XmlSerializer..ctor(Type type, String defaultNamespace)
bei jeza.ioFTPD.Framework.Extensions.Deserialize[T](T xmlObject, String fileName, String defaultNamespace) in D:\jezatools\googlecode\trunk\ioFTPD\jeza.ioFTPD.F ramework\Extensions.cs:Zeile 361.
bei jeza.ioFTPD.Framework.ConsoleAppTasks.ParseConfig( ) in D:\jezatools\googlecode\trunk\ioFTPD\jeza.ioFTPD.F ramework\ConsoleAppTasks.cs:Zeile 42.
bei jeza.ioFTPD.Archive.Program.Main()


Is the only way to use the Windows Task Scheduler?

Thx :)