Notices

Applications and Utilities Talk about apps and utilities for Windows Mobile and PPC

Reply
 
LinkBack Thread Tools
Old 07-23-05, 10:05 PM   #16 (permalink)
Ken S
Guest
 
Posts: n/a
I can't seem to get the links to FileDialogChanger and gsGetFile.dll to work. It opens up a Yahoo Japan page and I searched the links available but none seem to be a file download and no download automatically starts.
  Reply With Quote
Sponsor Ads
Old 07-24-05, 12:01 AM   #17 (permalink)
MatinatorX
Guest
 
Posts: n/a
Yeah I got the same problem. Any word on why?
  Reply With Quote
Old 07-24-05, 01:01 AM   #18 (permalink)
Contributing Reviewer
 
Join Date: Jan 2005
Posts: 4,572
Thanked 1 Time in 1 Post
Originally Posted by Ken S
I can't seem to get the links to FileDialogChanger and gsGetFile.dll to work. It opens up a Yahoo Japan page and I searched the links available but none seem to be a file download and no download automatically starts.
Have you right-clicked the links and chosen Save Target As? Then, because of the lack of the correct Referer HTTP header, you won't have problems.
__________________
MS MVP- Mobile Devices.
Menneisyys is online now   Reply With Quote
Old 07-24-05, 01:07 AM   #19 (permalink)
Contributing Reviewer
 
Join Date: Jan 2005
Posts: 4,572
Thanked 1 Time in 1 Post
Originally Posted by MatinatorX
Yeah I got the same problem. Any word on why?
The Japanese site checks for the Referer HTTP header when downloads take place. It's only with right-clicking the links and issuing the Save command that they can be directly downloaded, without the need to browse the main page, (it's available in Japanese only) and look for the programs there.

If direct save doesn't work, you may want to go to http://www.geocities.co.jp/SiliconVa...upertino/2039/ and (Ctrl-F) for the string 'FileDialogChanger' and 'gsGetFile.dll'. Under them, the topmost link will be the archive (filedlgchg.zip and gsgetfile-i.zip, respectively)
__________________
MS MVP- Mobile Devices.
Menneisyys is online now   Reply With Quote
Old 07-24-05, 01:22 AM   #20 (permalink)
Contributing Reviewer
 
Join Date: Jan 2005
Posts: 4,572
Thanked 1 Time in 1 Post
Originally Posted by Gigi
Yes, I'm sure about this but cannot say if it applies to ALL CAB files installed by CABINSTL. I am running 1.04, and when I went to install the CAB file, I actually got a warning message that uninstalling it will delete the contents of the entire folder. Sure enough, when I went to uninstall, the contents were deleted. This message is the same message that the "Not show warning message" checkbox refers to in the first window.
Yes, I did receive this message too with, IIRC, all the test CAB's I've installed with CabInstl, but when I uninstalled the test apps in question, no additional files were deleted in their home directories. Remove Programs worked exactly as it should. Additional files (files that have been created by the program - for eample, cache files - after installation; or, files copied by the user there - for example, forced VGA .mui files) weren't deleted from the directories. The standard .unload files looked also OK - they were the same as with installig the apps without CabInstl.

That is, IMHO, you may safely ignore the "all files will be deleted" message of CabInstl.
__________________
MS MVP- Mobile Devices.
Menneisyys is online now   Reply With Quote
Old 07-24-05, 02:44 AM   #21 (permalink)
Ken S
Guest
 
Posts: n/a
Thanks for the info on how to download the files, not sure if I would have thought of doing that. I had considered trying to have the page translated, but have never had much luck with that on oriental languages, usually all sense is lost and I get something about flowers.

Ah, I see that it has this information later in the first post, unfortunately I read up to the downloads, tried to download, and when I couldn't posted my question. Teach me not to read the entire post before asking stupid questions. (Probably wont be the last time though, what's the fun of learning from your mistakes)

Last edited by Ken S; 07-24-05 at 03:07 AM.
  Reply With Quote
Old 07-24-05, 05:47 AM   #22 (permalink)
mrmentalfloss
Guest
 
Posts: n/a
Originally Posted by FleshWound
This hack is killer, but it looks like (at least so far) Astraware games' installers don't like it much. Tried installing Bejeweled and Bejeweled 2 and they both crashed the Axim (X50v)...reversing the hack allowed the games to install properly.

Otherwise an awesome tip! =)

Really? .. I've had Bejewled and a LOT of Astraware games installed on my x50v. I have them installed in the BIS and even after a hard reset, with NO restore, I just run the executable and the games run perfectly (so far). The only things that are missing from some games like Bejeweled and Bejeweled 2 are the scores and how much I completed. This can be easily saved by copying the data files in the root directory elsewhere, and copying them back to root later.

Games so far I've tried this on:
Alchemy
Atomica
Bejeweled
Bejeweled 2
Bejeweled VE
Bookworm
Dynomite
Insaniquarium
Rocket Mania
Spot
Wild Wild Words

Note: they are still on trial period tho ..
  Reply With Quote
Old 07-24-05, 09:19 AM   #23 (permalink)
Aximsite Minor League
 
Join Date: Jul 2005
Location: Dedham, MA
Posts: 212
Thanked 0 Times in 0 Posts
Originally Posted by mrmentalfloss
Really? .. I've had Bejewled and a LOT of Astraware games installed on my x50v. I have them installed in the BIS and even after a hard reset, with NO restore, I just run the executable and the games run perfectly (so far). The only things that are missing from some games like Bejeweled and Bejeweled 2 are the scores and how much I completed. This can be easily saved by copying the data files in the root directory elsewhere, and copying them back to root later.
I'm not sure what you're trying to say. I was simply saying that the method of directing the installs to a directory from ActiveSync as outlined above causes the Axim to crash when installing some programs.

I can probably move them later...but I'm doing a full backup with Sprite before I try it. I managed to b0rk my Axim yesterday to the point where it refused to talk to ActiveSync...ended up having to do a hard reset. Not sure what caused it, so I'm not taking any chances this time =)
FleshWound is offline   Reply With Quote
Old 07-24-05, 09:35 AM   #24 (permalink)
Contributing Reviewer
 
Join Date: Jan 2005
Posts: 4,572
Thanked 1 Time in 1 Post
Originally Posted by FleshWound
This hack is killer, but it looks like (at least so far) Astraware games' installers don't like it much. Tried installing Bejeweled and Bejeweled 2 and they both crashed the Axim (X50v)...reversing the hack allowed the games to install properly.

Otherwise an awesome tip! =)
Thanks - I'll also check this stuff as soon as I finish my latest backup file extracter app for the PPC, along with some other problems reported by some FirstLoox users.
__________________
MS MVP- Mobile Devices.
Menneisyys is online now   Reply With Quote
Old 07-24-05, 11:22 AM   #25 (permalink)
BUMP THAT
Guest
 
Posts: n/a
I have Cabnstl set to be associated with cab files. I just tap a cab file like WisBar Adv 2 to install it. Then Cabinstl will come up with the cab selected, I just to select the destination. However this is still a very good/possibly better alternative. :approve:

(EDIT)

Aximsite says I am a rookie. :p
  Reply With Quote
Old 07-24-05, 11:23 AM   #26 (permalink)
Aximsite Rookie
 
alexcar_8's Avatar
DAP Freshman
 
Join Date: Jul 2004
Location: U.K
Posts: 57
Thanked 0 Times in 0 Posts
i am wondering why you have to install the file changer software it works fine with out it installed ?
__________________
Alex
alexcar_8 is offline   Reply With Quote
Old 07-24-05, 11:37 AM   #27 (permalink)
Contributing Reviewer
 
Join Date: Jan 2005
Posts: 4,572
Thanked 1 Time in 1 Post
Originally Posted by BUMP THAT
I have Cabnstl set to be associated with cab files. I just tap a cab file like WisBar Adv 2 to install it. Then Cabinstl will come up with the cab selected, I just to select the destination. However this is still a very good/possibly better alternative. :approve:
It is a good alternative, but if you want to set up a common target directory on your PDA when you install apps using ActiveSync, the MP tools are a lot easier to use than CabInstl.
__________________
MS MVP- Mobile Devices.
Menneisyys is online now   Reply With Quote
Old 07-25-05, 11:48 AM   #28 (permalink)
Contributing Reviewer
 
Join Date: Jan 2005
Posts: 4,572
Thanked 1 Time in 1 Post
First, I’d like to thank you all for your replies in both here and on other PPC boards! I’d like to send extra greetings to the people at here (AximSite) and FirstLoox for their lists of incompatible programs (see http://firstloox.org/forums/showthread.php?p=34989 for the FL thread).

I’ve received many questions about why the destination dialog screen is needed at all and what makes it better than CabInstl. Well, it indeed has advantages if you need to do a mass-install from your desktop computer onto your storage card and want to install all your software into a common subdirectory (and not the default, that is, the root directory). Then, using the hack does indeed save a lot of time.

What I wasn’t aware of while writing the above tutorial (and giving the thread a title ;) ) is the bugginess of the redirection.

The main disadvantage is that, unless you use registry toggler tools (more on this later in the section on nscript ) to easily switch between the enabled/disabled state of the destination dialog screen, the installer of some programs just won’t work: the PPC will be reset as soon as the CAB is started on the PPC.

Some examples of apps that behave like this:
Resco xBall
vxUtil
All games of Astraware; I’ve tested Bejeweled (tested version 2.45; http://www.astraware.com/download/be...-ppc-v2-45.exe ) and Bejeweled 2 (tested version 1.2; http://www.astraware.com/download/be...2-ppc-v1-2.exe )

They, however, work great if you install them through ActiveSync or CabInstl (tested with the latest version, 1.04). That is, there’re cases (Astraware games etc) when using CabInstl is the only way to get some programs installed to non-RAM media without access to a desktop ActiveSync.

Please note that this is not a bug in Mad Programmer’s File Dialog Changer but that of the Windows CE install-time dialog box redirection.

I need to point out another problem with enabling the destination dialog screen (again, with or without File Dialog Changer – it’s another bug in WindowsCE): the alternative screen will only be activated if you give a non-RAM target to ActiveSync. This will, of course, result in (in cases, far) slower transferring of the initial CAB file to the device, especially with larger CAB files (for example, that of Adobe Acrobat 2.0). If you don’t like the decreased speed introduced by this hack, you may want to stick to the default configuration (with or without CabInstl).

Bottom line: that is, I need to elaborate on the title of the the thread: it would be a killer if it worked with every CAB’s and with CAB’s (auto)copied into main memory. For the time being, you may want to stick to CabInst for offline installations or installations that require a common, non-root directory on your storage card (despite the need for hunting for ActiveSync-created CAB’s on the desktop in the latter case).

You may, despite the problems I’ve outlined above, still want to use the destination dialog screen (with or without the Mad Programmer utility), but want to make it easily switchable. If that’s the case, read on.

First, I elaborate a bit more on the registry key HKEY_LOCAL_MACHINE\SOFTWARE\Apps\Microsoft Application Installer\fAskDest.

If you don’t copy the two Mad Programmer files to your PDA (and enable the new file dialog), just enable this key (0 -> 1), you’ll get the following screen each time a CAB is started either locally (by, say, clicking it) or by a remote ActiveSync process:



Here, you can choose in which directory to install your app and on which card. This may be enough for most purposes if you don’t need, for example, built-in directory creation capabilities or multilevel directory tree navigation (both are offered by the Mad Programmer tool) because you already have the target directory (for example, \progs on your storage card) to install your files to and don’t mind the “flat”, one-dimensional format of the “Folder” drop-down list.

Now, the important part: how can you quickly disable and enable the automatic destination dialog screen because of the problems with certain CAB’s and the need for telling ActiveSync a slower destination for the dialog screen to work?

It’s, fortunately, very easy. No, you don’t need to fire up a registry editor, go to HKEY_LOCAL_MACHINE\SOFTWARE\Apps\Microsoft Application Installer\fAskDest and change the registry values every time you want to enable/disable this feature.

Nor need you define two registry import files to enable/disable redirection. (I’ve described a quick way of switching some values in the registry in my article here. This article describes implementing registry import-based solutions for problems that can be done with reg. imports - for example, as far as my tutorial is concerned, easy and fast HTTP proxy changing/enabling/disabling.) That’s much cleaner but still involves two files because they don’t contain any conditional execution logics: code that reads the current value of HKEY_LOCAL_MACHINE\SOFTWARE\Apps\Microsoft Application Installer\fAskDest and negates it.

Going the ‘let’s write a program in native/managed code to toggle between the two states’ is indeed easy, but definitely not as flexible (you can’t recompile it on your PDA; the EXE sizes are considerably larger than script sizes; distributing these files aren’t as easy as script files which can be checked for “viruses” and “backdoors” by anyone etc) as the one I’ll describe.

nscript to the rescue! (Please note that the latest version is 0.88 – their homepage still refers to 0.86, but the ZIP there already contains 0.88!) This utility was written by the same S_K people that wrote CabInstl and a lot of other great tools.

It offers a lot of features, including registry read/write, conditional logics, message boxes etc. The only missing feature is, IMHO, WinCE database read/write, but that’s not a big problem (for comparison: not even the Compact Framework 2 supports full access to all WinCE system databases, let alone 1.0/1.1, which have no way of accessing them without using native system calls).

Furthermore, its script programming code constructs (if/while/for; code blocks etc.) resemble C (and, therefore, Java, C#, C++) a lot. This means you don’t even need to read the docs of the tool to be able to become productive in it if you already know at least one of those languages.

To install NS, you will need to uncompress ARMPPC\ns.exe from it and copy it anywhere on your PDA (preferably in \Program Files or on a non-RAM medium). It has no installer, so you will need to set file associations yourself: associate the ns file association with ns.exe. To do this, you may want to read my posts here on using Resco File Explorer or myExtensions. Note that you’ll need to create a new entry for .ns files in myExtensions if you use that tool. Furthermore, if you prefer direct registry editing/imports (instead of using Resco File Explorer or myExtensions for extension mapping), you will need to import the following keys/values into the registry:

[HKEY_CLASSES_ROOT\.ns]
@="nsfile"

[HKEY_CLASSES_ROOT\nsfile]
@=".ns Document"


[HKEY_CLASSES_ROOT\nsfile\Shell]


[HKEY_CLASSES_ROOT\nsfile\Shell\Open]


[HKEY_CLASSES_ROOT\nsfile\Shell\Open\Command]
@="\\ns.exe %1"


[HKEY_CLASSES_ROOT\nsfile\DefaultIcon]
@="\\ns.exe,0"


Note that you can assign a different icon to ns.exe if you accordingly set the default value of [HKEY_CLASSES_ROOT\nsfile\DefaultIcon].

Then, you only need to transfer a file with the .ns extension and the following contents to your PDA:

Code:
function main()
{
 key="HKEY_LOCAL_MACHINE";
 subkey="\\SOFTWARE\\Apps\\Microsoft Application Installer";
 rggetvalue(key,subkey,"fAskDest",val);
 if (val == 0)
    {
     rgset(key,subkey,"fAskDest",1,"REG_DWORD");
     puts("Install redirection ON");
    }
 else
    {
     rgset(key,subkey,"fAskDest",0,"REG_DWORD");
     puts("Install redirection OFF"); 
    }
}
What does this code do? After initializing two string variables, it reads the value of our registry key by giving a call to the rggetvalue() function. Note the val variable (it can be named anything!). The return value of rggetvalue() will be copied in it. Based on this return value, we go for insertng 0 or 1 to fAskDest. See how similar it is to C (except for being weak typed)? Yes, it’s really great to code in this language if you’re a C/C#/Java/C++ guru! Not another f**** up scripting language syntax to learn!

After the file is copied to your PDA, you can just execute it by simply clicking it. ns.exe will be invoked, the new state will be displayed for a second (so you’ll be able to see whether the redirection is off or on) and then, NS exits. You don’t need to click anything, unlike with the registry import-based solution: you may know that you do need an additional click after the registry file is imported with all the regimport-capable registry editors. And, the need for two registry files is also a showstopper as far as the registry import file-based solution is concerned, while, in this case, you only have only one.

Please note that you can even put shortcuts to your .ns files (as, for example, this one) on your Today screen with, say, Spb Pocket Plus 2.x+ (I’ve described this it in the above article on the registry import-based solution) or with the free (!!) PHM TrayLaunch PowerToy. With the latter, after installing the program (you may need to copy c:\Program Files\PHM\PHM Pocket PC PowerToys\PHMPPCPT.Rpr_ARM.CAB to your device and execute it there to actually install the app – as with several other PHM apps, their MSI installers don’t fire up the actual installation in ActiveSync with WM2003+ devices), go to Settings/System/Admin. Tools/PHM TrayLaunch, enable the Enable TrayLaunch checkbox and click Add. Here, enter the full path (!!) of the .ns file like below:



After this, press OK. You should now see your script listed in the PHM TrayLaunch main screen:



And the newly-added icon should also be displayed in the tray (at the bottom right; the new icon is the leftmost):



Are there alternatives to nscript as a great client-side scripting tool?

MortRunner, while it’s a great scriting utility, still (as of version 2.6, released 20 July) doesn’t have the same functionality as nscript. For example, it can’t read (only write, delete and check for existence – in this case, where we need to read a value of an already-exiting subkey, it’s useless) registry values. It doesn’t know data types except DWORD and String either. Furthermore, it uses a scripting language that is not as similar to C as nscript.

The Pocket PC console tools described in my article, much as some has (semi-)decent scripting capabilities don’t offer so good a system access than nscript or even MortRunner. They only have rudimentary programming contructs – the MS-DOS (if they implement them at all) batching capabilities are very limited. Furthermore, they can’t access the registry, can’t display dialog windows etc.
__________________
MS MVP- Mobile Devices.
Menneisyys is online now   Reply With Quote
Old 07-25-05, 04:32 PM   #29 (permalink)
Ken S
Guest
 
Posts: n/a
Thanks for the information, I look forward to trying this tonight.
  Reply With Quote
Old 07-26-05, 10:11 PM   #30 (permalink)
Ken S
Guest
 
Posts: n/a
First of all thanks for all your great tips and tweaks, I have been loading most programs to the default and then manually moving them to my SD Card by editing the registry, but this gets rather tiresome. A few programs like PocketBreeze and Wisbar Advance 2 are updated so often that I just haven't bothered and left them in RAM. With this simple hack I will no longer have to. :)

In regards to your solution for toggling this feature on and off I must be having problems setting the correct file associations (though I'd swear I did it right ), if I open the script from ns.exe it works perfectly, but if I try to open it through the script file I get two errors: FILE OPEN ERROR and FUNCTION NOT FOUND from within ns.exe. Not sure what I'm doing wrong. I know the script is correct since it runs fine from ns.exe so it must be with the association, but I don't quite know how it could be screwed up since I just used Resco . I looked at the registry entries it made and they look fine. I am running this on an iPAQ 5555 using 2003, both the script and ns.exe are loaded on my SD card in "Storage Card/Program Files/NSSCRIPT/".

Any help or suggestions would be greatly appreciated and let me know if you need any other information from me.

Thanks again!
  Reply With Quote
Reply

Tags
cabinstl, changer, dialog, file, killer, mad, programmer, real

Sponsor Ads

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On



All times are GMT -5. The time now is 07:31 PM.
Powered by vBulletin® Version 3.8.2
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0
Copyright © 2003-09 LeckMedia, LLC