jwcolby
jwcolby at colbyconsulting.com
Mon Dec 13 10:57:48 CST 2010
> If you use a hosting company that supports ASP.NET it is almost a given that they will provide SQL Server. Right. But if I do the Clickonce distribution of a normal C# app then I would not be using ASP.Net and I could just use any web host that provided MySQL, which is just about all of them. John W. Colby www.ColbyConsulting.com On 12/13/2010 11:35 AM, Doug Murphy wrote: > If you use a hosting company that supports ASP.NET it is almost a given that > they will provide SQL Server. > > -----Original Message----- > From: dba-vb-bounces at databaseadvisors.com > [mailto:dba-vb-bounces at databaseadvisors.com] On Behalf Of jwcolby > Sent: Monday, December 13, 2010 7:34 AM > To: Discussion concerning Visual Basic and related programming issues. > Subject: Re: [dba-VB] Web page manipulation > > The "clients" are tiny and completely non-technical. One is a non-profit > that assists people with disabilities to find service providers and other > assistance. They have about a half dozen people that work for them, meeting > the people needing assistance, usually in that person's home. The database > will be a dozen or so tables and is basically just for hours worked kind of > stuff. > > The other "client" is a prison ministry which has lists of programs they > provide in the prisons, volunteers, churches and pastors. Again, as hand > full of volunteers that need to get at this information and maintain it, > again working out of their homes. > > Both applications need to hit a database over the internet, and are pretty > much simple data entry and some reporting. > > Both are sure to grow but I need to just get the basics up and running, > hopefully fairly rapidly. I have no control over the web hosting. Very > likely I will need to use MySQL since that is almost universal for web > hosting sites, so if they have a web site already, that will almost > certainly be available. > > Access just seems to be a bad fit for these, and I have zero knowledge even > about how to set up the MySQL database, connect to it etc. > > I have a web site that provides me with these services, already paid for and > which I could use initially at least to get set up and running, and up to > speed knowledge wise. Eventually I will need to move the data out to their > own web hosting if I can. > > John W. Colby > www.ColbyConsulting.com > > On 12/13/2010 4:48 AM, Mark Breen wrote: >> Hello John >> >> Another choice is to use Sillennium<http://seleniumhq.org/> >> >> It is built for this task and will allow you to easily change your >> library of routines when your website changes. >> >> Mark >> >> >> >> >> On 10 December 2010 22:33, Drew Wutka<DWUTKA at marlow.com> wrote: >> >>> Now for a little more info for you. Yes, you can certainly do this. >>> Technically, it's not much different than if someone handed you an >>> .mde, and asked you to automate tasks in the mde (so you couldn't >>> tweak the source code running the program itself, but you could open >>> the mde with VBA, and use the objects within it just like you'd use >>> the objects in your own application.) >>> >>> Trick #1: Just like with an .mde, you have to have a reference to >>> the database itself, so with a browser, you need a reference to it. >>> You can either programmatically open a browser window (so you'll both >>> create the object, and have a reference to it), or you can ask the >>> user which browser window they want you to use (so you can grab the >>> browser window through code). >>> >>> Here's an example of how to grab an existing browser window: >>> >>> Function GetExistingBrowser(strKey As String) Dim SWs As New >>> SHDocVw.ShellWindows Dim IE As SHDocVw.InternetExplorer Dim mdie As >>> InternetExplorer Dim Resp For Each IE In SWs >>> Resp = MsgBox("Do you want to select: "& vbCrLf& vbCrLf& >>> IE.LocationName& vbCrLf& vbCrLf& IE.LocationURL, vbYesNo + >>> vbQuestion, "Select IE") >>> If Resp = vbYes Then >>> Set mdie = Nothing >>> Set mdie = IE.Application >>> NewSormDataEntry strKey, mdie >>> Exit Function >>> End If >>> Next >>> End Function >>> >>> The 'NewSormDataEntry' function is the function I am sending the mdie >>> object too (the referenced browser window). In this function strKey >>> is the primary key of a record that will be used in that >>> NewSormDataEntry to submit data into a web site. >>> >>> Trick #2: Just like when the development world got a wedgie when >>> Microsoft 'secured' Outlook from programs just using it to send >>> email, web security can be a real pain in doing something like this. >>> The security is put in place to impede (note, I didn't say prevent) a >>> hacker from doing nasty stuff to the site. So the 'impeding' garbage >>> designed to trip up hackers can get in the way of a legitimate >>> developer trying to create a helpful tool. So before you COMMIT to >>> being able to make the tool, you'll need to look at the site itself, >>> to see what all will get in your way. >>> >>> Trick #3: There are two ways to 'find' the objects you will need >>> your code to work with. The first is to just look at the HTML of the >>> page(s) you are going to manipulate. This is where some of those > 'impediments' >>> come into play. Some sites prevent you from right clicking on a page >>> and selecting 'View Source'. Ironically, this is just removing a >>> 'shortcut' way to view the HTML source behind a page. It doesn't >>> actually HIDE the source, because your browser is viewing the source, >>> it has too, otherwise it will have nothing to display. So there are >>> multiple ways to 'download' the HTML you can view yourself. Create >>> your own browser, and dump the HTML to a file. You can also use API >>> calls to just directly download the HTML, without a browser. If the >>> page is derived from internal (on the website server) variables, >>> you'll need to use your own browser to get there and download the >>> source. The second way to 'find' the objects you need to deal with >>> are with the object browser. Running your code in debug mode, you'll >>> be able to see the browser object, and all of it's child elements. >>> >>> Trick #4: Events and properties. Setting the value of a textbox, or >>> clicking a button, just requires that you know what the events and >>> properties of those objects are. I use the MSDN that came with the >>> developer edition of Office 2000. It's got a nice HTML guide with >>> common HTML form elements, their properties, methods, and events. >>> But all that information is also plastered all over the web. >>> >>> Trick #5: When a page loads, the browser object is there, but you >>> may not be able to capture 'download complete' events. What I have >>> done in these cases, where my code puts in data on a page, clicks a >>> button to go to the next page, I put my code in a loop, that sits and >>> waits for an object from the next page to exist. >>> >>> Of course, if there are applets, or flash media elements, required >>> for interaction... can't help ya there, haven't tackled one of those. >>> >>> Drew >>> >>> -----Original Message----- >>> From: dba-vb-bounces at databaseadvisors.com >>> [mailto:dba-vb-bounces at databaseadvisors.com] On Behalf Of jwcolby >>> Sent: Friday, December 10, 2010 3:30 PM >>> To: VBA >>> Subject: [dba-VB] Web page manipulation >>> >>> My client has to go through a process where he clicks about 20 - 30 >>> things to manage to get a file downloaded. It sounded totally >>> convoluted but the question is (and I have asked this before without >>> a usable response) can I programmatically manipulate web pages to >>> cause specific pages to open, click buttons, input data into controls >>> etc. >>> >>> -- >>> John W. Colby >>> www.ColbyConsulting.com >>> _______________________________________________ >>> dba-VB mailing list >>> dba-VB at databaseadvisors.com >>> http://databaseadvisors.com/mailman/listinfo/dba-vb >>> http://www.databaseadvisors.com >>> >>> The information contained in this transmission is intended only for >>> the person or entity to which it is addressed and may contain II-VI >>> Proprietary and/or II-VI Business Sensitive material. If you are not >>> the intended recipient, please contact the sender immediately and >>> destroy the material in its entirety, whether electronic or hard >>> copy. >>> You are notified that any review, retransmission, copying, >>> disclosure, dissemination, or other use of, or taking of any action >>> in reliance upon this information by persons or entities other than >>> the intended recipient is prohibited. >>> >>> >>> _______________________________________________ >>> dba-VB mailing list >>> dba-VB at databaseadvisors.com >>> http://databaseadvisors.com/mailman/listinfo/dba-vb >>> http://www.databaseadvisors.com >>> >>> >> _______________________________________________ >> dba-VB mailing list >> dba-VB at databaseadvisors.com >> http://databaseadvisors.com/mailman/listinfo/dba-vb >> http://www.databaseadvisors.com >> >> > _______________________________________________ > dba-VB mailing list > dba-VB at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/dba-vb > http://www.databaseadvisors.com > > > _______________________________________________ > dba-VB mailing list > dba-VB at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/dba-vb > http://www.databaseadvisors.com > >