Wednesday, December 5, 2007

Symbol Scanner Headache

What a pain! I accidentally kicked out the plug on the symbol scanner cradle and it's battery died, taking my wireless network settings with it. After a couple of hours of frustration with they system telling me that it could not operate within my country, I finally found the following in the scanner documentation:
Enable 802.11d - With this check box selected, the WLAN adapter attempts to retrieve the country from APs. Profiles which use Infrastructure mode are only able to connect if the country set is the same as the AP country settings or if the profile country setting is set to Allow Any Country.

I unchecked the "enable 802.11d" option for the US, and the scanner connects to the network. The ending part of the last sentence appears to be inaccurate, as I had my profile set to "Allow Any Country", and I still got a region/country error.

Enabling mysql on local php website

I setup a development instance on my PC of our corporate website today. The website was written in php, with a mysql back-end. I ran into a problem with php talking to mysql. Mysql is not enabled by php out of the box, so here are the steps that I had to follow to enable it:

  1. Verified path to php installation dir ("C:\Program Files\PHP") was in the PATH string
  2. Verified extension dir was set in the "Paths and Directories" Section of php.ini
    1. extension_dir = "C:\Program Files\PHP\ext"
  3. Downloaded supporting mysql dlls
    1. Put libmySQL.dll in the php installation dir
    2. put php_mysql.dll in extension_dir
    3. put php_mysqli.dll in extension_dir
  4. Enabled extension DLL's in the Dynamic Extensions section of php.ini
    1. extension=php_mysql.dll
    1. extension=php_mysqli.dll

Tuesday, October 30, 2007

asp.net menu hiding <h3>

Note to self:

I have a asp.net web app that uses the built-in asp.net menu control. For some reason the page was hiding some of the elements (<h3> to be specific) upon load, and showing them while I hovered over the asp.net menu. I put a <br /> above the <h3> elements and they magically appeared again upon page load.

Thursday, September 27, 2007

Firefox add-on list

I develop apps almost exclusively for IE, but I prefer Firefox as my own, personal web browser, because of the add-ons:
  1. NoScript
  2. Server Spy
  3. FireBug
  4. FireFTP
  5. Adblock Plus
  6. Adblock Updator
  7. Del.icio.us bookmarks
  8. Download Embedded
  9. Download Status Bar
  10. EditCss
  11. Flashblock
  12. Gmail Manager
  13. Google Reader Notifier
  14. Google Toolbar
  15. Grab and Drag
  16. IE View
  17. Web Developer

My Favorite Tools

Who knows what will happen with the upcoming sale of the company, so i'll bookmark my favorite tools (in case I need to download them again):
  1. AstroGrep - for text searching files
  2. AutoRuns - for cleaning up the startup (and you've gotta love the name)
  3. Eclipse - just in case I need to do any Java development again
  4. Fiddler - a great http debugging aid
  5. Foxit Reader - a great, incredibly small pdf reader
  6. LDP - this has helped me immensely with my AD development
  7. Notepad++ - I've just started using this, but it is my new favorite text editor
  8. Paint.Net - This is the perfect graphics program for my meager needs
  9. Process Explorer - another great tool from sysinternals
  10. PureText - a helpful little app to allow me to easily paste only text
  11. TCPView - allows me to watch ports
  12. Window's Powershell - this is a new one for me that I like a lot
  13. Zoomit - not a lot of practical need for this, but it is a neat toy
  14. 7Zip - my open-source winzip replacement
  15. Subversion - what a great source code repository!
  16. TortoiseSVN - one of the main reasons why I love Subversion so much
  17. Display Fusion - For greater desktop control of multiple monitor setups
  18. Vs 2005 Cmd Prompt Here - Right click a folder in window's explorer, and you can open a vs 2005 cmd prompt at that folder.
  19. Clipx - A nice clipboard extender

Wednesday, September 26, 2007

Not all code - NBA

Shawn Marion reminds me today why I'm finding it increasingly harder to stomach the NBA:

"I'll do what I've got to do," he said. "I'm a professional. I'm not bitter. I love the fans, but I've got to take care of me."

Setting up svnsync

Now that I have my svnserve services running, it's time to setup svnsync. Here's the steps I followed:

  • Begin with a blank, copy repository
  • Created a user to be used for the synch process (svnsync)
    • User has read permissions on original repository
    • User has r/w on the copy repository
  • I had to create a pre-revprop-change.bat file. This was a bit of a pain, as I've written very few DOS scripts, and the templates provided were unix shell scripts. I finally sludged my way through it and ended up with the following, incredibly basic implementation:
IF %3==svnsync exit 0
ELSE (
echo "Only the svnsync user can change revprops"
exit 1
)
  • I then needed to initialize the sync, with the following command:
    • svnsync init --username svnsync svn://copyRepository:port svn://originalRepository:port
  • Finally, I executed a sync
    • svnsync sync svn://copyRepository:port
I browsed the copyRepository with tortoise and it was in synch with originalRepository.

Running two separate svnserve instances

I have subversion installations and repositories at two separate remote locations. I have been tasked with keeping each repository in synch with a master repository at a central location. To do this, I have setup two separate subversion repositories on the central server. I've setup two services on the central server that run svnserve, each is running on it's own non-standard port, each is attached to one of the repositories.

Deleting Services

Of course I didn't get my service setup correctly on the first try, so I had to delete it. The command is as follows:

sc delete [servicename]

In this case for me, servicename = svnserve

Subversion Setup Notes

  • Download the and install the latest Subversion release from here:
    • http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91
  • Create a repository (from the command line):
    • svnadmin create C:\desired\path\to\repository\
  • Setup the repository configuation file (C:\desired\path\to\repository\conf\svnserve.conf), by adding something similar to:
    • [general]
      anon-access=read
      auth-access=write
      password-db=passwd
  • Add users and passwords to the "C:\desired\path\to\repository\conf\passwd" file
  • Setup user permissions on the repository in the "C:\desired\path\to\repository\conf\authz" file
  • Setup a svnserve as a service (from the command line):
    • sc create svnserve binpath= "C:\Subversion Installation Directory\svnserve.exe --service --root C:\desired\path\to\repository\" displayname= "Subversion" depend= tcpip start= auto

Connect via Tortoise, and you are off and running. Now I need to do some research on AD integration for authentication.

Thursday, September 20, 2007

Firefox prefers Location to Navigate()

I found out today that the following works with IE, but not with Firefox:

window.navigate('theLink') ;

I replaced it with the following, and everything is moving smoothly again in both browsers:

window.location='theLink';

Wednesday, September 19, 2007

Symbol Scanner CE code - StartRead()

The CE app that I'm working is for a Symbol scanner, and I ran into an "Read already pending" error message when attempting to scan a third barcode into the form. It is completely beyond me why it only errors out the third time, and does not error out on the second read. It was only happening on one form, and I finally chased it down to the fact that the problem form was the only one missing error handling. An update as shown below "fixed"* the problem.

Private Sub StartRead()
'If we have both a reader and a reader data
If Not ((Me.MyReader Is Nothing) And (Me.MyReaderData Is Nothing)) Then
'Submit a read
AddHandler MyReader.ReadNotify, Me.MyEventHandler

Try
Me.MyReader.Actions.Read(Me.MyReaderData)
Catch ex As Exception
End Try
End If
End Sub



*The root cause is not fixed, but I don't really have any good reasons to go any further into fixing the root cause.

.Net CE Forms WindowState Is Evil

I always find out things the hard way. Setting the WindowState attribute to "Maximized" on a .Net CE Form will cause the form to ignore the values you specify for the Size attributes, and enlarge itself to a maximized state each time you open the form within the designer.

It makes sense now that I've figured it out, but watching my forms magically resize themselves every time I opened them in the designer made me wonder if my VS 2005 installation needed an exorcism.

Friday, September 7, 2007

Great Barcode Asp.Net Control

I came across the following barcode asp.net control that I've been using:

http://www.asp101.com/samples/barcode_aspx.asp

It works great and is free.

Wavecrest Proxy: Not Found

VS 2005 stopped working on me today out of the blue. I get the following error when attempting to debug:





I am not finding anything on google about it. What sucks is that it's not just one asp.net app, it's all of them.

Update: I've corrected the problem. I mistakenly assumed that this was a VS 2005/Asp.net error. It is actually a message from the proxy that they just installed. I removed the proxy from IE's Internet options and all is fine once again in the house of cards: