Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559

    Ridimensionamento img non va da .NET 1.1 a .NET 2.0

    Salve, questo è lo script che utilizzo per il ridimensionamento delle immagini richiamando la pagina .asp con un collegamento di questo tipo:

    http://www.nomesito.it/img.aspx?img=...dimensione=180

    codice:
    <%@ Import Namespace="System.Drawing"%>
    <%@ Import Namespace="System.Drawing.Imaging"%>
    <SCRIPT RUNAT="SERVER">
    Sub Page_Load()
    
      Dim dimensione as Integer = Request.Querystring("dimensione")
      Dim width as Integer = 0
      Dim height as Integer = 0
    
      try
        ' ricava dimensioni dalla richiesta
        if not Request.QueryString("width") is Nothing Then
        	width = Int32.Parse(Request.QueryString("width"))
        End if
        if not Request.QueryString("height") is Nothing Then
        	height = Int32.Parse(Request.QueryString("height"))
        End if
    
      catch ex as Exception
      End Try
    
      ' ridimensiona l'immagine se specificato
      Dim immagine as String = Server.MapPath(Request("img"))
      if Not System.Io.File.Exists(immagine) then
        immagine = Server.MapPath("/archivio_foto/125x125_vuota.jpg")
      end if
      
      call ImgRedim(immagine, dimensione, dimensione)
    
      ' fermo il resto della risposta
      Response.End()
    End Sub
    
    ' Funzione di redim
    Public Sub ImgRedim(immagine as String, width as Integer, height as Integer)
      Dim bmp as System.Drawing.Bitmap = CType(System.Drawing.Image.FromFile(immagine), System.Drawing.Bitmap)
    
      ' c'è da ridimensionare?
      if width>0 or height>0 then
        ' se è specificata solo la larghezza, calcola l'altezza
        if height = 0 Then
        height = Convert.ToInt32(width / bmp.Width * bmp.Height)
        End if
    
        ' (e viceversa)
        if width = 0 Then
        width = Convert.ToInt32(height / bmp.Height * bmp.Width)
        End if
    
        ' creo la Thumbnail con i parametri impostati
        Dim miniaturabmp as New System.Drawing.Bitmap(bmp, width, height)
    
        ' salvo sullo stream di output
        if immagine.EndsWith(".jpg") Then
        miniaturabmp.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg)
        else
        miniaturabmp.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Gif)
        end if
    
        ' pulizia
        miniaturabmp.Dispose()
      else
        ' salvo sullo stream di output
        if immagine.EndsWith(".jpg") Then
        bmp.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg)
        else
        bmp.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Gif)
        end if
      end if
    
      ' pulizia finale
      bmp.Dispose()
    
    End Sub
    </SCRIPT>
    Nel passaggio da .NET 1.1 a .NET 2.0 questo script non va più, "Accesso Negato":
    ------------------------
    Accesso negato.
    Descrizione: Errore durante l'accesso alle risorse necessarie per soddisfare la richiesta. Probabilmente non si dispone delle autorizzazioni necessarie per visualizzare le risorse richieste.

    Messaggio di errore 401.3: Autorizzazioni non sufficienti per visualizzare la directory o la pagina (accesso negato a causa di ACL). Per ottenere l'accesso, contattare l'amministratore del server Web.
    ------------------------

    La cartella immagini ha i permessi di lettura (e anche scrittura).
    Qualcuno può aiutarmi a capire?

    Roby

  2. #2
    Utente di HTML.it L'avatar di U235
    Registrato dal
    Mar 2006
    Messaggi
    1,539
    prova a rimpostare l'accesso di asp.net nelle autorizzazioni del server.
    probabilmente nel passaggio da 1.1 a 2.0 e saltata l'utorizzazione.

  3. #3
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Grazie della risposta.
    Purtroppo continua a funzionare solo se utilizzo l'1.1, con il 2.0 non va proprio uff...

    Roby

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    E' normale che la cartella contenente il file che effettua il ridimensionamento debba avere i permessi di scrittura?
    Perché così funziona... :master:

    Roby

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.