art6

Trochę ciekawostek – na weekend (czego to ludzie nie wymyślą ...


Dynamiczne generowanie adresów
www



W tym artykule poruszê temat dynamicznego generowania
adresów stron www przez nasz± aplikacjê. Co? - Pewnie zapytaj± niektórzy. I nic w tym
dziwnego, gdy¿ temat tak w³a¶nie brzmi a nie inaczej. Chcê opisaæ tutaj zastosowania
dynamicznego ich generowania przez nasz program, wiêc czytajcie dalej...



Po co nasza aplikacja mia³aby generowaæ jakie¶ adresy.
Odpowiedzi jest kilka. Oto one:



- Po to aby niezale¿nie od posiadanej wersji aplikacji,
u¿ytkownik zawsze mia³ dostêp do strony po¶wiêconej programowi w tej w³a¶nie
wersji. Oczywi¶cie dotyczy to programistów, którzy dysponuj± w³asnym kontem na
jakim¶ serwerze www( choæby darmowym) i maj± w zwyczaju tworzyæ podstrony o swoim
programie dla ka¿dej jego wersji z osobna. Prosty na to przyk³ad to program, który jest
rozpowszechniany w kilku edycjach ( nie wersjach). Takim programem jest na przyk³ad...
Visual Basic ( ¿eby daleko nie szukaæ:), który wystêpuje jak wiemy w kilku odmianach.
I proszê mamy edycje Learning, Proffesianal, Enterprise. Ju¿ mamy jeden program w trzech
ró¿ni±cych siê od siebie edycjach. Tak samo nasza aplikacja mo¿e zostaæ wydana (
przez nas oczywi¶cie ) w takich albo w innych edycjach. Oto przyk³ad:



Stworzyli¶my aplikacjê do wspomagania pobierania plików
z internetu ( typu GetRight itp...) i chcemy, ¿eby by³a rozpowszechniana w trzech
edycjach: darmowa(np: adware), komercyjna dla u¿ytkowników indywidualnych oraz
komercyjna dla przedsiêbiorstw.



Zazwali¶my je kolejno: LE( Limited Edition, bo jest
pozbawiona kilku elementów i wyposarzona dajmy na to w baner), PE(Personal Edition, dla
pojedynczej osoby) oraz EE( Enterprise Edition dla przedsiêbiorstw). No i mamy niejako
jeden program, w trzech jak¿e ró¿ni±cych siê edycjach.



Korzystaj±c na codzieñ z wielu aplikacji zauwa¿y³em, ¿e niektóre
programy posiadaj± tê unikaln± cechê generowania adresów www. Jest to szczególnie
przydatne w programach, które albo s± rozprowadzane równolegle jak w przyk³adzie w
wielu edycjach, albo nowsze ich wersje s± tak ró¿ne od poprzednich ¿e staj± siê
niemal¿e nowym programem. Wtedy przydaj± siê strony www z informacjami o konkretnej
wersji programu.



Za³±czony projekt to aplikacja, w której dodano mo¿liwo¶æ
generowania adresów stron www. W menu "Pomoc" znajduj± siê 3 pozycje:





Obs³uga techniczna
-->
Otwiera przegl±darkê z dokumentem Pomocy Technicznej


Darmowy kod rejestracyjny
-->
Otwiera przegl±darkê z darmowym kodem rejestracyjnym


Kup aplikacjê
-->
Otwiera przegl±darkê z dokumentem daj±cym
mo¿liwo¶æ zakupu aplikacji



Wybranie którejkolwiek z nich spowoduje wygenerowanie( na podstawie
zawartych w aplikacji informacji) adresów do stron www z okre¶lonymi us³ugami.
Pamiêtaæ nale¿y przy tym, ¿e operacje te wykonywane s± dynamicznie, wiêc zmiana
nazwy aplikacji, numeru jej wersji itd, zaowocuje zmianami w wygenerowanych adresach, co
zmieni zawarto¶æ wy¶wietlanych stron.



W celu ³atwiejszego wprowadzania ewentualnych korekt, adres serwera www
zosta³ umieszczony w polu FileDescription w oknie Properties aplikacji sk±d jest
ka¿dorazowo pobierany przez program. W polu Comments wpisujemy natomiast nazwê edycji
programu( najlepiej jej skrót).



Numer wersji programu aplikacja bierze tak¿e bezpo¶rednio z
w³a¶ciwo¶ci projektu. Sami musimy jednak zdefiniowaæ nazwy katalogów w których
przechowywane s± odpowiednie dokumenty na serwerze. W przyk³adzie nazwa³em je:



"support" dla pomocy technicznej, "register" dla
darmowego kodu rejestracyjnego oraz "buy" dla dokumentu umo¿liwiaj±cego kupno
aplikacji.



Mo¿na oczywi¶cie umie¶ciæ wszystkie dokumenty w jednym katalogu, ale
musimy wtedy dokonaæ edycji podanego listingu bêd¼ za katalog przyj±æ wszêdzie tego
samego stringa.



Jak ³atwo zauwa¿yæ korzystaj±c z gotowego projektu klikanie na
poszczególne pola w menu "Pomoc" powoduje wy¶wietlanie siê okien
przegl±darki internetowej zawieraj±cych w polu "Adres:" wygenerowany na
podstawie nazwy programu, adresu serwera, edycji programu, wersji programu i
zdefiniowanych przez nas nazw katalogów na serwerze adres do odpowiedniej strony www. Dla
ustawieñ domy¶lnych jest to:






http://blitzart.w.interia.pl/
support/
le/
dyngen
100
.htm


adres serwera www
katalog us³ugi
edycja programu
nazwa programu
wersja programu
rozszerzenie pliku


wpisujemy w oknie Properties programu w polu "File Description"
Samemu definiujemy w kodzie aplikacji
wpisujemy w oknie Properties programu w polu "Comments"
wpisujemy w oknie Properties programu w polu "Title"
wpisujemy w oknie Properties programu w polach wersji
definiujemy w kodzie programu




 



Teraz nie musimy zmieniaæ za ka¿dym razem w niewiadomo ilu miejscach w
naszej aplikacji adresów dostêpowych do tych( i innych) us³ug. Wystarczy ¿e wejdziamy
na kartê properties projektu i dokonamy drobnych modyfikacji.



!!!UWAGA!!!



Aby ca³y system dzia³a³ jak nale¿y KONIECZNYM jest posiadanie konta na
strony www, na którym bêdziemy przechowywali w odpowiednich folderach odpowiednie
dokumenty. Dla mojego przyk³adu wygl±da to tak:





Foldery na serwerze

Ka¿dy folder zawiera miêdzy innymi takie pliki. Ka¿dy numer odpowiada wersji
programu



Dlatego te¿ ten artyku³ przeznaczony jest dla osób, które s± w stanie
zapewniæ swoim programom w odpowiednich wersjach / edycjach itd osobne strony, opisy itp
funkcje. Je¶li u¿ywamy tego systemu koniecznie nie mo¿emy pozwoliæ, ¿eby u¿ytkownik
nie móg³ otworzyæ strony i zobaczy³ b³±d 404... co spowodowane jest brakiem takiej
strony na serwerze.



Usprawnienie tego systemu jest konieczno¶ci± je¶li macie zamiar z niego
korzystaæ. Ja poda³em prosty przyk³ad jak mo¿na co¶ takiego stworzyæ.



Jestem przekonany, ¿e mo¿na to zrobiæ jako¶ pro¶ciej, wczytywaæ
adresy z pliku czy co¶ w tym rodzaju, ale przecie¿ wczytaæ txt do programu umie
ka¿dy... no prawie:)



Ca³y projekt aplikacji dostêpny jest w postaci
skompresowanego pliku ZIP .

Micha³ Byrczek (Byru)

, www.blitz-art.prv.pl



 



  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • strefamiszcza.htw.pl
  • Copyright (c) 2009 TrochÄ™ ciekawostek – na weekend (czego to ludzie nie wymyÅ›lÄ… ... | Powered by Wordpress. Fresh News Theme by WooThemes - Premium Wordpress Themes.