topbanner_forum
  *

avatar image

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
  • Wednesday April 24, 2024, 8:18 am
  • Proudly celebrating 15+ years online.
  • Donate now to become a lifetime supporting member of the site and get a non-expiring license key for all of our programs.
  • donate

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 - inshadow [ switch to compact view ]

Pages: [1]
1
Post New Requests Here / Re: Change Desktop Folder
« on: November 29, 2007, 10:41 AM »
SUperior SU - Desktop Switcher

its a windows profile changer  :huh:

Yes it is.
But the functionality of the Desktop Folder Switcher script resembles it very much.
Anyway, I tried it out and think it's overkill. I think it takes too many resource for each "desktop" when comparing to our simple solution.
I still want to try to help developing our script, as I need this myself. I don't have much time for this in December though.

2
Post New Requests Here / Re: Change Desktop Folder
« on: November 24, 2007, 03:42 PM »
hey thanks perlguy..  :)

 :tellme: im still using fat32 fs for my xp sp2.. but the ahk script didn't work for me(or ... coz of I didn't try the junction.exe from sysinternals yet)..  anyways, the program "ManageDesk" 's  folder switching did work, but not free (meow  :( ) . can we ask them how they did it?
As far as I know - junctions only works with NTFS.
There is also something called Shell Links. It's a parallel to the SymLinks of Linux - I think. But not completely the same.
Anyway. I tried to create such a Shell Link with the Winbolic Link program, and I think it will work for this purpose (not the Winbolic app but the Shell Link method).
The only problem, is that I haven't found any command line program which creates Shell Links.

3
Post New Requests Here / Re: Change Desktop Folder
« on: November 24, 2007, 08:43 AM »
Wishing list:
  • Save and restore desktop icon positions (this should be possible somehow, as I have seen other small apps for this).
  • Switch folder for the the quick launch. (will this work?)

I don't know yet what is possible with autohotkey. Would it be possible to control a Virtual Desktop application with a autohotkey application?
This way we could combine this script with a Virtual Desktop application.

4
Post New Requests Here / Re: Change Desktop Folder
« on: November 24, 2007, 03:48 AM »
Ok, cleaned up, refactored the bits that do all the real work into a function...  In addition to the menu, I set Win+1/2/3/4 as hotkeys as well.  Changed to pickup the user's profile directory from the environment.  Registry is used to remember which desktop is current between sessions, and if restarting the script.
Great. Clever enough.

The only thing missing is a routine to do the initial setup... you need to move your current %USERPROFILE%\Desktop to %USERPROFILE%\Desktop1, create %USERPROFILE%\Desktop2 thru 4, and then run junction.exe manually to point Desktop to Desktop1.  I thought it might be best for anyone wanting to use this to understand how junction.exe works, rather than just doing it for them.
Why not just have folder called DesktopJunction which could be the Desktop Folder Location and then keep the default Desktop folder.
Also I think that junction part should be automated. An warning could be displayed when starting the app.

For me, having the ini seemed overkill, so I left out those bits.
I agree on this.

Wishing list:
Switch folder for the the quick launch. (will this work?)

5
Post New Requests Here / Re: Change Desktop Folder
« on: November 23, 2007, 01:24 AM »
Rather than use up a drive letter with subst, I chose to use junction.exe (from sysinternals) to delete/create junctions when selecting a new desktop.
That requires a NTFS partition right?
I can see that my harddrive is formattet as NTFS. Is this standard today for Windows XP and up?

/Stig

6
Post New Requests Here / Re: Change Desktop Folder
« on: November 22, 2007, 02:51 PM »
changed:
runwait %comspec% /c subst Z: %dir1%,,Hide
to:
runwait %comspec% /c subst Z: "%dir1%",,Hide

;
; AutoHotkey Version: 1.x
; Language:       English
; Platform:       Win9x/NT
;
;
; Script Function:
; Change the location of the Default Desktop Folder through right-click menu on the systray icon.
;

#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
#Persistent
;Regread, current, HKCU, Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders, Desktop
RegWrite, REG_EXPAND_SZ, HKCU, Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders, Desktop, Z:\
runwait, %comspec% /c subst Z: "`%USERPROFILE`%\Desktop",,Hide
DllCall("Shell32\SHChangeNotify", UInt, 0x08000000, UInt, 0, UIntP, 0, UIntP, 0)
GoSub,INIREAD
GoSub,TRAYMENU

INIREAD:
IfNotExist,%A_ScriptName%.ini
{
  IniWrite,Location 1,%A_ScriptName%.ini,Locations,dir1
  IniWrite,Location 2,%A_ScriptName%.ini,Locations,dir2
  IniWrite,Location 3,%A_ScriptName%.ini,Locations,dir3
  IniWrite,Location 4,%A_ScriptName%.ini,Locations,dir4
  IniWrite,`%USERPROFILE`%\Desktop,%A_ScriptName%.ini,Locations,Default
}
IniRead,dir1,%A_ScriptName%.ini,Locations,dir1
IniRead,dir2,%A_ScriptName%.ini,Locations,dir2
IniRead,dir3,%A_ScriptName%.ini,Locations,dir3
IniRead,dir4,%A_ScriptName%.ini,Locations,dir4
IniRead,default,%A_ScriptName%.ini,Locations,Default
Return




TRAYMENU:

Menu,Tray,NoStandard
Menu,Tray,DeleteAll
Menu,Tray,Add,Desktop Switcher, CURRENT
Menu,Tray,Add,
Menu,Tray,Add,"%dir1%",DIR1
Menu,Tray,Add,"%dir2%",DIR2
Menu,Tray,Add,"%dir3%",DIR3
Menu,Tray,Add,"%dir4%",DIR4
Menu,Tray,Add,Default,DEFAULT
Menu,Tray,Add
Menu,Tray,Add,Edit,EDIT
Menu,Tray,Add,Reload,RELOAD
Menu,Tray,Add,
Menu,Tray,Add,E&xit,EXIT
Menu,Tray,Tip,%A_ScriptName%
; Menu,Tray,Check,%current%
Return

CURRENT:

DIR1:
runwait %comspec% /c subst Z: /d,,Hide
runwait %comspec% /c subst Z: "%dir1%",,Hide
DllCall("Shell32\SHChangeNotify", UInt, 0x08000000, UInt, 0, UIntP, 0, UIntP, 0)
Return

DIR2:
runwait %comspec% /c subst Z: /d,,Hide
runwait %comspec% /c subst Z: "%dir2%",,Hide
DllCall("Shell32\SHChangeNotify", UInt, 0x08000000, UInt, 0, UIntP, 0, UIntP, 0)
Return

DIR3:
runwait %comspec% /c subst Z: /d,,Hide
runwait %comspec% /c subst Z: "%dir3%"
DllCall("Shell32\SHChangeNotify", UInt, 0x08000000, UInt, 0, UIntP, 0, UIntP, 0)
Return

DIR4:
runwait %comspec% /c subst Z: /d
runwait %comspec% /c subst Z: "%dir4%"
DllCall("Shell32\SHChangeNotify", UInt, 0x08000000, UInt, 0, UIntP, 0, UIntÃ…, 0)
Return

DEFAULT:
RegWrite, REG_EXPAND_SZ, HKCU, Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders, Desktop, %default%
DllCall("Shell32\SHChangeNotify", UInt, 0x08000000, UInt, 0, UIntP, 0, UIntÃ…, 0)
ExitApp
Return

EDIT:
Runwait,%A_ScriptName%.ini
Return

RELOAD:
Reload

EXIT:
ExitApp

7
Post New Requests Here / Re: Change Desktop Folder
« on: November 21, 2007, 01:29 AM »
Got a new idea which doesn't involve registry editing. It works, but I hadn't had time to test further yet if it solves any problems.
The idea is to use the subst command to create a virtual drive.
For instance: subst k: "C:\Documents and Settings\username\Desktop
This creates a drive which points to the usual Desktop folder.
Then I can just let the desktop folder location be drive k:
If I want to switch desktop folder, then I just delete virtual drive k:
subst k: /d
and create a new one pointing on another folder:
subst k: "C:\Documents and Settings\username\anotherDesktopFolder

8
Post New Requests Here / Re: Change Desktop Folder
« on: November 20, 2007, 03:08 PM »
I have also been experimenting with this code, to see if I could get something useful.
But nevertheless, it seems I am stuck with three problems.
1) sometimes multiple desktop refreshes are needed.
2) after having refreshed the desktop, another refresh (f5 etc) is needed to see changes - for instance copying and deleting files on the desktop
3) icon positions are not saved
I have tried to use other methods of writing to the registry and also other methods of refreshing the desktop.

Has anyone got any further?

Pages: [1]