Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - total_annihilation00

Pages: [1] 2 3 4 5 ... 7
1
Script / Re: [SCRIPT] Set As Background Wallpaper (Stretched etc.)
« on: February 14, 2026, 20:04:50 »
Found a better & more improved (& much faster) version of this script thanks to an updated Generative AI ! Use this instead (as old one is kept for pure posterity)…

claude-opus-4-6-thinking AI Generated:::
PowerShell Script (SetWallpaperMCStretch.ps1)
Code: [Select]
param([string]$ImagePath)

# Validate file exists
if (-not (Test-Path $ImagePath)) {
    Write-Error "File not found: $ImagePath"
    exit 1
}

# Set style: Stretch
Set-ItemProperty -Path 'HKCU:\Control Panel\Desktop' -Name WallpaperStyle -Value '2'
Set-ItemProperty -Path 'HKCU:\Control Panel\Desktop' -Name TileWallpaper -Value '0'

# Apply wallpaper via Win32 API
Add-Type -TypeDefinition @"
using System;
using System.Runtime.InteropServices;
public class Wallpaper {
    [DllImport("user32.dll", CharSet = CharSet.Auto)]
    public static extern int SystemParametersInfo(int uAction, int uParam, string lpvParam, int fuWinIni);
}
"@ -ErrorAction SilentlyContinue

# SPI_SETDESKWALLPAPER = 0x0014 (20)
# SPIF_UPDATEINIFILE | SPIF_SENDCHANGE = 3
[Wallpaper]::SystemParametersInfo(20, 0, $ImagePath, 3)

<#
Style Reference:
  Stretch : WallpaperStyle=2,  TileWallpaper=0
  Fill    : WallpaperStyle=10, TileWallpaper=0
  Fit     : WallpaperStyle=6,  TileWallpaper=0
  Center  : WallpaperStyle=0,  TileWallpaper=0
  Tile    : WallpaperStyle=0,  TileWallpaper=1
  Span    : WallpaperStyle=22, TileWallpaper=0
#>

MultiScript (Custom Command)
Code: [Select]
@var $imgPath = GetSourceFocusPath();
@var $scriptPath = "C:\\Path\\To\\SetWallpaperMCStretch.ps1";
@var $arguments = "-ExecutionPolicy Bypass -WindowStyle Hidden -File \"" + $scriptPath + "\" -ImagePath \"" + $imgPath + "\"";
MC.Run CMD="powershell.exe" ARG="{$arguments}" FLAGS="NOWAIT|NOCONSOLE";

Notes (if you want other styles later)
These registry values are the ones Windows uses:
  • Stretch: WallpaperStyle=2, TileWallpaper=0 (used above)
  • Fill: WallpaperStyle=10, TileWallpaper=0
  • Fit: WallpaperStyle=6, TileWallpaper=0
  • Center: WallpaperStyle=0, TileWallpaper=0
  • Tile: WallpaperStyle=0, TileWallpaper=1

These are just quality-of-life tweaks. The core SystemParametersInfo approach remains the right one.

2
Script / [SCRIPT] Set As Background Wallpaper (Stretched etc.)
« on: February 06, 2026, 03:38:16 »
Useful 'Set As Wallpaper (Stretched)' PowerShell Script I added as a 'Custom Context Menu' since MC doesn't give you the "Set As Background Image" option for instance when in a Flat View (doesn't show up), this custom command will always display though (change the Script FilePath tailored to your own path (remember directory subpaths must be in double slashes)) (To add to Context Menu goto Config > "Custom Context Menu") [Tested on MC 15.8 running Windows 10] (P.S: I made 5 PowerShell Scripts files, for each of the different modes (for instance: SetWallpaperMCStretched.ps1, SetWallpaperMCFill.ps1, SetWallpaperMCFit.ps1, SetWallpaperMCCenter.ps1, SetWallpaperMCTile.ps1)):

claude-opus-4-5-20251101-thinking-32k AI Generated::
## Step 1: Fixed PowerShell Script

Save this as `C:\SetWallpaper.ps1`:

```powershell
Code: [Select]
param([string]$ImagePath)

# Load WinForms so MessageBox works
# Add-Type -AssemblyName System.Windows.Forms

# Debug: Show what path was received (remove this line after testing)
# [System.Windows.Forms.MessageBox]::Show($ImagePath)

Set-ItemProperty -Path 'HKCU:\Control Panel\Desktop' -Name WallpaperStyle -Value '2'
Set-ItemProperty -Path 'HKCU:\Control Panel\Desktop' -Name TileWallpaper -Value '0'

$code = @"
using System;
using System.Runtime.InteropServices;
public class Wallpaper {
    [DllImport("user32.dll", CharSet = CharSet.Auto)]
    public static extern int SystemParametersInfo(int uAction, int uParam, string lpvParam, int fuWinIni);
}
"@

Add-Type -TypeDefinition $code -ErrorAction SilentlyContinue
[Wallpaper]::SystemParametersInfo(20, 0, $ImagePath, 3)
```
---

## Step 2: Corrected MC.Run Command

The issue is likely the variable not expanding properly. Try this (Save this as a User-Defined Command then add it to Config > Custom Context Menu to set the selected file as a Stretched Wallpaper):

```multiscript
Code: [Select]
@var $imgPath = GetSourceFocusPath();
@var $arguments = "-ExecutionPolicy Bypass -File \"C:\\SetWallpaper.ps1\" -ImagePath \"" + $imgPath + "\"";
MC.Run CMD="powershell.exe" ARG="{$arguments}";
```
---

Notes (if you want other styles later)
These registry values are the ones Windows uses:
  • Stretch: WallpaperStyle=2, TileWallpaper=0 (used above)
  • Fill: WallpaperStyle=10, TileWallpaper=0
  • Fit: WallpaperStyle=6, TileWallpaper=0
  • Center: WallpaperStyle=0, TileWallpaper=0
  • Tile: WallpaperStyle=0, TileWallpaper=1

3
Support and Feedback / Re: [BUG] Unicode NOT work
« on: February 03, 2026, 17:55:06 »
O.K. I did some further testing & got to the bottom of it: It only happens on custom-defined fonts. I had 1 duplicate separate MultiCommander using "Segoe UI" fonts, & it displayed the file properly, but my *main* MultiCommander, which uses "KDam Thmor Pro" (it's a Google font (free downloadable fonts.google.com)) 'causes severe rendering glitches when showing the file on screen !! So that's the prob really: the font, not an issue /w Windowz 10 or MC ! I think "KDam Thmor Pro" font can't display those unsupported & unusual characters !

4
Support and Feedback / Re: [BUG] Unicode NOT work
« on: February 03, 2026, 15:59:48 »
Strange. MC do not convert filenames and Windows NTFS is using Unicode for filename. So it should just work.

If you got a filename that does not work. create an empty file with that name.. and just 7Zip to pack that.. (7Zip should support unicode.. Zip does not) and send me it.

Here you go… (in .7z format) & 0 Btyes, created via "Edit new file" (Shift + F4) ! The file is glitchy when viewed from MC —it isn't rendered properly clearly, & you probably cannot interact /w it in any way whatsoever… P.S: Will expire in 50 days as I cannot upload .7z on this forum, so I used Upload.ee, they mangle the filename but the PDF inside should be intact. I don't know whether it's safe to upload to Dropbox/ Mega.nz/ 4Shared. Lemme know if you run into any issues /w the upload… https://www.upload.ee/files/19043668/Introduction_to_OOP_with_C____Josep_Maria_Rib___Ismet_Maksumi___Sini_a__ehaji____Z-Library_.7z.html

5
Support and Feedback / Re: Column Width Problem
« on: February 03, 2026, 11:58:53 »
Once you've tweaked the Columns, if you right click the Columns > Customize Columns… > Create a New Column Layout via the 'Plus' icon > Enter all your Drives into "Autoload on Path" /w "Valid For All Subpaths Under This Path" Checked & type out & click Add for each Drive (an Asterisk should appear in the Combo Box, then Save, when you open any New Tab or Folder, this Column Layout is enforced strictly, it's amazing, I had this same issue but it's fixed !
Add the New Drives like this:
C:\
D:\
F:\
G:\
H:\
(one by one, the C:\ & D:\ are my Hard Drives, & F:\ & G:\ & H:\ are my removable USB drives (tailor it to your needs).) & voila, you'll never have to resize the Columns or worry about them again !! —Hope it helps !

6
Support and Feedback / Re: [BUG] Unicode NOT work
« on: February 03, 2026, 11:37:40 »
Yes I've experienced this as well, I d'ld some PDF's /w strange characters (authors names with accent characters), & MC didn't know how to display the files properly —until I went into Explorer & renamed them… I had this as a filename (14.6 MB):

Code: [Select]
Introduction to OOP with C++ (Josep Maria Ribó, Ismet Maksumić, Siniša Čehajić) (Z-Library).pdf

7
Just curious: would it be possible for you to serialize the Loop setting so it's persistent across launches ? I hate having to right-click & toggle it On everytime. ??? Please consider it, because that is how I intended it to function —that's why I said "make it a Checkbox option in Core Settings or Explorer Panel" —I'am fine /w it as it is (in Popup Menu), but I'd just like it to remember the setting (should stick for the next launch automatically) ! Thank you ! :D

[Workaround]: I was able to emulate setting of the Loop to PlayAudio via a User-Defined Command ("AR") MultiScript set on AutoRun=AR CommandLine parameter at Startup —but I would still like this implemented (the persistent Loop setting) in a future release please::

Code: [Select]
// Set Left Tab Group to 100% width
MC.RunCmd ID="Core.1205";

// Emulate enabling Loop mode by playing a dummy file with LOOP=1
MC.PlayAudio FILE=" " DURATION=0 LOOP=1;

// Immediately stop playback to leave Loop enabled
MC.StopAudio;

8
It's working brilliantly, thank you so much Mathias !! 8) I like how it plays the audio from video files as well (MP4's), I'am currently using this feature extensively !! 🙏 Happy holidays to everyone & God bless ! 🎄🎅

9
Yes the Windows MediaEngine (that MC is using) is not the full Media Player. it is a core part in Windows for playing actual audio (.MID are not audio files.  but instruction on how to generate sound.)

So Sorry. Mid files will probably not work

That's a pity, I actually thought it would play though. ;D I could still loop my MP3 songs…

10
No that .mid did not play on my Windows 11. Look like it is not supported by default. But maybe if some 3rd party codec is installed.

Oh I see, it plays on "Media Player Classic: Home CInema" app (MPC: HC, part of K-Lite Codec Pack (Standard Edition).) I have Windows 10 by the way. It's alright then… Would still be nice to loop supported file formats. :D

11
I see If I can add looping..

I can add so .mid files are sent to the MediaEngine. But if something is actually playing or not is not up to MC. Playing audio is handled by Windows. So it depends on what codecs is installed in Windows.

Alright, thank you —that'd be excellent ! Ideally, Looping should be configured via a checkbox setting in either Core Settings or Explorer Panel Settings (whichever, I get confused.) Also, .MID should be played —I'am not 100% certain though. :)

P.S: You can test /w this .MID (MIDI) audio file (they are all generally very tiny file-sized): BSQ.MID (36 KB)

12
A checkbox setting to enable or disable looping of audio files during playback via the built-in Audio Previewer in MC. Also support for ".MID" files would be an added bonus !!

13
Beta Releases / Re: 15.7 BETA
« on: December 13, 2025, 00:17:54 »
Don't COMBO have a special quarantine area where it places files ? It just deletes them ?
It might be that COMBO have renamed them. It does not have an UI where you see files it quarantine ? and from there you can bring them back ? Most AV software has that.
( From AI :
The COMODO quarantine area is a secure, isolated section within Comodo antivirus software where potentially malicious or suspicious files are stored.
These files are encrypted and prevented from running to ensure they cannot infect your system or cause any harm)
So you might need to restore them from within COMBO.. you will not find them your self


Maybe change AV software.  Often built in Defender is good enough unless you don't have special requirements.

Problem with all FileManager is that AV software finds them suspicious.. Here is an app that have code much code in it to handle files, copy, rename, and delete them.. That is very suspicious.  So all FileManager often lots gets false positives results on them. And there is nothing to do about it.

No worries, it's all good ! & no, COMODO does a weird 'Reverse & Block' operation when it detects CryptoLocker threats (ofc this was benign) & so all the transfers are cancelled & undone. It's alright though, I guess it guards the Downloads folder a little too aggressively. Those games were just Zips of the Installers, the actual games are already installed (I re-downloaded a bunch of them in GOG edition so they're guaranteed to work.) :D

14
Beta Releases / Re: 15.7 BETA
« on: December 12, 2025, 13:03:32 »
Suffered from 2 data losses in MC: #1 My Aliases were lost #2 Yesterday I was attempting to move 5-7 Zip Files (400 MB total of MS-DOS games) & COMODO flagged MC as 'Possible Cryptolocker' & all my files got lost in the transfer when COMODO quarantined MC. I searched everywhere for the Zips but they were lost forever. This specific Cryptolocker transfer abortions happened to me before twice: when moving some images to & fro Downloads folder, & also when mass-renaming files in Downloads, triggering COMODO Cryptolocker Recognizers ! It's a shame —they were retro-games ! (though I recovered a bunch of them (GOG editions so they're guaranteed to work !)) I remember setting MultiCommander as Trusted in COMODO AV so I never saw this coming ! (maybe 'cause of an Invalid Certificate issue ? Just a hunch…) :'(
P.S: I fixed it (hopefully) by disabling the CryptoLocker Recognizer module in COMODO AV/FW.

15
Beta Releases / Re: 15.7 BETA
« on: December 12, 2025, 03:17:26 »
Before, you could press Ctrl+F, search for something, & then when you pressed Enter the focus would switch back to the Explorer topmost Folder/File —now it doesn't switch focus back to the Explorer directory items (List View.) I miss that ! I have to use the mouse to single-click back to the Explorer view to use arrow keys to peruse items [after using the Find Filter Box] —it's a little inconvenient ! Could you bring that functionality back please ?

It is not changed.  It should work..

* Ctrl+F  focus set to Filter View box..
* Type something.. . the list view is filtered
* Confirm with Return key
* Focus is back to filelist

Works for me. Use that daily. 
Strange.What happens to focus.. DO you see what focus ends up.. still in Filter box ? some other place ?  does tab works to change tab side focus..?

Yeah it's working now, but I will test further to find out the root 'cause of it (& how to reproduce it) :D

16
Beta Releases / Re: 15.7 BETA
« on: December 11, 2025, 12:05:36 »
Before, you could press Ctrl+F, search for something, & then when you pressed Enter the focus would switch back to the Explorer topmost Folder/File —now it doesn't switch focus back to the Explorer directory items (List View.) I miss that ! I have to use the mouse to single-click back to the Explorer view to use arrow keys to peruse items [after using the Find Filter Box] —it's a little inconvenient ! Could you bring that functionality back please ?

17
Beta Releases / Re: PictureViewer Beta ArrowKeys Perusal To Next Item
« on: December 08, 2025, 09:06:10 »
I'am happy to report that the 'Internal PictureViewer' is working perfectly fine now ! Tested in a bunch of folders & have no issues anymore ! 👍

18
Beta Releases / Re: 15.7 BETA
« on: December 08, 2025, 05:39:52 »
After update to 15.7 Beta custom menu items (not everything) stopped working (not displayed).
All scripts (*.udc files) are stored in zip file (everything was fine with the same files/config in 15.6)
-Pawel

Perhaps your Custom Context Menus commands are set to or should be Applied to Files Only, and not on Folders (as may be the case,) it sometimes glitches when you execute [Context Menu] UDC's on Folders. I can confirm the Custom Context Menu's & UDC's are working properly for me (UDC's are in .UDC format & not .Zip)

19
Beta Releases / Re: 15.7 BETA
« on: December 04, 2025, 20:36:37 »
MC does not remember the toolbar settings, and if you disable all toolbars in the settings – not under View – it does remember that, but the space where the toolbars would normally appear is still shown and not used for the explorer panels.

In Explorer Panel Configuration > Layout, you can disable certain toolbar items there, like the Drive Commands & Virtual File System & Special/ Cloud Folders. For now that seems to be working. Perhaps the bug is because it is configured in both places (Explorer Panel Config & Right Click Menu on Toolbar) ?

20
Yes is fixed for next released

Thank you Mathias, I can finally rest knowing my Aliases are safe & sound !

21
Hey Mathias can we fix this Alias bug please ? Sorting Search Results deletes all other Aliases on hitting Apply !  :-\

22
I fixed the cropped out elements by changing my Systemwide [WindowBlinds] Font to Segoe UI, from the huge Lucinda Console ! Now everything appears prim & proper  8)

23
I got 2 scripts written by AI's, was wondering if either of them will work ? Script #1 is by far a more powerful AI:

Script #1::
Code: [Select]
@var $i;
@var $item;
@var $path;

// ============================================================
// CONFIGURATION SECTION
// ============================================================

// 1. Folders to EMPTY (Delete all files and subfolders inside, keep folder)
@var $foldersToEmpty = array(
    "D:\\Games\\AOE II HD\\Logs\\",
    "D:\\Games\\AOMX-TOTD\\Logs\\"
);

// 2. Folders to clean specifically (e.g. *.log)
// format: array( "Folder Path", "Mask" )
@var $foldersToCleanMask = array(
    "D:\\Games\\ORA\\Support\\Replays\\cnc\\", "*.log",
    "D:\\Games\\ORA\\Support\\Replays\\d2k\\", "*.log"
);

// 3. Specific Files to Delete
@var $filesToDelete = array(
    "D:\\Games\\Delta Force 3\\DDrawCompat-DFLW.log",
    "D:\\Games\\Delta Force 4\\DDrawCompat-DFTFD.log"
);

// ============================================================
// EXECUTION SECTION
// ============================================================

// --- Task 1: Empty Contents of Folders ---
for( $i = 0; $i < count($foldersToEmpty); $i++ )
{
    $path = $foldersToEmpty[$i];
    if( FileSystem_PathIsFolder( $path ) )
    {
        // Call custom function
        EmptyFolderContents( $path );
    }
}

// --- Task 2: Delete by Mask (*.log) ---
// Note: Array is Key/Value pairs, so we step by 2
for( $i = 0; $i < count($foldersToCleanMask); $i = $i + 2 )
{
    $path = $foldersToCleanMask[$i];
    @var $mask = $foldersToCleanMask[$i+1];
   
    if( FileSystem_PathIsFolder( $path ) )
    {
        DeleteFilesByMask( $path, $mask );
    }
}

// --- Task 3: Delete Specific Files ---
for( $i = 0; $i < count($filesToDelete); $i++ )
{
    $path = $filesToDelete[$i];
    if( FileSystem_PathIsFile( $path ) )
    {
        FileSystem_DeleteFile( $path );
    }
}

// ============================================================
// FUNCTIONS
// ============================================================

// Function to delete all contents (files + dirs) inside a path
@func EmptyFolderContents( $rootPath )
{
    // Ensure path ends with slash
    if( StrIsWildMatch( "*\\", $rootPath ) == 0 )
    {
        $rootPath = $rootPath ^ "\\";
    }

    // 1. Delete ALL Files
    @var $files = MC.Folder.GetItems( $rootPath, "*", "FILES" );
    @var $f;
    @var $count = count($files);
   
    for( $f = 0; $f < $count; $f++ )
    {
        // Full path construction
        @var $fullFilePath = $rootPath ^ $files[$f];
        FileSystem_DeleteFile( $fullFilePath );
    }

    // 2. Delete ALL Sub-Folders
    // We do this after files. FileSystem_DeleteFolder is recursive.
    @var $dirs = MC.Folder.GetItems( $rootPath, "*", "FOLDERS" );
    $count = count($dirs);

    for( $f = 0; $f < $count; $f++ )
    {
        @var $fullDirPath = $rootPath ^ $dirs[$f];
        FileSystem_DeleteFolder( $fullDirPath );
    }
}

// Function to delete specific file masks inside a path
@func DeleteFilesByMask( $rootPath, $fileMask )
{
    // Ensure path ends with slash
    if( StrIsWildMatch( "*\\", $rootPath ) == 0 )
    {
        $rootPath = $rootPath ^ "\\";
    }

    // Get files matching mask
    @var $files = MC.Folder.GetItems( $rootPath, $fileMask, "FILES" );
    @var $f;
    @var $count = count($files);

    for( $f = 0; $f < $count; $f++ )
    {
        @var $fullFilePath = $rootPath ^ $files[$f];
        FileSystem_DeleteFile( $fullFilePath );
    }
}

Alternate Script #2::
Code: [Select]
@var $foldersToEmpty = {
    "D:\Games\AOE II HD\Logs\";
    "D:\Games\AOMX-TOTD\Logs\"
};

@var $logFolders = {
    "D:\Games\ORA\Support\Replays\cnc\";
    "D:\Games\ORA\Support\Replays\d2k\"
};

@var $specificFiles = {
    "D:\Games\Delta Force 3\DDrawCompat-DFLW.log";
    "D:\Games\Delta Force 4\DDrawCompat-DFTFD.log"
};

// ──────────────────────────────────────────────────
// 1. Completely empty selected folders (keep folder itself)
// ──────────────────────────────────────────────────
@var $n = 0;
@var $count = @arraysize($foldersToEmpty);

for( $n = 0; $n < $count; $n++ )
{
    @var $path = $foldersToEmpty[$n];

    // Delete EVERYTHING inside (files + folders + subfolders recursively)
    DeleteFiles $path* /F /S /Q;

    // Optional: show what was cleaned (remove // if you want feedback)
    // Log "Emptied: " + $path;
}

// ──────────────────────────────────────────────────
// 2. Delete only *.log files in specific folders (keep everything else)
// ──────────────────────────────────────────────────
$n = 0;
$count = @arraysize($logFolders);

for( $n = 0; $n < $count; $n++ )
{
    @var $path = $logFolders[$n];
    DeleteFiles $path*.log /F /S /Q;
    // Log "Deleted *.log in: " + $path;
}

// ──────────────────────────────────────────────────
// 3. Delete specific individual files
// ──────────────────────────────────────────────────
$n = 0;
$count = @arraysize($specificFiles);

for( $n = 0; $n < $count; $n++ )
{
    @var $file = $specificFiles[$n];
    if( @fileexists($file) )
    {
        DeleteFile $file;
        // Log "Deleted: " + $file;
    }
}

// ──────────────────────────────────────────────────
// Finished
// ──────────────────────────────────────────────────
MessageBox "info", "All cleanup tasks completed successfully!", "Multi Commander Cleanup";

P.S: 3 types of Delete Operations: Delete contents inside certain folders, delete specific filetypes inside certain folders, and delete individual files. I want them permanently deleted but /w Confirmation !

24
The issue is a data integrity problem within the Aliases Manager. A critical bug causes data loss when a user searches for an alias, sorts the results by clicking the Alias column, and then applies the changes. This action unexpectedly deletes all aliases except those in the search results. The expected behavior is for the sort function to apply to all aliases, not just the filtered ones. Furthermore, the system should restore the full alias list when the search query is cleared. This behavior is considered a fatal flaw, as it results in the loss of aliases and can be triggered by a specific sequence of actions.
P.S: It only happens when you click to Sort on populated Search fields !

25
I don't have a script that does that now. I will check later if I have one that scan filesystem. It a bit complex. need to use function. and call function for each folder recursivly.

Alright, appreciate it ! well hope it's not too complex ! But nevertheless I would love to tweak it to my needs !

I had something that generated pdf before but it stopped working after webpage redesign and I had not had time to look into it.
but all documentation is available on github. at https://github.com/MultiCommander/MultiCommander-Documentation

Thanks a million ! 🙏

Pages: [1] 2 3 4 5 ... 7