Homebrew 3DSShellExt, show .cia .3dsx .smdh icons in windows

kkguo

Member
OP
Newcomer
Joined
Apr 27, 2017
Messages
21
Trophies
0
XP
82
Country
United States
This is a Shell Extension for Windows, showing .CIA/.3DS/.3DSX/.SMDH/.NDS icons in explorer.

Update 05/04/2017: v0.1.2
  • Fix NoCrypto flag mask, now showing icon for non-encrypt cia correctly.
  • Downgrade .net requirement to 4.0
  • Add a default icon for encrypted files.
Updates 05/03/2017: v0.1.1
  • Add support to .NDS (dsi rom) file
  • Project name changed to DSShellExt, as it's supporting NDS files.
  • Add support to .3DS
  • Fix icons not showing for certain decrypted .cia files.
  • NOT SUPPORTING encrypted roms, most likely it needs your console to decrypt it.

Todo:
  • Barcode for FBI direct install?
  • Show more information in the tool tip, such as title name, region info.
Snapshot:
screenshot_1-png.86048

thanks to @Petraplexity for the snapshot.

Download:
https://github.com/kkguo/DSShellExt/releases

SourceCode:
https://github.com/kkguo/DSShellExt

Please report issue or suggestion at https://github.com/kkguo/DSShellExt/issues

Have fun!
 
Last edited by kkguo,

GerbilSoft

Well-Known Member
Member
Joined
Mar 8, 2012
Messages
2,395
Trophies
2
Age
34
XP
4,253
Country
United States
Not a Windows user but looks neat :yay:
I've been working on something similar, rom-properties. The current release doesn't support 3DS (it'll be in the next release), but it does support DS, Wii, and GameCube, and it also runs on Linux. (KDE4, KDE5, GNOME 3; thumbnailing under Xfce is not yet supported.)

If you're using Mac: I've tried looking for interfaces for custom thumbnail generation and property pages, but couldn't find anything.
 
Last edited by GerbilSoft, , Reason: -linebreak

GerbilSoft

Well-Known Member
Member
Joined
Mar 8, 2012
Messages
2,395
Trophies
2
Age
34
XP
4,253
Country
United States
FYI: .NET Framework 4.5 has a minimum requirement of Windows Vista, so if your extension actually needs 4.5 and can't run on 4.0, you should update the README.
 

kkguo

Member
OP
Newcomer
Joined
Apr 27, 2017
Messages
21
Trophies
0
XP
82
Country
United States
FYI: .NET Framework 4.5 has a minimum requirement of Windows Vista, so if your extension actually needs 4.5 and can't run on 4.0, you should update the README.
You are right, did you already see problem on that?
Actually the target in the project is .net 4.5, it can be lower.
I will change it to 4.0 in next release, just for some feature introduced in 4.0 which is helpful creating shell extension with .net (I forget the name of that feature...)
 

GerbilSoft

Well-Known Member
Member
Joined
Mar 8, 2012
Messages
2,395
Trophies
2
Age
34
XP
4,253
Country
United States
You are right, did you already see problem on that?
Actually the target in the project is .net 4.5, it can be lower.
I will change it to 4.0 in next release, just for some feature introduced in 4.0 which is helpful creating shell extension with .net (I forget the name of that feature...)
I haven't actually tested it yet, but that was something I noticed while looking over the project.
 

KunoichiZ

Well-Known Member
Member
Joined
Mar 16, 2012
Messages
8,830
Trophies
0
Age
28
XP
4,597
Country
United States
I ran install.bat and it worked for some of my CIAs (ACNL update, FE if DLC, and TWLSaveTool are some examples) and it didn't work on other CIAs (Fantasy Life DLC and FE Fates DLC are some examples). Is it supposed to work on all CIAs or just some of them?
 
  • Like
Reactions: Deleted-379826
D

Deleted-379826

Guest
Gonna check this out. It'll be nice to have, I don't store many 3ds related things though. Maybe add one for nand backups and make it a brick logo or something? :P
 

kkguo

Member
OP
Newcomer
Joined
Apr 27, 2017
Messages
21
Trophies
0
XP
82
Country
United States
I ran install.bat and it worked for some of my CIAs (ACNL update, FE if DLC, and TWLSaveTool are some examples) and it didn't work on other CIAs (Fantasy Life DLC and FE Fates DLC are some examples). Is it supposed to work on all CIAs or just some of them?
if the rom file is decrypted, it should work. To the best my knowledge, encrypted rom needs your console key to get the icon, correct me if I'm wrong.
I started 3DS journey recently (pretty late, I know), still studying the system...
 

KunoichiZ

Well-Known Member
Member
Joined
Mar 16, 2012
Messages
8,830
Trophies
0
Age
28
XP
4,597
Country
United States
if the rom file is decrypted, it should work. To the best my knowledge, encrypted rom needs your console key to get the icon, correct me if I'm wrong.
I started 3DS journey recently (pretty late, I know), still studying the system...
That would probably explain things. I'm pretty sure some of my CIAs aren't decrypted.
 

KunoichiZ

Well-Known Member
Member
Joined
Mar 16, 2012
Messages
8,830
Trophies
0
Age
28
XP
4,597
Country
United States
So, just a question for you, do you want the default icon or you want a customized icon indicating it's 3DS file but encrypted?
I think a customized icon would fit better. With the icons for the decrypted files, it looks a little out of place for the encrypted files to not have an icon (other than the blank, standard icon). It doesn't have to be anything to specific, though.
 

GerbilSoft

Well-Known Member
Member
Joined
Mar 8, 2012
Messages
2,395
Trophies
2
Age
34
XP
4,253
Country
United States
if the rom file is decrypted, it should work. To the best my knowledge, encrypted rom needs your console key to get the icon, correct me if I'm wrong
It needs Slot0x2C. This is a common key (not system-specific), but it's still locked in the Boot ROM.

Some encrypted CIAs have a plaintext meta section at the end of the file. If the CIA's meta size is non-zero, you can check this instead of reading the ExeFS. https://www.3dbrew.org/wiki/CIA
 

kkguo

Member
OP
Newcomer
Joined
Apr 27, 2017
Messages
21
Trophies
0
XP
82
Country
United States
It needs Slot0x2C. This is a common key (not system-specific), but it's still locked in the Boot ROM.

Some encrypted CIAs have a plaintext meta section at the end of the file. If the CIA's meta size is non-zero, you can check this instead of reading the ExeFS. https://www.3dbrew.org/wiki/CIA
it's already done in the first version. and NCCH is read if no metadata exsiting.
So, maybe just wait for the boot9... I doubt even hedgeberg will release it, damn copyright thing..
 
D

Deleted User

Guest
Not working for me.

Code:
#######################################################
##            DS Shell Extension                     ##
##                                                   ##
##           https://github.com/kkguo/DSShellExt     ##
#######################################################
FIND: `/i': No such file or directory
FIND: `x86': No such file or directory
The system cannot find the path specified.
Done!

/-------------------------------------------------------------------\
 DSShellExt is an open-source project,
 ApkShellExt is a sister project of DSShellExt
 Please visit https://github.com/kkguo/DSShellExt for more information
\-------------------------------------------------------------------/
Press any key to continue . . .
 

kkguo

Member
OP
Newcomer
Joined
Apr 27, 2017
Messages
21
Trophies
0
XP
82
Country
United States
So, another update..
Not working for me.

Code:
#######################################################
##            DS Shell Extension                     ##
##                                                   ##
##           https://github.com/kkguo/DSShellExt     ##
#######################################################
FIND: `/i': No such file or directory
FIND: `x86': No such file or directory
The system cannot find the path specified.
Done!

/-------------------------------------------------------------------\
 DSShellExt is an open-source project,
 ApkShellExt is a sister project of DSShellExt
 Please visit https://github.com/kkguo/DSShellExt for more information
\-------------------------------------------------------------------/
Press any key to continue . . .
@RosaliinaDaHacker64, which system are you on?
If you know what I'm talking about, please try manually install the dll like this:
%windir%\Microsoft.NET\Framework\v4.0.30319\regasm.exe /codebase DSShellExt.dll
 
D

Deleted User

Guest
So, another update..

@RosaliinaDaHacker64, which system are you on?
If you know what I'm talking about, please try manually install the dll like this:
%windir%\Microsoft.NET\Framework\v4.0.30319\regasm.exe /codebase DSShellExt.dll
Windows 8.1.
I'll try installing that way

Edit: It works!
 
Last edited by ,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • BakerMan
    I rather enjoy a life of taking it easy. I haven't reached that life yet though.
  • BigOnYa @ BigOnYa:
    I don't trust the free ones, but ipvanish I've used for couple years now, n like
  • Psionic Roshambo @ Psionic Roshambo:
    I wonder if they could get CPUs to run that hot then use the heat to power a steam turbine to power the CPUs....
  • BigOnYa @ BigOnYa:
    Good idea, or at least power the GPU
  • Psionic Roshambo @ Psionic Roshambo:
    It's not the movies or games downloads that I would worry about, like breaking into networks, downloading encrypted things, spying on network traffic. I have seen so many "Top Secret" seals on files when I was a kid
  • Psionic Roshambo @ Psionic Roshambo:
    I was obsessed with finding UFOs, a surprising amount of US files where stashed on computers in other countries, China back in the early 90s omg sooo much
  • BigOnYa @ BigOnYa:
    Yea that crazy, I've never tried hack into anything, I just pirate, and my ISP have send me 3-4 letters, so had to VPN it
  • Psionic Roshambo @ Psionic Roshambo:
    Ship to ship communication software for the Navy although without access to the encrypting chips it was mostly useless
  • Psionic Roshambo @ Psionic Roshambo:
    I bet now a 4090 could probably crack it? Hmmm maybe not even back then I'm pretty sure they where using like 1024 bit encryption
  • Psionic Roshambo @ Psionic Roshambo:
    Yayyy the one set finished 324GBs lol
  • Psionic Roshambo @ Psionic Roshambo:
    Compressed....
  • Psionic Roshambo @ Psionic Roshambo:
    I wonder how many years that would have taken on a 56K modem lol
  • Psionic Roshambo @ Psionic Roshambo:
    18000 hours lol
  • Psionic Roshambo @ Psionic Roshambo:
    750 days lol
    +1
  • Psionic Roshambo @ Psionic Roshambo:
    So Internet is very much faster now lol
  • BigOnYa @ BigOnYa:
    "Time Remaining- 2 years, 9 girlfriends, 6 hairstyles, please standby..."
    +1
  • Psionic Roshambo @ Psionic Roshambo:
    I remember one time I downloaded like a 500MB ISO file on 56K and that literally took like 2 days
  • Psionic Roshambo @ Psionic Roshambo:
    I had some sort of resume thing, I remember the software had chains
  • Psionic Roshambo @ Psionic Roshambo:
    Damned if I can't remember.the name though
  • Psionic Roshambo @ Psionic Roshambo:
    Some sort of download management app
  • BigOnYa @ BigOnYa:
    Ok good chatting, I'm off to the bar, to shoot some pool, nighty night.
    +1
  • BakerMan @ BakerMan:
    hey psi
  • BakerMan @ BakerMan:
    i call your girl lyndon the way she b on my johnson
    BakerMan @ BakerMan: i call your girl lyndon the way she b on my johnson