topbanner_forum
  *

avatar image

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

Login with username, password and session length
  • Wednesday May 14, 2025, 1:46 am
  • Proudly celebrating 15+ 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

Recent Posts

Pages: prev1 ... 99 100 101 102 103 [104] 105 106 107 108 109 ... 122next
2576
N.A.N.Y. 2011 / Re: NANY 2011 Release: NANY Excuse Manager (v0.96 as of 12/30/10)
« Last post by kyrathaba on December 24, 2010, 09:54 PM »
Update:  I've added the ability to email your excuses to the developer (that'd be me).  You'll see the option as a menu item.  

I updated my OP with this new feature, and an updated screenshot.  The download link targets have been updated as well.

If I get very many of these emails, I'll collate them into a list on a website, showing the DC user-name of the person who submitted each excuse  :P
2577
N.A.N.Y. 2011 / Re: NANY 2011 REMOVED: Dominion Rules Character Creator
« Last post by kyrathaba on December 24, 2010, 08:29 PM »
You can still download it from here, Wraith.  Nothing really wrong with it.  It's just that I know I can refactor it and make it a lot cleaner and more user-friendly.  I decided to let my other two entries, N.A.N.Y. Excuse Manager and Black Jack, stand as my only entries.
2578
N.A.N.Y. 2011 / Re: My tribute to the guys and gals of NANY 2011
« Last post by kyrathaba on December 24, 2010, 02:53 PM »
Nice job, timns!  :Thmbsup:
2579
N.A.N.Y. 2011 / Re: NANY 2011 Pledge: "VeggieWorld" - Children's Game
« Last post by kyrathaba on December 24, 2010, 02:48 PM »
I like the screenshot.  The style of the image seems kid-friendly :)
2580
N.A.N.Y. 2011 / Re: NANY 2011 Teaser: Llama Tray
« Last post by kyrathaba on December 24, 2010, 02:27 PM »
Very creative!  I like  :Thmbsup:
2581
N.A.N.Y. 2011 / Re: NANY 2011 Release: Dominion Rules Character Creator
« Last post by kyrathaba on December 24, 2010, 02:21 PM »
I am withdrawing this app from N.A.N.Y. 2011, as I have two other entries I'm happier with, and this app really needs a rewrite.  Thanks!
2582
N.A.N.Y. 2011 / Re: NANY 2011 Release: NANY Excuse Manager (v0.96 as of 12/30/10)
« Last post by kyrathaba on December 24, 2010, 01:49 PM »
Mouser, did you see my PM re: Gmail?
2583
N.A.N.Y. 2011 / Re: NANY 2011 Release: NANY Excuse Manager (v0.96 as of 12/30/10)
« Last post by kyrathaba on December 24, 2010, 01:48 PM »
Added a link in the OP to download the Excuse C# class.
2584
N.A.N.Y. 2011 / NANY 2011 Release: NANY Excuse Manager (v0.96 as of 12/30/10)
« Last post by kyrathaba on December 24, 2010, 01:38 PM »
NANY 2011 Entry Information

Application Name N.A.N.Y. Excuse Manager
Version
The most recent version is 0.96q mostRecentVersion.png
Short Description Manage your excuses for not producing a N.A.N.Y. application
Supported OSes WinXP, Vista, 7
Download LinkExcuse Manager (zipped) (75.5 Kb) will not check for presence of .NET Framework 4.0
Download LinkExcuse Manager Inno Setup (409 Kb) will check for presence of .NET Framework 4.0
Download Link Although I'm not releasing the entire project source code, here is a download link for the Excuse class  :P
The Big Picture


The program is intended to be used not only by end-users, but also by the developer.  End-users create/edit/email their excuses.  The developer programmatically retrieves Excuse files and downloads these email attachments, where the developer's copy of the program processes them and creates HTML reports of the data, publishing it online for the edification of all program users.


Important Note: Although not yet implemented as of v0.96q, which was my final submission before the contest ended, I do have test-code written and will be implementing functionality wherein the program takes the processed Excuses that it receives by email, collates the processed data into a nice HTML file, uploads it to my website, an then emails users of the program the link to the online report.


excuse manager flowchart60.png




Webcast InfoThe following screencasts should be viewed in the order listed, beginning with "Installing the Program"
Webcastinstalling the program
Webcastrunning the program for the first time
Webcastsending excuse files via email
Webcastretrieving excuse files via email
Version HistoryVersion 0.9 (released 12-24-2010)
  • basic creation and editing of excuses
  • serialization of excuses
  • ability to browse for subdirectory of choice for storing excuses
Version 0.91 (released 12-24-2010)
  • fixed three bugs
  • added ability to email excuses to developer
  • added notification, to form Title Bar, of number of excuses found in selected directory
Version 0.92 (released 12-25-2010)
  • added splash screen
  • added menu option to show splash screen infrequently (you're welcome)
Version 0.93 (released 12-25-2010)
  • added the excellent icon by App103 (thank you!)
  • added menu options to vary splash screen duration
Version 0.94 (released 12-26-2010) -- the code to download multiple emails from multiple DC users was quite involved
  • removed unused using statements from source code files
  • added error-checking to method querying DC username before emailing the developer with copies of your excuse files
  • added the ability for the developer to retrieve (after supplying a password) all excuse files that have been emailed to him as attachments
  • added convenient keyboard shortcut: Escape key exits application
Version 0.95 (released 12-27-2010)
  • placed code that retrieves and processes multiple emails in its own BackgroundWorker thread, so as not to destabilize the UI
  • modified InnoSetup so that it uses the correct icon, such that the icon displays prettily (with transparency in the right places) in the Desktop shortcut (see screenshot below)
Version 0.96 (released 12-30-2010)
  • corrected error of omission: program will NOW update title bar with # excuses found, just as soon as you select a directory using Folder button and the BrowseForDirectory dialog.
  • added a mutex synchronization primitive to guard against multiple instances of our program running simultaneously.
  • renamed some #regions and some variable names, to improve source code clarity
  • commented the code more significantly
  • implemented a FileSystemWatcher object, with related event handlers, so that even if a file gets added or deleted (or even changed) from outside our program (say, from Windows Explorer, for instance), our program's UI reflects this and/or alerts us appropriately
  • made the form slightly taller, so that the text boxes could be multiline.
  • used a boolean in conjunction with Form1_Activated() to ensure description textbox gets focus when program first loads.
  • added option to view, via Windows Explorer, the contents of the application data folder
  • added menu item to allow developer to process downloaded excuse files.  Uses a second BackgroundWorker object -- again, to keep UI from freezing.
  • the biggest feature of 0.96 over 0.95 is the addition of the ability to process retrieved emails' attachments and generate a report.  Unfortunately for most end-users, other than the developer, this feature won't be accessible.
  • used an obfuscating routine to better protect a password included in the installation.
System Requirements

Author kyrathaba Profile page Kyrathaba DC page

Description
The purpose of this little program is to allow you to record the many excuses you've come up with for why you're not writing a N.A.N.Y. entry.  Of course, I've written the program to be able to handle excuses for just about anything, but its intent is as stated above.


Features

See the Version History information above.

Planned Features

I welcome your suggestions.

One idea I had was to have the program check my website for uploaded excuses, and launch the user's default browser to view them.  Perhaps the program would download a local copy and allow the user to vote for their favorites, then email the developer these ratings for later inclusion in the webpage...

Screenshots

ExcuseManager8.png

ExcuseManager7.png

ExcuseManager6.png

ExcuseManager3.png

ExcuseManager4.png

emailInsert.png



Usage
Installation
How do you install and run the Application for the first time?

Use either of the two links above that you wish.  You can either install manually, which merely involves extracting the zipped folder and its contents to your desired location, then running the app.  Or, you can download and run the Inno Setup file and run it.

Using the Application

See the "About" menu for brief instructions.

Uninstallation

Either delete the manually extracted folder, which contains the applications and its files; or, run the uninstaller from your Program Files menu.

Known Issues

You tell me.  Seems to be working well.
2585
N.A.N.Y. 2011 / Re: NANY 2011 Teaser: Speed Monitor
« Last post by kyrathaba on December 23, 2010, 07:20 PM »
Very nice, NinJA999!! :Thmbsup:
2586
N.A.N.Y. 2011 / Re: N.A.N.Y 2010 pledge: GOE 2007 "MyHelp" remake for web
« Last post by kyrathaba on December 23, 2010, 12:22 PM »
Sounds useful, Blaster!  :Thmbsup:
2587
N.A.N.Y. 2011 / Re: NANY 2011 Pledge: Mouser App - Webcam Diary
« Last post by kyrathaba on December 22, 2010, 09:55 PM »
Wow!  Impressive...
2588
N.A.N.Y. 2011 / Re: NANY 2011 Release: BlackJack
« Last post by kyrathaba on December 22, 2010, 10:53 AM »
Tested the setup program on my dad's old WinXP Home laptop. Worked well.
2589
Living Room / Re: What books are you reading?
« Last post by kyrathaba on December 22, 2010, 07:54 AM »
kyrathaba (and any other Martin fans), did you know that HBO are making a series based on the Song of Ice and Fire books called Game of Thrones? It looks completely badass.

Yep, I've watched some trailers on YouTube.  There's also a roleplaying game based upon it.
2590
Living Room / Re: What books are you reading?
« Last post by kyrathaba on December 22, 2010, 07:51 AM »
Good info.  Thanks.  Sparks a memory.  I'll try to look into it and post.
2591
at some point I hope that NANY apps will appear that are results of a lot more collaboration where maybe miva2 and some others will get together and create a masterpiece

+1, definitely!
2592
N.A.N.Y. 2011 / Re: NANY 2011 Release: BlackJack
« Last post by kyrathaba on December 20, 2010, 04:59 PM »
The links in the OP table have been updated to point to both Inno Setup installer, and raw executable for manual install, for version 1.1 of my BlackJack application.  Please report any installation problems.  The installer works great on the WinXP and Win7 computers I've tested it on here at home.
2593
N.A.N.Y. 2011 / Re: NANY 2011 Release: BlackJack
« Last post by kyrathaba on December 20, 2010, 09:31 AM »
Note: I've amended the OP to include not only a download link for the barebones executable, but also one for an Inno Setup.

I've tested the setup on my Win7 Home Premium system, but would appreciate testing and feedback here, from XP and Vista users.

The Setup installs the additional feature of an About menu containing some explanation of the program, and a link to my DC page.

Tonight, I will update the no-install link target so that it also includes this functionality. 
2594
Developer's Corner / Re: Need help from Inno Setup gurus
« Last post by kyrathaba on December 20, 2010, 09:08 AM »
I figured it out. Thanks, all!
2595
Developer's Corner / Re: Need help from Inno Setup gurus
« Last post by kyrathaba on December 20, 2010, 12:13 AM »
Thanks for the link, Mouser.

One more question:

Say I want my setup to copy two files (a small JPG, and a small text file) to the same application as the directory.  How do I do that in the script?
2596
Developer's Corner / Re: Need help from Inno Setup gurus
« Last post by kyrathaba on December 19, 2010, 09:12 PM »
Solved it:


[_ISTool]
EnableISX=true

[Setup]
AppName=TestProgram
AppVerName=TestProgram1.0
MinVersion=4.1,4.0
DefaultDirName={pf}\Kyrathasoft
DefaultGroupName=Kyrathasoft
UninstallDisplayIcon={app}\UninstallCharCreator.exe
Compression=lzma
SolidCompression=true
OutputBaseFilename=TestProgramSetup

[Files]
Source: scripts\isxdl\isxdl.dll; Flags: dontcopy
Source: src\TestProgForInnoSetup.exe; DestDir: {app}

[Messages]
WinVersionTooLowError=This application requires Windows NT4, Windows 98 or later.

[Icons]
Name: {group}\TestProgram; Filename: {app}\TestProgForInnoSetup.exe
Name: {group}\Uninstall TestProgram; Filename: {uninstallexe}
Name: {userdesktop}\Test Program; Filename: {app}\TestProgForInnoSetup.exe; Tasks: desktopicon

[Tasks]
Name: desktopicon; Description: {cm:CreateDesktopIcon}; GroupDescription: {cm:AdditionalIcons}

2597
Developer's Corner / Re: Need help from Inno Setup gurus
« Last post by kyrathaba on December 19, 2010, 08:57 PM »
Another question.  The screenshot posted below should help explain.  I want to change the Program Files menu so that instead of looking like it does on the left of the screenshot, it instead looks like what I show on the right.  Can you show me what to change in my *.iss script?

installShot.png
2598
Developer's Corner / Re: Need help from Inno Setup gurus
« Last post by kyrathaba on December 19, 2010, 08:49 PM »
Thanks, works great!
2599
Developer's Corner / Need help from Inno Setup gurus
« Last post by kyrathaba on December 19, 2010, 08:27 PM »
I know it doesn't make sense, but although I have the patience and drive to write computer applications, I don't seem to have the patience to figure out InnoSetup.  I have managed to figure out a script for a basic install, and the script checks for the installation of the .NET Framework 4.0 and, if it isn't found, prompts for its download.  

I'm showing my existing .iss script.  I'm wondering if anyone can show me exactly how to modify it,  such that it will additionally prompt for a desktop shortcut to be created during setup.

The script shown below compiles successfully, and I've tested the setup it creates, and it works as desired, except I want to modify it to give the user the option to create a desktop icon during the setup process.

I know it isn't kosher, and I normally would not use this feature, but I'd also like to know how to install the desktop shortcut without prompting the user.  The reason is, sometimes I write short little helper programs for my elderly father, who is so computer challenged, he can't find the program in the program menu.  He really needs (and wants) a desktop shortcut when he installs one of my apps.

[_ISTool]
EnableISX=true

[Setup]
AppName=TestProgram
AppVerName=TestProgram1.0
MinVersion=4.1,4.0
DefaultDirName={pf}\Kyrathasoft
DefaultGroupName=TestProgram
UninstallDisplayIcon={app}\UninstallCharCreator.exe
Compression=lzma
SolidCompression=true
OutputBaseFilename=TestProgramSetup

[Files]
Source: scripts\isxdl\isxdl.dll; Flags: dontcopy
Source: src\TestProgForInnoSetup.exe; DestDir: {app}

[Messages]
WinVersionTooLowError=This application requires Windows NT4, Windows 98 or later.

[Icons]
Name: {group}\Kyrathasoft\TestProgram; Filename: {app}\TestProgForInnoSetup.exe
Name: {group}\Uninstall TestProgram; Filename: {uninstallexe}

[code]
var
  dotnetRedistPath: string;
  downloadNeeded: boolean;
  dotNetNeeded: boolean;
  memoDependenciesNeeded: string;

procedure isxdl_AddFile(URL, Filename: PChar);
external 'isxdl_AddFile@files:isxdl.dll stdcall';
function isxdl_DownloadFiles(hWnd: Integer): Integer;
external 'isxdl_DownloadFiles@files:isxdl.dll stdcall';
function isxdl_SetOption(Option, Value: PChar): Integer;
external 'isxdl_SetOption@files:isxdl.dll stdcall';


const
  dotnetRedistURL = 'http://download.microsoft.com/download/9/5/A/95A9616B-7A37-4AF6-BC36-D6EA96C8DAAE/dotNetFx40_Full_x86_x64.exe';
  //dotnetRedistURL = 'http://download.microsoft.com/download/a/a/c/aac39226-8825-44ce-90e3-bf8203e74006/dotnetfx.exe'; //for v1 of framework
  // local system for testing...
  // dotnetRedistURL = 'http://192.168.1.1/dotnetfx.exe';

function InitializeSetup(): Boolean;

begin
  Result := true;
  dotNetNeeded := false;

  // Check for required netfx installation
  if (not RegKeyExists(HKLM, 'Software\Microsoft\NET Framework Setup\NDP\v4\Client')) then begin
    dotNetNeeded := true;
    if (not IsAdminLoggedOn()) then begin
      MsgBox('This application needs the Microsoft .NET Framework to be installed by an Administrator', mbInformation, MB_OK);
      Result := false;
    end else begin
      memoDependenciesNeeded := memoDependenciesNeeded + '      .NET Framework' #13;
      dotnetRedistPath := ExpandConstant('{src}\dotnetfx.exe');
      if not FileExists(dotnetRedistPath) then begin
        dotnetRedistPath := ExpandConstant('{tmp}\dotnetfx.exe');
        if not FileExists(dotnetRedistPath) then begin
          isxdl_AddFile(dotnetRedistURL, dotnetRedistPath);
          downloadNeeded := true;
        end;
      end;
      SetIniString('install', 'dotnetRedist', dotnetRedistPath, ExpandConstant('{tmp}\dep.ini'));
    end;
  end;

end;

function NextButtonClick(CurPage: Integer): Boolean;
var
  hWnd: Integer;
  ResultCode: Integer;

begin
  Result := true;

  if CurPage = wpReady then begin

    hWnd := StrToInt(ExpandConstant('{wizardhwnd}'));

    // don't try to init isxdl if it's not needed because it will error on < ie 3
    if downloadNeeded then begin

      isxdl_SetOption('label', 'Downloading Microsoft .NET Framework');
      isxdl_SetOption('description', 'MyApp needs to install the Microsoft .NET Framework. Please wait while Setup is downloading extra files to your computer.');
      if isxdl_DownloadFiles(hWnd) = 0 then Result := false;
    end;
    if (Result = true) and (dotNetNeeded = true) then begin
      if Exec(ExpandConstant(dotnetRedistPath), '', '', SW_SHOW, ewWaitUntilTerminated, ResultCode) then begin
         // handle success if necessary; ResultCode contains the exit code
         if not (ResultCode = 0) then begin
           Result := false;
         end;
      end else begin
         // handle failure if necessary; ResultCode contains the error code
         Result := false;
      end;
    end;
  end;
end;

function UpdateReadyMemo(Space, NewLine, MemoUserInfoInfo, MemoDirInfo, MemoTypeInfo, MemoComponentsInfo, MemoGroupInfo, MemoTasksInfo: String): String;
var
  s: string;

begin
  if memoDependenciesNeeded <> '' then s := s + 'Dependencies to install:' + NewLine + memoDependenciesNeeded + NewLine;
  s := s + MemoDirInfo + NewLine + NewLine;

  Result := s
end;
[/code]

BTW, I have double- and triple-checked that I have only the opening and closing code tags, but everytime I "Save" this post, an extra closing tag gets inserted...
2600
Wow, Brahman.  Nice review.  You obviously put serious effort into it!
Pages: prev1 ... 99 100 101 102 103 [104] 105 106 107 108 109 ... 122next