topbanner_forum
  *

avatar image

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

Login with username, password and session length
  • August 21, 2018, 02:19 PM
  • Proudly celebrating 13 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 - r0bertdenir0 [ switch to compact view ]

Pages: [1] 2next
1
Post New Requests Here / Re: keyboard toggle app
« on: April 01, 2010, 09:46 AM »
What operating system are you talking about?
What's wrong with the Lock Workstation command on Windows?
I'm sure all modern OS's have an equivalent.

2
Post New Requests Here / Re: Bypassing the VBA password in Excel
« on: April 01, 2010, 09:43 AM »
I'm reasonably sure it wasn't changed intentionally & my guess would be it consist of just alphanumeric characters with length under 15.
So I would only try passwords in that range a a first pass ...

3
Post New Requests Here / Bypassing the VBA password in Excel
« on: April 01, 2010, 07:18 AM »
I don't know if this forum is against hacking tools but this is nothing I can't do myself - I just don't like reinventing the wheel.

I have made an Excel add-in with custom functions that I and many other ppl at my company use.
I gave myself full control & others read only access but IT changed permissions & somehow somebody else got in & changed the VBA password so now I can't edit & add new functions  :wallbash:
I don't have another unprotected copy so my only option is to get past the VBA password.

I've searched google but can only find commercial apps for $30-$50.
I'm not prepared to pay that for a once off thing.

Does anyone here know a good freeware solution?

Otherwise I think I can do this with brute force & an autohotkey script but that might take hours or days...
Has anyone made such a password generating script in AHK?
If so I could just modify for the VBA situation.

4
Yr best bet would be either AutoHotkey or AutoIt.
For once off things the approach you describe is fine 2 drag & resize controls.
If you use these tiny apps regularly then that's too tedious 2 do all the time.
Rather have a script made in these languages monitoring 4 yr badly designed apps & as soon as they appear the windows & controls are resized automatically.

I prefer AutoHotkey cos of mouse hook support but both the above apps will do wat you ant very elegantly.
If you're lost then just download, install & play around with AutoHotkey & we can assist you more from there.

5
I don't have the time 2 do it ryt now but this would be a small app in autohotkey that checks the size & position of the secondary monitor & overlays it with a black screen when you press yr hotkey.
Press again & the overlay wud go away - this wudn't turn off the monitor but give a similar effect.
If you wanna do a proper turn off that's a hardware thing (I think).
Maybe if yr secondary monitor is plugged into an X10 switch & then yr hotkey would use the X10 USB interface to toggle that monitor on/off.
But it's possible the Windows Power API's have some obscure method that allows you 2 turn individual monitors on/off rather than all monitors.
Think the AHK idea wud be the quickest to implement.
Maybe take skrommel's ghoster app & modify it a little.

6
Post New Requests Here / Re: Idea: Invert Volume
« on: September 29, 2009, 03:38 AM »
Wat about a cheat...
Let's say only this dial is changing the master volume.
Now what if you had a AHK script startup & save the current master volume as a baseline.
Then watch for the VKAF code. But let the default keyboard handler adjust volume.
Then compare new volume against previous volume & that difference is yr inversion value.
So if yr baseline is 50, and you adjust the volume to 70, take the difference of 20 & turn yr 50 to 30.
The set 30 as yr new baseline.
Voila inversion!

This could get ugly if the volume change is not low level & AHK gets the scancode b4 the default handler. Then you'd need a timer delay. But that's unlikely since this is probably driver behaviour & also if you turn off AHK's keyboard hook so it gets events last.

I also suspect this wud have a strange sound effect when you turn the dial continuously as the volume would see-saw between what Windows & you're trying 2 do with the volume :D  :D

7
Well now you're talking about making a pretty UI to control this thing & that's the tedious stuff. :-\
Cos thinking up a good UI & all the weird things a user can do 2 screw it up is the hardest bit of programming...

OK, here's what I'm thinking:
Instead of categories fixed in yr code, you need to actually save yr categories to disk & give the user some UI to modify them (add, remove, edit) & also select the categories.
Seems like you basically gonna create a custom categories manager.  :tellme:

I'll guide you on yr way & if you have any questions just ask back here.
Here's wat I wud do

1. Save the categories using either the registry or a file. You can find lotsa VB code on the net to save settings to an xml file & that's a gud way 2 go so you can move settings between machines. Otherwise use the registry (SaveSetting / GetSetting)

2. First get it working by copying yr categories to yr file/registry & see if you can read them properly each time.
3. On Outlook shutdown, delete the custom toolbar to ensure a clean startup.
4. On Outlook startup, recreate the toolbar, then read the settings & create the buttons for each item.
5. When you read the settings, I would suggest writing them to a VB Collection - by putting the category as an Item's collection Key & also into the Tag field of the related toolbar button, you can easily track which button the user is clicking & retrieve from the collection.

6. Now that you have it working from file/registry with fixed number of categories, you'll want to create a UI so users can add/remove their own categories.
7. Just make this with a simple UserForm & a listbox, with Add, Delete, OK buttons. This will allow users to modify the categories. When the user clicks OK, you'll have 2 delete the toolbar & recreate it just like at startup so user changes are implemented. But that will just be a simple matter to call yr Shutdown & Startup code you already implemented.
8. Perhaps instead of buttons 4 each category which can get cluttered, use the dialog you made to add/remove to also set the categories by using a checked-listbox?
This would be a non-modal form, and as the user moves between different mail items - the form would just show the categories for the active mail item. The checked-listbox would be used to add/remove categories from the active item & also add/remove global categories from the list.
This could be made a pretty slick interface.
If you do this then remember that besides adding yr categories to the listbox, you must also add any existing categories from that mail item which may have come from another person.

This shud set you off in the ryt direction - any questions or other ideas just ask.

8
I can think of workarounds tho.
Like if you a window group is already active, then hover does not reactivate the group but show the task menu.
In other words if you hover over an inactive group, they r activated & brought forward.
Once the are activated, hovering displays the menu 2 select which window you want.

Is that wat you were thinking or did you have sumthing else in mind?

9
The problem I see is with maximized windows.
What if you activate a group & the window that pops 2 the front of the group (based on z-order as you describe) is not the window you want, but is maximized?
Clicking the taskbar is not gonna work cos the button does it's auto-activate thing on hover.
So the only option you have is 2 de-maximize & move it outta the way so you can activate the window you want.

10
Finished Programs / Re: IDEA: Icon Menu Launcher
« on: June 22, 2009, 04:13 AM »
Microsoft used to have a Powertoy for Win98 called Folder Contents that displayed the contents of a folder in the right-click context menu but I looked around & it doesn't seem to work on XP :(

11
Well I have my XP system running a script that activates the taskbar by hover rather than click.
So for normal taskbar buttons, the button is clicked & the app is brought forward.
For groups, the menu is displayed on hover & you click the app you want.
Also the Start menu is displayed on hover.

If the grouped windows are all activated on hover - how would you control which window you actually want on top?
If a group contains 3 or 4 windows, the activate on hover will just activate them all in a certain sequence & 1 of those will end up as the foreground window.
Now I'd guess that more often than not, that will not be the window you actually want 2 work with - or at least often enuf that it becums really annoying.

If you wanna try the Autohover script I'm using, let me know & I'll post it here.
I even gave it 2 a friend & in just a week she got so used 2 it she immediately noticed when it wasn't running & she had 2 click those buttons.

Yr idea is doable with a bit more hacking, but maybe you can explain how you expect it 2 work in the situation I described above

12
Post New Requests Here / Re: IDEA - The Name Game
« on: June 20, 2009, 08:44 AM »
Give this a shot.

It's a macro that fills a worksheet with the kinda words you describe.
I tested it in Excel 2003 & 2007.
Just open the workbook, press Ctrl F8, then run the macro called StartWordGame

13
Well you can try to change the lines

    oItem.ShowCategoriesDialog
    oItem.Send
to
    SendKeys "{F7}", True
    oItem.ShowCategoriesDialog
    oItem.Send

But it will invoke the spellchecker & move on regardless of whether you cancel the spell check.
Outlook doesn't expose a full interface to the spell checker & trying 2 hack it is not worth the effort 4 sumthing like this.
So I suggest use this method & if it becomes a problem, get into the habit of pressing F7 to run spell check yrself, b4 hitting the send button.

14
Try adding this procedure to the previous code.
You can try opening a mail item & adding a macro button that links to this procedure:



Public Sub EditCategoriesAndSend()
On Error Resume Next
Dim oItem As MailItem

    Err.Clear
    '**check that we have an inspector window open
    If (ActiveWindow.Class <> ActiveInspector.Class) Then
        Exit Sub
    End If
   
    '**get the item we're viewing
    Set oItem = ActiveInspector.CurrentItem
   
    If (oItem Is Nothing) Then
        Exit Sub
    End If

    oItem.ShowCategoriesDialog
    oItem.Send
   
End Sub

15
Try this

Option Explicit

Private Const MY_CUSTOM_CATEGORIES_1_ = "1 - Client - sent to"
Private Const MY_CUSTOM_CATEGORIES_2_ = "2 - Supplier"
Private Const MY_CUSTOM_CATEGORIES_3_ = "Test Category"


Public Sub Button1()
    SetCustomCategoriesForItems MY_CUSTOM_CATEGORIES_1_
End Sub

Public Sub Button2()
    SetCustomCategoriesForItems MY_CUSTOM_CATEGORIES_2_
End Sub

Public Sub Button3()
    SetCustomCategoriesForItems MY_CUSTOM_CATEGORIES_3_
End Sub



Private Sub SetCustomCategoriesForItems(NewCategory As String)
On Error Resume Next
Dim oItem As Object
   
    Err.Clear
    '**first check if a single mail item is open 4 viewing & deal with that case first
    If (ActiveWindow.Class = ActiveInspector.Class) Then
        '**get the item we're viewing
        Set oItem = ActiveInspector.CurrentItem
        '**set their categories if they have the property
        oItem.Categories = AddCategoryToCategories(NewCategory, oItem.Categories)
    End If
   
    If (ActiveWindow.Class = ActiveExplorer.Class) Then
        '**loop thru selected items
        For Each oItem In ActiveExplorer.Selection
            '**clear the error buffer here in case the are mail items mixed with other items in folder - also the call to ActiveInspector.Class above has caused an error
            Err.Clear
            '**set their categories if they have the property
            oItem.Categories = AddCategoryToCategories(NewCategory, oItem.Categories)
            '**save our change
            If (Err = 0) Then
                oItem.Save
            End If
           
        Next oItem
   
    End If
   
   
End Sub


Private Function AddCategoryToCategories(NewCategory As String, ExistingCategories As String) As String
Dim avExistingCategories
Dim vCategory

    If (ExistingCategories = "") Then   '**1st category is easy
        AddCategoryToCategories = NewCategory
       
    Else
       
        '**split the category list
        avExistingCategories = Split(ExistingCategories, ",")
        '**search 4 match - this is slower but more robust than using InStr to search, but unless you hundreds of items with dozens of categories, you won't feel it
        For Each vCategory In avExistingCategories
            If (NewCategory = Trim(vCategory)) Then
                AddCategoryToCategories = ExistingCategories
                Exit Function
            End If
        Next vCategory
       
        '**append the new item since it doesn't exist
        AddCategoryToCategories = ExistingCategories & ", " & NewCategory
   
    End If
   
End Function


16
Developer's Corner / Re: Branding with DonationCoder name
« on: June 18, 2009, 06:42 AM »
Thanks mouser, I'll take yr advice & just put it up on this site with no specific constraints about donating.
I know about AXEM - it was actually the inspiration for this project & I was gonna give credit to the author justice when I posted.
The problem I have with AXEM tho is that it it works great for stopping & starting scripts but has some very erratic behaviour when it comes to stuff it does automatically.
Running the Startup scripts has always been troublesome 4 me - and sometimes it closes all running scripts when you don't expect.
I fiddled with it for about 3 months now - I cudn't give up becos the idea is just 2 useful. :-*
Eventually I accepted the problem is not with the coding but with the structure of AHK itself.
I luv AHK & have several scripts running consistently - but it just plain sucks when it comes to programming a GUI.
The language is not designed for GUI programming & following a GUI program's logic & event handling is not at all intuitive.
Buttons & Textboxes are easy, but a complex control like a listview forces you 2 write some crazy code.

I put off doing this in anything but AHK cos I wanted a scripted not compiled program.
But now with cs-script I can have the best of scripting & a powerful GUI-aware OO language :D

17
Developer's Corner / Branding with DonationCoder name
« on: June 17, 2009, 10:23 AM »
I'm creating a script manager for Autohotkey scripts.
Basically it manages a folder of scripts & sits in the system tray allowing you to start & stop scripts at will.
If the script has descriptive info, it'll show a short description of what the does.
It'll also save a history of running scripts & start them automatically the next time you log on.

A future release will probably allow you to manage C# scripts, but the AHK manager is working great.
I've written this in C# & it has been intentionally written so that the source files can be run via cs-script & modified by anyone to suit their needs.

Can I donate this software to this site & add the DonationCoder link to an About box & if any donations come in it would go to this site?

18
Why don't you want the file locked - wat's the background to this question?
Maybe you cud create a wrapper applet for yr PDF viewer so whenever you open a file, it either marks the file as read-only or opens the file 4 writing - thus the viewer will have no choice but to open the file as read-only.
When the viewer exits, the file can be restored to normal.
But again, this depends on yr situation & yr problem.

19
Autohotkey should do wat you want.
It has a macro recorder so you can just record yr actions & save that as the script.
When it sends a mouse click that click is relative to the active window not the desktop (unless you change that), so as long as the button is fixed relative to it's window you're fine.
You you shud be able to make the click relative to the toolbar control which is fine unless you customize yr toolbars all the time...
If not you can always make the script more intricate by using the SendMessage function directly on the Toolbar control.
Clicking a checkbox is easy.

20
I have a program which is password protected by a launcher & rather than a fixed password the launcher requests a password that is the first 3 letters of the current day + the current clock minutes. So if the time now is 10:47 Wednesday June 10, you'd enter wed47. so maybe in this case you cud just enter 47 as the hotkey. on a laptop keyboard, some1 watching you typing wud find it hard 2 discern that pattern from normal usage & probably not pick up that it's a hotkey, especially since it's apparently random.

we can try this as an AHK script & you can compile 2 an exe & raname it wateva you want.
stopping a service is just as simple as stopping an exe & unless you're willing 2 spend time & money 2 create a robust driver based solution it wud be simpler to purchase something commercial.
If yr data is more valuable than the hardware, protect it with something like truecrypt & you can have an app like this which will dismount that volume along with locking the laptop.
That will protect yr data.

But the best solution is 2 be aware of wats happening around you & neva let the laptop be stolen in the first place.
The first & only rule of pc security is that once sum1 has physical access 2 yr hardware - it's game ova.

21
Yeah a semi-transparent countdown window that's always-on-top is an option but if you want subtle then isn't a big bright countdown timer in the middle of yr screen just screaming 2 a thief that they better do sumthing quick?
If you remember Arnie in Predator - that countdown wasn't even in human numbers but he figured out wat was gonna hit the fan easily enuf...

I like yr sound idea, perhaps a clicking every second when the warning period is reached, becos it's obvious 2 you who knows about the lockout but not a stranger.
Even if we add a sem-transparent popup, I wud not put an obvious timer in it but a seemingly harmless message.
If you think about it, you don't need a timer displayed when you enter the final warning stage, cos whether you have 1 second or 100 seconds left, you will hit the hotkey as soon as possible.
But perhaps a misleading progress bar...

The "heartbeat" in this program is 100ms, fast enuf to outpace most thieves accept perhaps a young Peter Sellers.
But as far as sum1 running a program off a USB stick, that wud depend on how small you make the timeout interval so that the laptop locks b4 they have a chance 2 do anytyn. You'd have 2 balance security against annoyance & only you can do that.
I won't be able 2 update the code 2day cos I'm at work but keep yr ideas coming & I'll adopt them as soon as I can.

22
Post New Requests Here / Re: IDEA: hidden image finder
« on: June 08, 2009, 09:47 AM »
It just occurred to me there may be another way...
When the watermarked image is created in this way, there's a good chance (with sites like corbis) that the software writes some specific metadata that you can read.
Like if if conforms to the EXIF standard - maybe there's a "Copyright blahblah Ltd." in some field that you can search for.

23
So this gamebooster does everytyn you want except activate automatically?
I see it's got a whole buncha features 2 slow down background processes & other fancy stuff that wud take 2 long 2 code here.
So if it meets all yr other needs, how about a autohotkey script that runs in the background waiting 4 yr game & when found just loads gamebooster automatically?

24
Well the close option is not a security hole it's a debugging hole 2 stop the thing locking me out.
I don't run anytyn without absolutely no user interface until I'm sure the bugs are out.

The idea 4 the animated icon is that it flashes very slowly at first & then faster as the timeout approaches but if you dont want it there then I could just take it out.
I think a "grace" period is just matter of perspective - if you want a "grace" period of 60 seconds, then just set the Warning period to 60 seconds. If you want a warning period of 60 seconds & a grace period of 10 seconds, just set yr warning period as 70 secs.

I suppose along with showing the bubble you could bring the Taskbar to the foreground, that should deal with games & the like...
Altho this script does just a Lock Work Station, you cud easily add other actions to the LockOut procedure, to dismount yr encrypted drives & such.
But doncha think in most theft situations locking the desktop is sufficient?
Even if yr mounted volumes are accessible, the thief wud have 2 guess yr password first & if they restart yr drives get dismounted anyway.
But like I said you can customize the LockOut procedure to tell TrueCrypt to dismount all mounted volumes or anything else you want.

I can try out the sound idea 4 you & use sound cues rather than visual balloons.

25
Do you have autohotkey installed?
if so you can try this script.
It's just a rough draught so you can test & see if this is what you have in mind.
This script has a timeout of 60 secs & you can press Win+3 to reset the timer.
The setting are the variables at the top of the file - they are obviously named.
Right now the script just runs once & if it locks you out you will have to run the script again - but as I said it's just a first run.
And hopefully sum other guys here will jump in 2 polish it up.


#Persistent
#SingleInstance force
#UseHook On
#Include %A_ScriptDir%
SetWorkingDir, %A_ScriptDir%

HotkeyCombo = #3
CountdownTimer = 60
WarningMessageTimer = 30
WarningMessage = WiFi connection signal quality is poor, connection will be lost in %WarningMessageTimer% seconds
DebugMode := False



StartUp:
{

   nCountdownTimer := 1000 * CountdownTimer
   nWarningTimer := 1000 * WarningMessageTimer
   nInternalTimer := nCountdownTimer
   nInternalTimerResolution := 100
   bIconOff := False
   
   
   if(WarningMessageTimer>CountdownTimer)
   {
      msgbox "CountdownTimer" must be greater than or equal to "WarningMessageTimer"
      return
   }
   
   Hotkey, %HotkeyCombo%, HotkeyPressed
   
   SetTimer, InternalTimer, %nInternalTimerResolution%

return
}


HotkeyPressed:
{
   SetTimer, InternalTimer, Off
   nInternalTimer := nCountdownTimer
   SetTimer, InternalTimer, %nInternalTimerResolution%

   TrayTip, Autolock, Timer reset thank you, 5

return
}


InternalTimer:
{

   nInternalTimer := nInternalTimer - nInternalTimerResolution
   if(nInternalTimer<=0)
   {
      Gosub, LockOut
      return
   }
   if(nInternalTimer<=nWarningTimer)
   {
      Gosub, ShowWarning
      return
   }
   
   bIconOff := !bIconOff
   if(bIconOff)
   {
      Menu, Tray, Icon, Shell32.dll, 174
   }
   else
   {
      Menu, Tray, Icon, Shell32.dll, 173
   }
   
return
}


ShowWarning:
{
   TrayTip, Autolock, %WarningMessage%, 30
return
}

LockOut:
{
   SetTimer, InternalTimer, Off
   if(DebugMode)
   {
      msgbox, LOCKOUT
   }
   else
   {
      DllCall("LockWorkStation")
   }
   
return
}

Pages: [1] 2next