|
1
|
Other Software / Developer's Corner / Re: Anyone here do any mobile development?
|
on: February 03, 2013, 06:53:56 AM
|
I don't know about you, but what I recall was that iOS / Mac Apps requires a little "paradigm" shift on the developer's part at the beginning. Objective C and the iOS framework hides the routing of messages and the loading of objects which I noticed confuses developers whom has a strong background in engineering (e.g. if you are used to knowing how control pass over from the event queue / message loop to your code, etc.). The tool itself was fine for me, especially with the introduction of Xcode 4. Haven't done much Mobile Apps beside iOS recently, but IIRC, it was less a pain to debugging with XCode than with Eclipse for Android / BlackBerry.
Interesting. Last I used Xcode was a while ago, and it really left a foul taste in my mouth. But they have updated some -- could be worth a look at again. (I was really excited when I got my Mac and pumped up to get busy in Xcode, so I might have had some unrealistic expectations. Probably near about time to give it a shot again.)
|
|
|
|
|
2
|
Other Software / Developer's Corner / Re: Anyone here do any mobile development?
|
on: February 03, 2013, 06:27:02 AM
|
|
Yes, I have done iOS 5, Android 3.0, BlackBerry 5.0 native apps, WM5 (.NET Framework) apps, Symbian apps (way back when it runs on Psion 5MX and not Nokia) and PalmOS 5 (if anyone still remembers them).
Haven't done much Mobile Apps beside iOS recently, but IIRC, it was less a pain to debugging with XCode than with Eclipse for Android / BlackBerry. Less "effortless" was WM5. Most fun was PalmOS (remind me of DOS where you get to hook pretty much anything) and major PIA was Symbian.
|
|
|
|
|
3
|
Main Area and Open Discussion / General Software Discussion / Re: Must-have Windows Programs
|
on: December 29, 2009, 11:14:40 AM
|
Glad you like the program, Curt. Just tested that it works on Windows 2008 Server 64 bit edition, so there's a good chance it might work on Win7 and Vista 64 bit. As for my must-have Windows Programs : - Total Commander - FirstDefence ISR - ESET Smart Security - Sandboxie - Editpad Pro - SecureCRT - Visual Studio 2005 (edit 1: add must-have programs, edit 2: added Sandboxie to list of must-have programs) Yesterday I updated Desktop Icon Toy to version 4, and when I tested it, I saw all the icons on my desktop and was reminded of a small but necessary, well, a must-have program for Windows: deskicons. On 2000 and on XP it was fairly easy to hide the desktop icons, but on Vista it isn't. Except if you have this program. One Run, and they are hidden, one more Run and they will show. The program closes when the job is done. I don't know if hwtan wrote this program himself, but I have not been able to find deskicons.exe anywhere else, so maybe he did.  _ (see attachment in previous post)Edited: I am using it on Vista 32-bits. [hint] It would be nice to know if it also works on Win 7, and on 64-bits. [/hint]
|
|
|
|
|
4
|
Main Area and Open Discussion / Living Room / Re: Android phone - anyone using it?
|
on: March 29, 2009, 10:24:55 AM
|
|
I'm using the Android Developer Phone (ADP), which replaces my Sony Ericsson M600i. Never use the iPhone, so unable to do a comparision. However, compared to the M600i and WM5 device before that, it has a very nice Webkit-based browser with Javascript support. The Half-VGA screen provides more real estate for display and combined with the trackball which allows you to scroll from part of a page to another both vertically and horizontally, provides a pretty good browsing experience.
The keyboard is pretty good as well once you get used to it. I have my email hosted with google, so the synchronization provided by Android was a plus, though somewhat disappointing because the native gmail apps was kind of restrictive compared to accessing gmail mobile using the webkit browser.
As mentioned by david, there are other bits and pieces that could be improved for a better user experience, but overall, I did rate it pretty awesome as it is.
|
|
|
|
|
6
|
Main Area and Open Discussion / General Software Discussion / Re: advice needed.....FirstDefense-ISR, ShadowProtect, ShadowUser, Rollback Rx???
|
on: November 18, 2008, 04:21:37 AM
|
|
From my understanding, Rollback Rx stores only the incremental changes, and it stores these changes into "unused"/free space of the drive (not a locked partition). Rollback RX overrides the allocation system and maintain a second hidden allocation table for these changes. This means that other software (e.g. disk defrag, disk imagining) only see the latest OS allocation table and are not safe for use with Rollback RX.
Perhaps due to improper shutdown, etc. I have encountered file system corruption while using Rollback RX. I have since switched to FD-ISR.
|
|
|
|
|
12
|
Other Software / Developer's Corner / Re: Is it possible to change to working directory within the running programm?
|
on: June 17, 2008, 06:48:55 AM
|
Alternative solution: write to the keyboard buffer. Formatted for C++ with the GeSHI Syntax Highlighter [ copy or print] #include <Windows.h> void writeKeyboardBuffer(const char* str) { INPUT in; in.type = INPUT_KEYBOARD; in.ki.dwFlags = 0; in.ki.time = 0; in.ki.wScan = 0; in.ki.dwExtraInfo = 0; for (const char* ptr = str; *ptr != '\0'; ++ptr) { SHORT key = VkKeyScan(*ptr); if (key & 0x0100) { in.ki.dwFlags = 0; in.ki.wVk = VK_SHIFT; SendInput(1, &in, sizeof(INPUT)); } in.ki.dwFlags = 0; in.ki.wVk = key & 0xFF; SendInput(1, &in, sizeof(INPUT)); if (key & 0x0100) { in.ki.dwFlags = KEYEVENTF_KEYUP; in.ki.wVk = VK_SHIFT; SendInput(1, &in, sizeof(INPUT)); } in.ki.dwFlags = KEYEVENTF_KEYUP; in.ki.wVk = key & 0xFF; SendInput(1, &in, sizeof(INPUT)); } } int main(int argc, char* argv[]) { const char* cmd = "cd D:\\TEMP\r"; writeKeyboardBuffer(cmd); }
|
|
|
|
|
13
|
Main Area and Open Discussion / General Software Discussion / Re: Need to limit all but a few applications to keep my kids focused on homework!
|
on: February 10, 2008, 05:56:56 PM
|
Via windows registry: [ Reference: http://www.kellys-korner-xp.com/xp_abc.htm ] Applications - Restrict Users from Running Specific ApplicationsThis setting allows you to specify applications and filenames that users are restricted from running. Open your registry and find the key [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion \Policies\Explorer] Create a new DWORD value and name it "DisallowRun" set the value to "1" to enable application restrictions or "0" to allow all applications to run. Then create a new sub-key called [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion \Policies\Explorer\DisallowRun] and define the applications the are to be restricted. Creating a new string value for each application, named as consecutive numbers, and setting the value to the filename to be restricted (e.g. "regedit.exe"). Explained: DK Right click in the right pane and select New, DWord value. Name the new value DisallowRun. Double click the new value and set it to 1. Then right click on the Explorer sub branch, in the left pane and select New, Key Name the new key Disallow Run. Highlight this key, then in the right pane, right click and select New, String value. Give it "1" for the name, without the quotes. Double click this new value and enter the actual file name of the executable you wish to restrict this user from running. Example: calc.exe This prevents this user from running Calculator. They'll get a "This operation has been cancelled message" when they try. Note: The way around this is for the user to rename Calc.exe to something else. For additional entries, just give the "values" names in numerical order, 1, 2, 3, 4 and so on. DisallowRunReg and DisallowRunCalc Restart Windows for the changes to take effect. Applications - Restrict Applications Users Can RunHKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer. Value Name: RestrictRun Open your registry and find the key [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion \Policies\Explorer] Create a new DWORD value and name it "RestrictRun" set the value to "1" to enable application restrictions or "0" to allow all applications to run. Then create a new sub-key called [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion \Policies\Explorer\RestrictRun] and define the applications that are allowed. Creating a new string value for each application, named as consecutive numbers, and setting the value to the filename to be allowed (e.g. "regedit.exe" and "calc.exe"). Explained: DK This example prevents any applications but those that you specify from being run: Right click in the Right pane and select New, DWord value and name the new value RestrictRun Double click this entry and set it to 1. Right click on the Explorer sub branch, in the left pane and select New, Key Name the new key RestrictRun. Highlight this key, then in the right pane, right click and select New, String value. Give it "1" for the name, without the quotes. Double click this new value and enter the actual file name of the executable you wish to restrict this user from running. Example: calc.exe Right click again, select New, String value, name the new value "2". Double click the new value, enter REGEDIT.EXE This example would only allow Calculator and REGEDIT to be run. Be VERY careful with this setting. You could wind up locking yourself out of REGEDIT if you were to use the restrictions on your Administrator account. Restart Windows for the changes to take effect. Note: If you are the person who applies Group Policy, do not apply this policy to yourself. If applied too broadly, this policy can prevent administrators from running Group Policy or the registry editors. As a result, once applied, you cannot change this policy except by reinstalling Windows XP. Software Restriction Policies may be set to determine what software may or may not be run by users on the system. (Jim Cavalaris [MS]) Software Restriction Policies can be configured via the group policy editor (gpedit.msc) at: Local Computer Policy -->Computer Configuration -->Windows Settings -->Security Settings -->Software Restriction Policies. Policy can be set to either: restrict users from running specified programs - OR -restrict users to allow ONLY the specified programs to be run. For a non-domain machine, policy can be applied to all users on the system, or non-Admin users only (Admins are not affected by the policy, and may run any/all programs). you cannot specify this policy for only certain users, but for a non-domain machine, the Admin/non-Admin breakdown may be sufficient.
|
|
|
|
|
16
|
Main Area and Open Discussion / Living Room / Re: Laptop or Desktop — which are you?
|
on: November 17, 2007, 10:07:17 PM
|
|
I use a laptop mostly. Three reasons:
1. It saves the trouble of having to move data. 2. You can use it any where you want, on the train, etc. 3. It's more powerful than my company-assigned desktop.
The only thing I missed is the ability to use certain add on cards (e.g. PCI-X)
|
|
|
|
|
17
|
Other Software / Developer's Corner / Re: Implementing VoIP to a simple program...
|
on: November 14, 2007, 07:39:53 AM
|
What you probably means is to implement transmission of voice packet using ip packets, not VoIP which covers more than just that (SIP and all). Basically, you will need some way to capture digitialized packets from the sound device and some way to regenerate received packets on the sound device. May be you might want to read up on DirectX (DirectSound). There is a project on CodeProject on this ( http://www.codeproject.co...internet/VoIP_For_You.asp). For the network packet, the challenge is in the data compression and how to optimising/adjust the buffer size such that you are able to tolerate some form of jitter in the receive rate and yet acceptable latency over different network due to their bandwidth and latency characteristics.
|
|
|
|
|
18
|
Main Area and Open Discussion / Living Room / Re: question on compression and storage: help me be less stupid
|
on: September 10, 2007, 12:14:37 AM
|
I guess the problem would be to find the function. Below is a program that encodes a number using power tables. For some data value, you will find that in order to represent it, you would need more storage than its original form. Formatted for Python with the GeSHI Syntax Highlighter [ copy or print] class CompressionTable: values = {} def __init__(self): for b in xrange(2, 9): CompressionTable.values[b] = [ b, b**2, b**3, b**4, b**5, b**6, b**7, b**8 ] def to_func(x): v = x while v > 1: lc = 0 lb = 0 ld = v part_found = False for b in xrange(2, 9): for c in xrange(8): d = v - CompressionTable.values[b][c] if abs(d) < abs(ld): lb = b lc = c ld = d print "%d^%d -> %d" % (lb, lc+1, ld) v = abs(ld) print "final value of v = %d" % v to_func = staticmethod(to_func) t = CompressionTable() while True: v = long(raw_input()) if v == 0: break t.to_func(v) print "-End-"
[ copy or print] 257 2^8 -> 1 final value of v = 1 258 2^8 -> 2 2^1 -> 0 final value of v = 0 9999 6^5 -> 2223 3^7 -> 36 6^2 -> 0 final value of v = 0 16384 4^7 -> 0 final value of v = 0 987654 7^7 -> 164111 7^6 -> 46462 6^6 -> -194 6^3 -> -22 5^2 -> -3 3^1 -> 0 final value of v = 0 9876543 7^8 -> 4111742 7^8 -> -1653059 6^8 -> -26557 8^5 -> -6211 3^8 -> -350 7^3 -> 7 7^1 -> 0 final value of v = 0 16777216 8^8 -> 0 final value of v = 0 16777219 8^8 -> 3 3^1 -> 0 final value of v = 0 1677719 6^8 -> -1897 3^7 -> -290 2^8 -> 34 2^5 -> 2 2^1 -> 0 final value of v = 0
|
|
|
|
|
22
|
DonationCoder.com Software / Post New Requests Here / Re: IDEA: Porting VeloAce to the PC
|
on: May 21, 2007, 06:24:11 AM
|
|
Porting of Palm App to Windows is non-trivial. I would suggest a complete rewrite of the program in .NET or MFC, which could be potentially faster. Attached is a simple .NET 2.0 tester program for the hardware interface which calculates the RPM. Please let me know if it works with the Vaif hardware.
|
|
|
|
|