Delphisovelluksessa voin avata sovelluksen Help-filen (vanhan mallinen *.hlp)seuraavalla käskyllä.
ShellExecute(Handle, 'open', 'HELP.HLP',nil,nil, SW_SHOWNORMAL);
Kaikki menee hyvin niin kauan kun tallennan ohjelman työtiedostot ohjelman asennushakemistoon, josta ohjelma on avattu. Mutta jos tallennan muualle niin Help ei enää avaudukaan, ohjelma ei löydä Helppiä (polku kadoksissa?). Eli tarttis siis määritellä Helpin polku tarkkaan seuraavaan tapaan:
ShellExecute(Handle, 'open', '\suhteellinenohjelmistopolku\Omasovellushakemisto\HELP.HLP',nil,nil, SW_SHOWNORMAL);
Mutta - miten määritellään tuo suhteellinen polku, eli mistä ohjelma löytää ohjelman oman hakemiston (ohjelmahan on asennettu asennusohjelmalla tiettyyn hakemistoon, joka on Windowsin tiedossa kyllä, mutta miten palautan tuon ohjelman hakemistopolun?
P.S.
html-helppi-file HELP.chm ei avaudu edes tuolla ekalla koodiversiolla missähän vika...?
Suhteellisen polun määrittely
5
411
Vastaukset
- ------------------
Ei ole nyt Delphiä käsillä mutta minkä arvon saa seuraava lause:
kerro_vastaus:=ExtractFilePath(Application.ExeName);- koodissa
Kiitos vinkistä.
Tämä toimii, kun haluaa käynnistää Helpin aina ohjelman kotihakemistosta:
var ohjelmapolku : string;
begin
ohjelmapolku := ExtractFilePath(Application.ExeName);
ohjelmapolku := ohjelmapolku 'HELP.HLP';
ShellExecute(Handle, PChar(ohjelmapolku), vali,nil,nil, SW_SHOWNORMAL);
end; - toimii2
koodissa kirjoitti:
Kiitos vinkistä.
Tämä toimii, kun haluaa käynnistää Helpin aina ohjelman kotihakemistosta:
var ohjelmapolku : string;
begin
ohjelmapolku := ExtractFilePath(Application.ExeName);
ohjelmapolku := ohjelmapolku 'HELP.HLP';
ShellExecute(Handle, PChar(ohjelmapolku), vali,nil,nil, SW_SHOWNORMAL);
end;Oops, painovirhe 5 rivillä('vali' pois), oikea muoto selvyden vuoksi tässä:
var ohjelmapolku : string;
begin
ohjelmapolku := ExtractFilePath(Application.ExeName);
ohjelmapolku := ohjelmapolku 'HELP.HLP';
ShellExecute(Handle, PChar(ohjelmapolku),nil,nil, SW_SHOWNORMAL);
end; - D_teuska_
toimii2 kirjoitti:
Oops, painovirhe 5 rivillä('vali' pois), oikea muoto selvyden vuoksi tässä:
var ohjelmapolku : string;
begin
ohjelmapolku := ExtractFilePath(Application.ExeName);
ohjelmapolku := ohjelmapolku 'HELP.HLP';
ShellExecute(Handle, PChar(ohjelmapolku),nil,nil, SW_SHOWNORMAL);
end;// Get full application path exename
ParamStr(0);
Elikkäs sovelluksen parametrien 0. indeksi sisältää
koko polun sekä sovelluksen *.exe nimen..
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
- 751191
- 741184
- 481064
Miltä se tuntuu
Miltä se tuntuu havahtua, että on ollut ihmistä kohtaan, joka on rakastanut ja varjellut, täysi m*lkku? Vai havahtuuko s1041018- 51985
- 34747
- 49714
- 54646
Mitä se olisi
Jos sinä mies saisit sanoa kaivatullesi mitä vain juuri nyt. Ilman mitään seuraamuksia yms. Niin mitä sanoisit?39642Nanna Karalahti :Paljastus bisneksistä Jere Karalahden kanssa!
Ottanut yhteyttä seiskalehden toimittajaan ja kertonut totuuden yhteisestä Herotreeni-nimisestä verkkovalmenuksesta.118577