How to convert Office Calendar Event file (machine code) to JSON (or any other human-readable)? Link to file included - outlook

I want to trigger events on my MacbookPro whenever a meeting starts. I found the directory that my Calendar event files are saved in, but they are in machine code and I am not sure how to compile them into something that I can use.
How can I convert these files?
file: FF4BC1F7-17C4-4489-9F40-B83867E0D847_copy.olk15Event
link: https://rapidshare.io/1Q3G/FF4BC1F7-17C4-4489-9F40-B83867E0D847_copy.olk15Event

Related

How to red an external file during the installation of an .appxbundle

I want to distribute my UWP app using side-loading.
I have created the .appxbundle using Visual Studio, and also EV code-signed it.
So, when the user clicks on the .appxbundle file, my app is properly installed and the user can start working with it!
In this way, I can place such .appxbundle on my website, and the users can download and install it. Marvelous.
Now, I would like to customize each download, by adding a file with some tracking information to attribute a download e.g. to a specific ad campaign that I am running.
So my server can generate a ZIP file containing the .appxbundle and a little .txt file containing the tracking info (I need to generate a separate file because the signed .appxbundle takes too long - several minutes - to regenerate each time).
The user then unzips the ZIP file, clicks on the .appxbundle and installs the app.
The tricky part is that, during the installation of the app, I would like to copy the .txt file into the LocalState folder of the app that is being installed.
Is it possible?
How can I do that?
Thanks!
If your users are going to install the app by clicking a ms-appinstaller:// link, you can attach extra data using the activationUri.
This can be a custom URL scheme that you register for your app with any url parameters. The appinstaller will call this url once the app is installed.
We use this to pass login information to the app, like this:
ms-appinstaller:?source=https://localhost:8000/myApp.appinstaller&activationUri=my-app-track-install:?campaign=billboards
If your app registers for the my-app-track-install url scheme in the Appxmanifest, then from the apps perspective the first launch is then a url activation with the url you added as activationUri. In your case you would track the install, and then proceed to launch the app normally.
You can find more info on this in the example and remark for this (semi-related) api-documentation:
https://learn.microsoft.com/en-us/uwp/api/windows.applicationmodel.package.getappinstallerinfo?view=winrt-19041

Getting notified of newly created files on mac os?

Is there a way I can write a mac os app that gets notified when there's a new file of a certain file type (lets say a .jpg file) created somewhere on the system?
Does finder maybe have some mechanics in place that gets notified about new files that I can pull from?
The thing I want to achieve is an app that whenever the user creates a file of a certain file type asks the user if she wants to upload it or share it etc.
Also interested if, and if so, how it's possible to achieve this in Windows.
Yes, this is possible using the File System Events API, FSEvents:
https://developer.apple.com/library/content/documentation/Darwin/Conceptual/FSEvents_ProgGuide/UsingtheFSEventsFramework/UsingtheFSEventsFramework.html

vbscript windows xp warning message based on date

I would like windows XP to have a running script that checks the "date modified" of files as they are opened and give the user a warning message if the date matches between 1/1/11 to 7/15/14. The files might have no extension, a .pm5 extension, a .nc extension or a .drl extension. I'm not concerned with any other file extensions.
Ive found help how to create a .vbs windows message box, I found help how to check for date modified but not how to check any file with listed extension being opened and give a warning message.
thank you all
There is no feature for this in script. So you need a vb.net program using a filewatcher object. You can make vb.net programs on your computer with notepad. See here for the principal http://social.msdn.microsoft.com/Forums/en-US/adcae113-4758-481a-a367-60d5d14d97d6/this-is-how-to-turn-vbs-and-js-files-into-exe-files-from-the-command-line-without-third-party-tools?forum=scripting.
You could turn on auditing of files, set the containing folders to audit files (note two steps to audit something). An security event will be written to event log.
Task Scheduler can run tasks based on event log messages.

Is Thunderbird/Sunbird the only one that can read and write .ics files on network folder?

I have an ics calendar file that is store on a network folder.
Thunderbird/Sunbird can read and write entries very well.
Now i am looking for an alternative.
It seem to be that Thinderbird (with Lighning) or Sunbird, is the only one that can write
ics file. Outlook, e.g can only read the calendar file.
Outlook can create ICS files just fine either through its UI (File | Save As) or programmatically (AppointmentItem.SaveAs(..., olICal)

Windows API hook, custom save as file dialog to save directly to webserver via POST

I want to write a custom save as dialog that is hooked into the File -> "Save As" of most Windows program. This custom dialog will allow the user to enter their username, password, destination folder and uploads the file to the web server via a POST. If the user clicks cancel, it will call the original file dialog.
I've been reading up about Windows API hooking and this is vaguely how I think I would approach this:
Intercept "Save As"
Display my custom dialog, return some temporary path on the drive
Let the program write file to the temporary path, assume it calls WINAPI CreateFile(...) for now
Read the temporary file and upload to web server
Clean up temporary file
But I still can't get my head around the steps required to pull this off. Assuming I can intercept the "Save As" and CreateFile function, how do I detect the CreateFile was called from a "Save As" and not just any random file creation? I can think of a hack where I keep track of the time difference of when the File dialog got open and CreateFile got called.
My alternative solution is to use the existing file dialog and create a special folder on the disk, that is constantly monitored. When a file gets written there it will call an external program that uploads the file. I haven't looked into how to do this yet. I suspect this is easier.
UPDATE
As a first baby step, I wrote a .NET task tray application that allows the user to enter their login details and a folder to monitor. Whenever a file gets dropped in there there it will upload to the web server. So far it seems to work. Now I just need to figure out how to add a nice shortcut to the left pane of the file dialog. Once that's done I think I got a solution I'm happy with.
There is no need to hook or patch anything. Create a shell namespace extension that supports IStorage::CreateStream and implements it by returning a stream that POSTs its data to the Web server. The user can then choose to save the file to your namespace extension in order to upload the file.
Hooking the standard save dialog requires you to inject a DLL into every running process and have it replace the import stub of the the Win32 API GetSaveFileName() function in the process's PE header (something anti-virus and anti-malware apps are not likely to be happy about).
Then there is the new-style save dialog that was introduced in Vista using the new IFileSaveDialog COM interface instead of GetSaveFileName(). For that, you would have to uninstall and replace Microsoft's default FileDialog COM object with a custom implementation.
That does not count custom-made save dialogs, which you are not likely to hook.
If, by some miracle, you can hook the dialog and have it return a custom path of your own creation, you don't need to hook CreateFile() itself, Just monitor the folder that you create for your purposes. Place it where it is unlikely that any other app (or user) besides you will write files to. You can create a custom subfolder in the user's or system'ss AppData folder for that purpose. You can use SHGetSpecialFolderPath() and/or SHGetKnownFolderPath() to find those folders.
The tricky part will be detecting when the file is finished being written to and has been closed. You will have to monitor the folder for changes, such as with ReadDirectoryChangesW() or SHChangeNotifyRegister(), and periodically open new/modified files for exclusive access. If a file is still open by someone else, you won't be able to open it yourself. But once you do open it, you can do whatever you want with it.

Resources