|
Good luck in all your endeavours.
|
|
|
|
|
Yes Sir! Going forward I'm going to start calling you on your bs. Believe!!
|
|
|
|
|
VERY handy, free, full featured ... 
|
|
|
|
|
It would be even better if we could find it!
Software rusts. Simon Stephenson, ca 1994. So does this signature. me, 2012
|
|
|
|
|
|
|
Message Removed
-- modified 2-Mar-20 16:22pm.
|
|
|
|
|
My problem: I would like to intercept/log mouse events in an application which I don't have the source for.
I've read about writing a Mouse Hook and there is SetWindowsHookEx(), but I'm clueless at the moment how I can inject such into an existing application?
Is there a tool that can achieve this?
Or do I have to write it myself?
--
Christoph
|
|
|
|
|
Krischu wrote: Is there a tool that can achieve this? If there is then Google is the place to find it.
Krischu wrote: do I have to write it myself?
If there isn't an existing tool then yes.
|
|
|
|
|
For those that don't know, GLR parsing is some of the most powerful parsing there is. It can even parse *natural language constructs* - like, wow.
The algorithm involves some formidable math(s) but I found a GLR parser in C#
GitHub - jcoder58/GLRSharp: GLR Combinatorial Parser written in C# 4.0[^]
This is super cool. It's only downsides are it detects errors later than say, an LR(0) parser, and it isn't as intuitive as LL parsing + you can't do downward inheritance with it because it's not top-down, it's bottom up. Still, that's not such a big deal.
GLR is the holy grail of context-free language parsing.
Real programmers use butterflies
|
|
|
|
|
So my big hangup on writing visual dev code (see flowstone) or workflow code is UI stuff.
Well look what i found:
GitHub - dataweb-GmbH/NShape[^]
An open source diagrammer library for industrial apps in C#
woo. it's christmas in february!
Real programmers use butterflies
|
|
|
|
|
nice one
"Five fruits and vegetables a day? What a joke!
Personally, after the third watermelon, I'm full."
|
|
|
|
|
|
It's interesting but it looks like an app, not a library. I wanted to add diagramming to my own apps. Turns out this tool i found isn't all i hoped it was though.
Real programmers use butterflies
|
|
|
|
|
|
Holy crap i think so. Nice find. Thanks, and Mark wrote it even.
Real programmers use butterflies
|
|
|
|
|
Welcome, always glad when we can recommend one of our own!
Marc is a very talented person.
I'm hiding from exercise...I'm in the fitness protection program.
JaxCoder.com
|
|
|
|
|
There is one thing I really liked in the 1990s - debugging with the symantec IDE for C++. It had those cool step forward/step backward features in the debugger. Dont know why this was never added to other IDEs but its a really, really useful thing.
Now someone did exactly that, and even more: RevDeBug (find it on VS Marketplace or .com) is a free extension that allows you to track all state changes, record them, and then travel back and forward seeing visualy the changes. And it also tracks handled and unhandled exceptions, so you can just trace backwards from any exception what led to it.
Worth trying it out. Seems to work for most .NET languages.
forging iron and new ideas
|
|
|
|
|
There is also WinDbg which supports "time travel" though I have yet to master it
|
|
|
|
|
|
Introduction
I initially pulled this from the internet over a decade ago and had to open it back up when my client didn't want to use SMSS. I gave him the option to backup and restore his SQL Server with a few mouse clicks.
Background
My client was too cheap to purchase a real backup/restore SQL Server application so I created/enhanced this to enable him to do it with just a few mouse clicks.; If you would like to enhance the code and collaborate on potential enhancements you can download the code from git hub here https://www.github.com/CTBlankenship/BackupRestore_Source
Using the code
There are a few things you need to do to get this to work for you. The first is directory definitions:
1. A scratch pad area where the .bak file is copied prior to being compressed and copied to the destination directory. There should never be a .bak file in this directory since it is deleted after it is used to create a .zip file
2. The location of your SQL Server database and log files (.ldf and .mdf)
3. The location directory where you want to store the compressed .bak files (which are now zip files)
Secondly, edit the main form code behind to specify a connection string for the application. I've keyed the connections to recognize machine names. So, when I copy the app to my client's machine it knows that connection string for that implementation ... another for when I'm working with it on my development machine.
Third, edit the main form code behind to filter the available databases so that he sees only the databases that apply to his application and keep all of the other ones hidden so he doesn't make a mistake with any databases other then his own.
To backup a SQL Server select the database to backup and press the Backup button. This backs up the database and stores its .bak file in the Scratch directory where .NET compression is used to compress it. The .bak file is compressed into a .zip file and copied to the directory you specifiy within the app.config file. I set mine up so that it is copied to by Google Drive so it is synched with offsite storage.
To truncate the log file select the desired database and press the Shrink Log File
To restore a database select the desired .zip file (the file is named using month day year hour minue and second). It then provides a warning message that identifies the age of the file (in hours) and asked if he really wants to restore from that particular .zip file. The .zip file is then decompressed into the Scratch subdirectory. From there script is written to backup the database from the .bak file as expected. The .back file is then deleted leaving the Scratch directory empty for the nex round of processing.
I added logging which you can view using he Show button. This is helpful since I store the SQL script used to both backup and restore the database. If there is ever a failure it is a simple step to copy the script, drop it into a new query window in SSMS, run it and try and determine where the script failed and why.
To clear the log file simply delete it from the application's startup directory. I tried to make clearing the log as an option available through the interface but for some reason, the file remained "open" and accessing it from the next round of logging errored out with an I/O error saying the file is open by another process. One of you might be able to figure that out and make it possible to clear the file without accessing the file with File Explorer. Seems trivial as I type this out but the solution evaded me and I gave up ... I've spent too much time on this as it is.
One glaring problem with this utility is that it demands the use of Version 11 of the Microsoft.SqlServer.Management.Sdk.Sfc file. I've discovered that if the only database you have installed on your server is 2016 or better, the only version of this file available is 12+. I had to hack my GAC so I could copy the Version 11 file and install it to the GAC on my client's machine. Version 11 is automatically installed with SQL Server 2012. If any of you gurus could figure this out that would be grand.
I work alone so I figured I'd use you fellows to view it and perform a "code review". Enchance it until your heart is content and the push the changes to github.
The drawbacks to this program is that it currently only has an option for a full backup. Obviously this is not optimal since if there is a problem the only option is to loose as much data that was entered since the last full backup. I tried to get him to purchase a "real" SQL Backup utility but he's a cheap dude. Plus, he NEVER backed the database currently being used by the system that I'm replacing.
Have at it ... I've had fun now it is time for a few of you to add your own personal genius to the application. So, that said, it would be cool to be able to include this form in the utilities section of my app. However, the users do not have NETWORK SERVICE credentials to the SQL Server so they cannot specify the network drive mapping, 2) allow the user to configure the a job as a windows service so it can be scheduled on a periodic basis. There is a free application out there that does all of this and more but I obviously cannot integrate it into my own app though so I'll keep this around for a while.
Cheers,
Charles T. Blankenship
Points of Interest
Thanks to all of you that contribute ... be gentle now.
|
|
|
|
|
You now have this posted as an Article, a Tip, and now here. One place only is the accepted protocol.
|
|
|
|
|
More exactly, it allows to create a .mkv file from any video file, choosing which streams to include in the process.
mkv is a container format which allows to have as many streams (video, audio, subtitles, chapters, etc...) as needed. Each stream localization can be specified.
The name of this suite is mkvtoolnix.
The website is here^.
The suite for Windows can be downloaded from here^.
"Five fruits and vegetables a day? What a joke!
Personally, after the third watermelon, I'm full."
|
|
|
|
|
For those who may be interested, particularly .NET developers, I have published three (free) components to NuGet that could be useful to you. Documentation (README.md) is included in the folder to which your NuGet package manager deploys it.
JHelpers
JLogger
JDAC
As requested, here are the descriptions of the NuGet packages. I will post the entire README.md files' content as replies to this post.
modified 17-Jul-19 18:30pm.
|
|
|
|
|
It would help if you actually told us what these tools do.
|
|
|
|