Tjek software

Tags:    asp

Hej udviklere.

Jeg sidder og arbejder på at stort administrations system i ASP, og jeg er nået til en del, hvor det drejer sig om download af dokumenter af forskellige typer, og da dem der skal bruge systemet ikke har den helt store viden omkring computer, tænkte jeg om det var muligt at tjekke deres software?

Jeg har brug for at tjekke om de har:
-Microsoft Word (97-2003)
-Microsoft Word (2007)
-Microsoft Excel (97-2003)
-Microsoft Excel (2007)
-Adobe Reader

Er det muligt at tjekke om disse programmer er tilgængelige på klientens computer? Og i så tilfælde hvodan?

Hvis det ikke er, er der så andre web-baserede sprog man kan tjekke det i?

Jeg håbet at der er nogen der kan hjælpe mig, da jeg er på ret bar bund. Jeg syntes ikke at kunne finde noget på google.




Indlæg senest redigeret d. 05.06.2007 14:43 af Bruger #8773
8 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 2 karma
Sorter efter stemmer Sorter efter dato

Automation-Serveren kan ikke oprette objektet:

Det er fordi serveren ikke har registeret ActiveX Objektet


Jeg har da accepteret den der ActiveX advarsels ting der kommer frem, så der burde da ikke være nogle problemer over hovedet.?


At du Acceptere at køre et ActiveX objekt har som sådan ikke noget med om objektet findes på computeren.

Du kan prøve følgende:


<html>
<head>
<script>

function Check(){

try {
//var objSWbemLocator = new ActiveXObject("WbemScripting.SWbemLocator");
var objSWbemServices= objSWbemLocator.ConnectServer(".", "root\\\\\\cimv2");

var Applications = new Enumerator(objSWbemServices.ExecQuery("SELECT * FROM Win32_SoftwareFeature where Caption = 'Microsoft Office Word' OR Caption = 'Microsoft Office Excel' OR Caption LIKE 'Adobe Reader%'"));

for(;!Applications.atEnd();Applications.moveNext()){

var ChildRow = GridView1.insertRow();

var Name = ChildRow.insertCell();
var Version = ChildRow.insertCell();

Name.innerHTML = Applications.item().Caption;
Version.innerHTML = Applications.item().Version;

}


} catch(e){alert(e.description);
}


}
</script>
</head>
<body onload="Check();">
<OBJECT ID="objSWbemLocator" CLASSID="CLSID:76A64158-CB41-11D1-8B02-00600806D9B6" CODEBASE="wbemdisp.dll#Version=1,0,0,0">
</OBJECT>

<h4>Application Check:</h4>
<table id="GridView1" name="GridView1">
<tr>
<td>Navn</td>
<td>Version</td>
</tr>
</table>

</body>
</html>

Jeg er ikke sikker på at det virker, men det er da værd at prøve... Du skal dog putte wbemdisp.dll i samme mappe som kode filen..



Indlæg senest redigeret d. 06.06.2007 16:07 af Bruger #404
Hej udviklere.

Jeg sidder og arbejder på at stort administrations system i ASP, og jeg er nået til en del, hvor det drejer sig om download af dokumenter af forskellige typer, og da dem der skal bruge systemet ikke har den helt store viden omkring computer, tænkte jeg om det var muligt at tjekke deres software?

Jeg har brug for at tjekke om de har:
-Microsoft Word (97-2003)
-Microsoft Word (2007)
-Microsoft Excel (97-2003)
-Microsoft Excel (2007)
-Adobe Reader

Er det muligt at tjekke om disse programmer er tilgængelige på klientens computer? Og i så tilfælde hvodan?

Hvis det ikke er, er der så andre web-baserede sprog man kan tjekke det i?

Jeg håbet at der er nogen der kan hjælpe mig, da jeg er på ret bar bund. Jeg syntes ikke at kunne finde noget på google.


Du kan tjekke det med javascript/vbscript og ActiveX.



Jeg har tænkt over det med ActiveX, men jeg har aldrig rigtigt fattet hvordan det virker. Ved du evt. hvor jeg kan lære noget om det henne?



Jeg har tænkt over det med ActiveX, men jeg har aldrig rigtigt fattet hvordan det virker. Ved du evt. hvor jeg kan lære noget om det henne?


Jeg har lavet et eksempel på hvordan man kan gøre det:


Fold kodeboks ind/udKode 




Jeg er glad for at du gider hjælpe mig, men den kode virker ikke.. I hvert fald ikke helt.. Jeg får fejlmeddelelsen i en alert box: "Navneområdet er ugyldigt", når jeg kører den lokalt, og på min server siger den: "Automation-Serveren kan ikke oprette objektet" .. Hvad kan det være?



Indlæg senest redigeret d. 06.06.2007 14:35 af Bruger #8773
Jeg er glad for at du gider hjælpe mig, men den kode virker ikke.. I hvert fald ikke helt.. Jeg får fejlmeddelelsen i en alert box: "Navneområdet er ugyldigt", når jeg kører den lokalt, og på min server siger den: "Automation-Serveren kan ikke oprette objektet" .. Hvad kan det være?


Navneområdet er ugyldigt:
Det er fordi at forumet har ændret de 2 \\\\\\ til en \\ i kode eksemplet. erstat med:
var objSWbemServices= objSWbemLocator.ConnectServer(".", "root\\\\\\cimv2");


Automation-Serveren kan ikke oprette objektet:

Det er fordi serveren ikke har registeret ActiveX Objektet



Indlæg senest redigeret d. 06.06.2007 15:25 af Bruger #404

Automation-Serveren kan ikke oprette objektet:

Det er fordi serveren ikke har registeret ActiveX Objektet


Jeg har da accepteret den der ActiveX advarsels ting der kommer frem, så der burde da ikke være nogle problemer over hovedet.?



nu får jeg alert: "Objektet understøtter ikke denne egenskab eller metode" og samtidig kommer der an advarselsbjælke fra IE, hvor der står :"Internet explorer har forhindret dette websetd i at bruge ActiveX-objekt på en usikker måde." Men jeg kan ikke trykke tillad eller noget i den stil :S



t