shellex | hex converter , handy tool | Hacking library
kandi X-RAY | shellex Summary
kandi X-RAY | shellex Summary
WARNING: the ugliest code in the world. C-shellcode to hex converter. Handy tool for paste & execute shellcodes in gdb, windbg, radare2, ollydbg, x64dbg, immunity debugger & 010 editor. Are you having problems converting C-shellcodes to HEX (maybe c-comments+ASCII mixed?). Here is shellex. If the shellcode can be compiled in a C compiler shellex can convert it. Just execute shellex, paste the shellcode c-string and press ENTER. To end use Control+Z(Windows)/Control+D(Linux).
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of shellex
shellex Key Features
shellex Examples and Code Snippets
Community Discussions
Trending Discussions on shellex
QUESTION
I am trying to write a WiX installer that includes a managed icon shell extension (using SharpShell). I've finally figured out how to register it via Wix (I couldn't get the SharpShell registration manager to work whenn called via WiX).
During installation, the following dialog appears:
If I select "Ignore", the icon shell extension is successfully installed and Window Explorer picks up the change immediately. I'm not sure which files that its detecting as "In Use".
During uninstall, the following dialog appears:
If you select the "Automatically close and attempt to restart" option, it closes Windows Explorer, but it does not restart at the end of the installation. I have to manually restart it via task manager.
WiX Fragment Definition
The WiX fragment that defines the shell extension installation is shown below:
...ANSWER
Answered 2022-Mar-02 at 14:16The best solution that seemed to work and did not display any unwanted dialogs was to remove the MSIRMSHUTDOWN
and MSIDISABLERMRESTART
properties and set the following property:
QUESTION
I am trying to preview Alphacam files (.ard) using C#. In the explorer windows preview pane i can preview this files.
I tried to use this way to preview but in regedit there is no subkey named shellex that contains a subkey named {8895b1c6-b41f-4c1c-a562-0d564250836f}.ref
I do not know how explorer previews without this subkey.
...ANSWER
Answered 2021-Nov-24 at 16:42I found the solution, but I did not use the thumbnail way.
First, I created a tempdrawing, and then I saved that tempdrawing as a preview.
QUESTION
I want that my Shortcut Menu via QueryContextMenu method (dynamic verbs), is visible as well for "Placeholders". Placeholders are Files that only exist locally virtual and needs to be downloaded from the cloud sync provider before the file can be read.
For this reason, I registered my Shortcut Menu via:
...ANSWER
Answered 2021-Sep-16 at 10:37The solution is adding to the COM object the empty value 'ContextMenuOptIn':
QUESTION
Does anybody may give someone advice for me how realise DataStage connection?
API Link: https://www.ibm.com/docs/en/iis/11.3?topic=interfaces-infosphere-datastage-development-kit
I try include the api but when I run the program I get error: 0xc000007b
Where I made a mistake?
Thanks for anwer!
main.cpp
...ANSWER
Answered 2021-Jul-12 at 23:55You might want to add the following two lines to ensure compiling your code as 32-bit:
QUESTION
I have followed instructions for associating a custom file type with my application so that double clicking the file opens the application with that file. I've also followed instructions for creating registry settings for a preview handler for the same file type. Both work fine on their own, but not at the same time. The preview handler doesn't work when the file association open command is included. Here are the registry settings for the file association, which are created by my Inno setup installer following the instructions here.
...ANSWER
Answered 2021-Jun-26 at 14:53I found a solution as follows. Instead of linking the .xyz extension to a ProgID for the preview handler (XYZPreview.xyzfile), I link directly to the CLSID from the extension and removed XYZPreview.xyzfile entirely. Perhaps having two ProgIDs for the extension was causing the conflict (XYZFile.xyz & XYZPreview.xyzfile). The preview handler entries were modified as follows and both the file association and preview handler now work.
QUESTION
I'm trying to write a mini-shell in C using this template. But whenever I try to use interactive commands such as less
and vi
, the shell gets stuck on waitpid (with WUNTRACED
enabled these commands return immediately because they are stopped by a job control signal as indicated by ps
) . Other commands that don't require input such as ls
are fine. The root cause is setpgid
, which seems to puts the forked child process (such as less
and vi
) into a different process group which no longer shares a terminal. The child process is therefore stopped by a job control signal. Deleting setpgid
will make the mini-shell work again, but it can't be removed since the mini-shell needs to control its foreground processes as a group (e.g. if the foreground process P forks additional processes P1 and P2, the shell, upon receiving a SIGTSTP
from the user, should stop P, P1, and P2. This can be conveniently done if P, P1, P2 are in the same process group whose pgid is the same as P's pid. We can just send SIGTSTP to the entire process group).
I have tried to use tcsetpgrp
to fix my shell. Although it'll make commands such as vi
functional again, the mini-shell will automatically exit upon completion of the forked child, presumably because the parent shell mistakenly views the completion of the forked child as also the completion of the mini-shell.
Is there a fix which will still allow me to keep setpgid?
...ANSWER
Answered 2021-Mar-14 at 22:02The solution is to relinquish control of the tty to the other process group using tcsetpgrp
, and when the child is done, take back the control of the tty using tcsetpgrp
again. Note that tcsetpgrp
sends SIGTTOU
to its caller if the calling process belongs to a background process group, so SIGTTOU
and SIGTTIN
must be blocked.
QUESTION
I am trying to write handler for Windows COM IThumbnailProvider interface, to generate thumb images for custom file type (.URLtest to test things). Using C# .Net.
No matter what I try, my ThumbnailProvider class / handler dll is never called (based on my simple text file logging). And my .URLtest files are displayed in Explorer like they do not have thumbnail provider assigned.
I am testing this under Windows 7 64
I compiled the Thumbnail provider lib as both x86 and x64
Registered each version with right RegAsm
"C:\Windows\Microsoft.NET\Framework\v4.0.30319\RegAsm.exe" ThumbUrlThumbnailProvider.dll /codebase
"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\RegAsm.exe" ThumbUrlThumbnailProvider.dll /codebase
That created all these registry data
ANSWER
Answered 2020-Dec-04 at 12:31I managed to make my shell extension to work. This is not really an answer, but at least a collection of things I have learnet, that may help others.
There were 2 main problems:
- for part of development there was probably an error in registration of my file type or dll, so it was really not being recognized and called by shell.
- when this was fixed, the code was called, but was crashing silently.
Shell runs your code in isolated process, and it does not have access to file system (and probably much anything else either). If you'll try to access it, for example to write a debug log file, your code will crash silently.
The same will happen if you'll try to use Trace listener that writes to log file (likeSystem.Diagnostics.TextWriterTraceListener
)!
So there isn't really an easy way to detect if your code was even run by shell, and verify if your registry registrations part is right.
I tried to attach Explorer process to VisualStudio, but my breakpoint was never hit, even though my extension code was run.
What you can do is opt out of "Process isolation" in your assembly registration. See my question for DisableProcessIsolation=1
param and context. Than your assembly will be loaded by Explorer process directly and you can see that in sysinternals Process Explorer utility. If your registrations are right.
This may require Explorer process restart to work.
If you do not opt out, your assembly will be loaded for only a brief time and than uloaded again, so you will not be able to spot it, or as I read elsewhere, it may be loaded by other process than Explorer.exe entirely.
Few other things I learned:
- try catch blocks in my code for some reason did not catch exceptions. The code still crashed and thumbnail provider did not work.
- no errors were reported in windows event logs
- you can compile your assembly as AnyCPU, and register it with both 32 and 64bit RegAsm. It does work at least for 64bit Explorer (Windows). I did not yet test if 32bit processes can run it too though.
- Some code that worked when my dll was called by test app did not work when same dll was called by shell. For example IStream wrapper.
- There is a problem with shell not releasing file locks when they are passed to managed shell extensions.
You can read more about it in this stack question and this blog post.
The blog mentions there is no official solution and managed shell extensions are officialy not supported by Microsoft.
My dirty solution is loading whole file content to sparate MemoryStream (that keep no reference to the otiginal file or IStream) and callingMarshal.ReleaseComObject()
inInitialize()
method and not keeping any reference to the original IStream pointer.
Simon Mourier mentions in his comment above that usingMarshal.ReleaseComObject()
is not a good idea, but that was the only solution I was able to find. - Which ever way you solve this, do not get rid of your file data / stream access in first
GetThumbnail()
method call. Shell may keep your thumbnail provider instance and callGetThumbnail()
more times, for different thumbnail sizes atc.
QUESTION
I am trying to implement an Icon handler in C++ based on the example:
The Complete Idiot's Guide to Writing Shell Extensions - Part IX
I have no problem getting the example to work using the example project, but when I try to build it inside of my QT project, my handler is never called.
After installing my DLL, 'ShellExtView' shows it as an "Icon Handler" and everything looks OK in the Registry, as far as I can see.
I took the registration code I have here and used it to register the example shell extension and it worked, so I do not think it is a problem with the way I am registering the shell extension.
Here is my code:
Header File:
...ANSWER
Answered 2020-Jul-08 at 23:21There is no guarantee that the ProgID for the .txt
file extension is txtfile
on every system. Many apps hijack .txt
for their own purposes. You should read the actual ProgID from the HKEY_CLASSES_ROOT\.txt
key, and then register your handler for that ProgID.
But, more importantly, you really should NOT be modifying HKEY_CLASSES_ROOT
subkeys directly, modify the corresponding subkeys under HKEY_CURRENT_USER\Software\Classes
and HKEY_LOCAL_MACHINE\Software\Classes
instead. This is documented on MSDN:
Class registration and file name extension information is stored under both the
HKEY_LOCAL_MACHINE
andHKEY_CURRENT_USER
keys. TheHKEY_LOCAL_MACHINE\Software\Classes
key contains default settings that can apply to all users on the local computer. TheHKEY_CURRENT_USER\Software\Classes
key contains settings that apply only to the interactive user. TheHKEY_CLASSES_ROOT
key provides a view of the registry that merges the information from these two sources.HKEY_CLASSES_ROOT
also provides this merged view for applications designed for previous versions of Windows.The user-specific settings have priority over the default settings. For example, the default setting might specify a particular application to handle .doc files. But a user can override this setting by specifying a different application in the registry.
Registry functions such as
RegOpenKeyEx
orRegQueryValueEx
allow you to specify theHKEY_CLASSES_ROOT
key. When you call these functions from a process running in the interactive user account, the system merges the default settings inHKEY_LOCAL_MACHINE\Software\Classes
with the interactive user's settings atHKEY_CURRENT_USER\Software\Classes
. For more information on how these settings are merged, see Merged View of HKEY_CLASSES_ROOT.To change the settings for the interactive user, store the changes under
HKEY_CURRENT_USER\Software\Classes
rather thanHKEY_CLASSES_ROOT
.To change the default settings, store the changes under
HKEY_LOCAL_MACHINE\Software\Classes
. If you write keys to a key underHKEY_CLASSES_ROOT
, the system stores the information underHKEY_LOCAL_MACHINE\Software\Classes
. If you write values to a key underHKEY_CLASSES_ROOT
, and the key already exists underHKEY_CURRENT_USER\Software\Classes
, the system will store the information there instead of underHKEY_LOCAL_MACHINE\Software\Classes
.
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install shellex
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page