mikrocontroller.net

Forum: PC-Programmierung Windows 7 HTML+Javascript+ActiveX wie File-Open-Dialog erstellen


Autor: sven (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
unter WinXP mit IE8 funktioniert ja folgender Code (als *.hta) ganz gut, 
aber wie kann ich ihn nach Windows 7 portieren ?
Stundenlanges googeln hat mir nur Code gezeigt den ich in JavaScript 
nicht zum laufen bekomme... (z.b. hier : 
http://www.eggheadcafe.com/software/aspnet/3581212... 
)
Vermutlich muss ich mir meine eigene Dialogbox mit dem FSO basteln ?
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head>
<hta:application id="hta" applicationname="XP Demo"
caption="yes" contextmenu="yes"
innerborder="no"
navigable="yes" scroll="no"
scrollflat="yes" selection="yes"
singleinstance="no"
sysmenu="yes" 
windowState="normal" >

<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
<title>XP Demo</title>
<script type="text/javascript">
<!--

var path = "C:\\";

function OnLoad()
{ var xx=1200;
  var yy=600;
  try { window.resizeTo(xx,yy);}     catch(err){}
  try { window.moveTo(screen.width - xx, 0);}   catch(err){}
}

function load_OnClick()
{ var oCD = new ActiveXObject("UserAccounts.CommonDialog");
  oCD.Filter = "All|*.*;";
  oCD.FilterIndex = 1;
  oCD.InitialDir = path;
  if (oCD.ShowOpen())
  { path=oCD.Filename;
    result.innerHTML="<b>"+path+"</b>";
  }
}

//-->
</script>

</head>
<body bgcolor="#ECE9D8" OnLoad='OnLoad();' >
 <form name="tofForm">
 <table>
   <tr><td><input name="load" type="BUTTON" value="load" onclick="load_OnClick();"></td></tr>
 </table>

 <div id="result">test</div>

 </form>
</body>
</html>

Autor: sven (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die einzigste Lösung scheint der File-Upload Dialog zu sein, den man 
leider nicht vorbelegen kann mit einem Pfad...

Geänderte Datei vom ersten Post :
.
.
.
function update(text)
{ result.innerHTML="File Open Dialog HTML-Form : <b>"+text+"</b>";
}

function test()
{  document.getElementById("FileDialog").click(); }

//-->
</script>

</head>
<body bgcolor="#ECE9D8" OnLoad='OnLoad();' >
 <form name="tofForm">
 <table>
   <tr><td><input name="load" type="BUTTON" value="File open Dialog XP only" onclick="load_OnClick();"></td></tr>
   <tr><td><input type="file" name="FileDialog" size="1" onChange="update(this.value);" style="visibility:hidden;" > hidden File Open Dialog HTML-Form</td></tr>
   <tr><td><input name="load" type="BUTTON" value="Click hidden Fileupload button" onclick="test();"></td></tr>
 </table>

 <div id="result">test</div>

 </form>
</body>
</html>

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.