Nuevo sitio
Nos mudamos a www.f5run.com.ar
jueves, 6 de octubre de 2011
Arnet se corta con el emule, y el soporte entra en Loop
Hace aproximadamente un mes contraté Arnet. Funciona más o menos bien, pero si utilizo el emule por más de 10 minutos, se corta la conexión y solo se resuelve reseteando el modem-router.
Hablé una docena de veces con Arnet y obtuve respuestas disparatadas y contradictorias. He aquí las más destacadas:
- Hemos registrado su reclamo. Verificaremos el estado de su conexión. Le avisaremos en 24 horas.
(24 horas después)
- Hemos verificado que existe un problema en la central. Estará resuelto en 48 horas
(48 horas después)
- Hemos verificado que existe un problema con su línea. Estará resuelto en 72 horas.
(72 horas después)
- Hemos verificado que existe un problema con su enlace virtual. Ya debería estar resuelto.
(una semana después)
- Hemos verificado que está todo bien y le debería andar.
Contesto: - Pero sigue sin andar!
- En ese caso, cargaremos la reinicidencia para que se verifique el estado de su conexión.
¿Loop?
Etiquetas:
Curiosidades,
Internet,
ISPs
lunes, 26 de septiembre de 2011
Microsoft Live Mesh para sincronizar archivos
Hace un tiempo que soy un feliz usuario de DropBox. Utilizo la cuenta gratuita de 2 Gb, y me sobra para todos mis documentos, programas, pruebas, etc. Sin embargo, DropBox me queda chico para compartir grandes volúmenes de datos como pueden ser archivos de música o fotos.
Esta semana descubrí un producto de Microsoft llamado Live Mesh, el cual permite sincronizar carpetas entre diferentes PCs. En mi caso lo estoy usando para sincronizar la carpeta de MP3s de mi casa, con la notebook. De esa forma puedo tener disponible mis 30Gb de música desde cualquier parte.
Live Mesh tiene además una modalidad cloud (comparable a DropBox) pero limitada a 5Gb. La modalidad de sincronizar carpetas es ilimitada.
Esta semana descubrí un producto de Microsoft llamado Live Mesh, el cual permite sincronizar carpetas entre diferentes PCs. En mi caso lo estoy usando para sincronizar la carpeta de MP3s de mi casa, con la notebook. De esa forma puedo tener disponible mis 30Gb de música desde cualquier parte.
Live Mesh tiene además una modalidad cloud (comparable a DropBox) pero limitada a 5Gb. La modalidad de sincronizar carpetas es ilimitada.
domingo, 7 de agosto de 2011
Un live chat gratuito e integrado con Blackberry y otros móviles
Tuve la suerte de descubrir un producto muy interesante llamado http://www.comm100.com/
El producto permite agregar un live chat en tu sitio web, y configurar operadores que atiendan del otro lado.
Un aspecto muy interesante es que tiene un cliente para Blackberry y para otros dispositivos móviles, lo cual permite tener un servicio de soporte online, sin necesidad de tener un call-center.
Muy recomendable también para que los potenciales clientes que visiten nuestro sitio, tengan la posibilidad de evacuar sus consultas rápidamente.
Lo más importante de todo: Es gratis. Vale la pena probarlo.
El producto permite agregar un live chat en tu sitio web, y configurar operadores que atiendan del otro lado.
Un aspecto muy interesante es que tiene un cliente para Blackberry y para otros dispositivos móviles, lo cual permite tener un servicio de soporte online, sin necesidad de tener un call-center.
Muy recomendable también para que los potenciales clientes que visiten nuestro sitio, tengan la posibilidad de evacuar sus consultas rápidamente.
Lo más importante de todo: Es gratis. Vale la pena probarlo.
martes, 26 de julio de 2011
Super bat para compilar y publicar una aplicación ASP.Net
Publicar una aplicación ASP.Net, puede parecer muy sencillo. Sin embargo, para que la misma se haga siempre igual y que respete siempre los mismos pasos, es recomendable automatizar el proceso de publicación.
Existen varias formas de hacer esto. Personalmente encontré bastante útil armar un .Bat, que básicamente hace lo siguiente:
1. Compila la aplicación en modo Release
2. Ejecuta un test de validación en NUnit
3. Compila las páginas aspx usando aspnet_compiler
4. Une las páginas en una dll usando aspnet_merge
5. Borra los archivos que no deberían publicarse (basicamente los .config)
6. Borra los archivos de más de 45 días (este es un tunnig personal, que sirve cuando se realizan publicaciones con cierta frecuencia)
7. Borra las carpetas vacías
8. Arma un zip
9. Lo sube por ftp
El paso 10 es manual. En mi caso, me conecto vía remote desktop y ejecuto otro bat que descomprime el zip subido y lo copia en la carpeta del sitio.
Este es el .Bat:
@echo off
setlocal
call "c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x86
c:\Windows\Microsoft.NET\Framework\v4.0.30319\msbuild C:\Source\app.sln /t:Build /p:Configuration=Release
if %errorlevel% gtr 0 goto end
call "c:\Program Files (x86)\NUnit 2.5.9\bin\net-2.0\nunit-console.exe" c:\Source\Test\bin\Test.dll
if %errorlevel% gtr 0 goto end
echo on
set base=c:\temp\publish
if not exist %base% md %base%
rd /s /q %base%
md %base%
echo compiling to %base%
"c:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_compiler" -v / -p C:\Source\Web\ -f -d %base%
if %errorlevel% gtr 0 goto end
"C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\NETFX 4.0 Tools\aspnet_merge" %base% -w app.dll
if %errorlevel% gtr 0 goto end
endlocal
echo web compiled to %base%
goto makezip:
:errnoparam
echo usage: %0 web
goto end
:errnotfound
echo web %1 not found
goto end
:makezip
cd c:\temp\publish
echo "Borra los archivos que no deberían pasar"
del publish.bat
del *.vbproj
del web.config
del app.config
del c:\temp\publish\Reports\*.rdlc
rd pdftemp /S /Q
echo "Borra los archivos de mas de 45 días"
forfiles /s /M *.* /d -45 /c "cmd /c del /q @path"
echo "Borra las carpetas vacias"
setLocal EnableDelayedExpansion
dir/b/s/ad c:\temp\publish | sort /r > sdlist
for /f "tokens=* delims= " %%d in (sdlist) do (
rd %%d 2>nul
)
del publish.zip
"c:\Program Files\WinRAR\WinRAR.exe" a -r -afzip publish
:ftp
echo "ftp upload"
@echo off
echo user miusuario> ftpcmd.dat
echo mipassword>> ftpcmd.dat
echo bin>> ftpcmd.dat
echo hash>> ftpcmd.dat
echo put c:\temp\publish\publish.zip>> ftpcmd.dat
echo quit>> ftpcmd.dat
ftp -n -s:ftpcmd.dat misitio.com
del ftpcmd.dat
:end
pause
Existen varias formas de hacer esto. Personalmente encontré bastante útil armar un .Bat, que básicamente hace lo siguiente:
1. Compila la aplicación en modo Release
2. Ejecuta un test de validación en NUnit
3. Compila las páginas aspx usando aspnet_compiler
4. Une las páginas en una dll usando aspnet_merge
5. Borra los archivos que no deberían publicarse (basicamente los .config)
6. Borra los archivos de más de 45 días (este es un tunnig personal, que sirve cuando se realizan publicaciones con cierta frecuencia)
7. Borra las carpetas vacías
8. Arma un zip
9. Lo sube por ftp
El paso 10 es manual. En mi caso, me conecto vía remote desktop y ejecuto otro bat que descomprime el zip subido y lo copia en la carpeta del sitio.
Este es el .Bat:
@echo off
setlocal
call "c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x86
c:\Windows\Microsoft.NET\Framework\v4.0.30319\msbuild C:\Source\app.sln /t:Build /p:Configuration=Release
if %errorlevel% gtr 0 goto end
call "c:\Program Files (x86)\NUnit 2.5.9\bin\net-2.0\nunit-console.exe" c:\Source\Test\bin\Test.dll
if %errorlevel% gtr 0 goto end
echo on
set base=c:\temp\publish
if not exist %base% md %base%
rd /s /q %base%
md %base%
echo compiling to %base%
"c:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_compiler" -v / -p C:\Source\Web\ -f -d %base%
if %errorlevel% gtr 0 goto end
"C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\NETFX 4.0 Tools\aspnet_merge" %base% -w app.dll
if %errorlevel% gtr 0 goto end
endlocal
echo web compiled to %base%
goto makezip:
:errnoparam
echo usage: %0 web
goto end
:errnotfound
echo web %1 not found
goto end
:makezip
cd c:\temp\publish
echo "Borra los archivos que no deberían pasar"
del publish.bat
del *.vbproj
del web.config
del app.config
del c:\temp\publish\Reports\*.rdlc
rd pdftemp /S /Q
echo "Borra los archivos de mas de 45 días"
forfiles /s /M *.* /d -45 /c "cmd /c del /q @path"
echo "Borra las carpetas vacias"
setLocal EnableDelayedExpansion
dir/b/s/ad c:\temp\publish | sort /r > sdlist
for /f "tokens=* delims= " %%d in (sdlist) do (
rd %%d 2>nul
)
del publish.zip
"c:\Program Files\WinRAR\WinRAR.exe" a -r -afzip publish
:ftp
echo "ftp upload"
@echo off
echo user miusuario> ftpcmd.dat
echo mipassword>> ftpcmd.dat
echo bin>> ftpcmd.dat
echo hash>> ftpcmd.dat
echo put c:\temp\publish\publish.zip>> ftpcmd.dat
echo quit>> ftpcmd.dat
ftp -n -s:ftpcmd.dat misitio.com
del ftpcmd.dat
:end
pause
Etiquetas:
.Net,
Desarrollo,
Internet,
Microsoft,
Testing
miércoles, 25 de mayo de 2011
Problemas con dominios .com.ar
El lunes 23/05/2011 alrededor de las 15hs, uno de los 5 servidores de DNS de nic.ar, ctina fue dado de baja por los ingenieros de nic.ar.
Desde entonces, varios dominios .com.ar no pueden resolverse desde varios ISPs de la argentina. El problema pudimos detectarlo con Fibertel, IPlan, Telmex y Sion.
En nic.ar dicen que el problema es que los ISPs tienen mal configuradas las rutas de consultas de DNS. Le solicitamos que, en ese caso, les enviaran una circular oficial a los ISPs para que corrijan esta situación.
48 horas después del incidente, aún no hay una solución a la vista.
Desde entonces, varios dominios .com.ar no pueden resolverse desde varios ISPs de la argentina. El problema pudimos detectarlo con Fibertel, IPlan, Telmex y Sion.
En nic.ar dicen que el problema es que los ISPs tienen mal configuradas las rutas de consultas de DNS. Le solicitamos que, en ese caso, les enviaran una circular oficial a los ISPs para que corrijan esta situación.
48 horas después del incidente, aún no hay una solución a la vista.
miércoles, 27 de abril de 2011
CascadeDropDownList Method Error 500
El AjaxControlToolkit de .Net viene con extender para hacer combos en cascada (también llamados vinculados). En primer lugar, debo aclarar que es una solución mucho más aconsejable que la de incluir updatepanels.
Con este extender, el Browser invoca a un webservice para cargar los combos dependientes. Si algo anda mal en la invocación, se verá en el combo el texto "method error 500".
Una causa muy frecuente de este error, es que por default el webservice está limitado a una acotada cantidad de datos. Esto se puede expandir, agregando en el web.config, lo siguiente:
Con este extender, el Browser invoca a un webservice para cargar los combos dependientes. Si algo anda mal en la invocación, se verá en el combo el texto "method error 500".
Una causa muy frecuente de este error, es que por default el webservice está limitado a una acotada cantidad de datos. Esto se puede expandir, agregando en el web.config, lo siguiente:
Etiquetas:
.Net,
Ajax,
Desarrollo,
Internet,
Microsoft
miércoles, 30 de marzo de 2011
ASP.Net + jqModal + Ajax + Hide + Postback = Problema.
He aquí la solución :)
Si utilizamos el plugin de JQuery llamado jqModal, para abrir ventanas AJAX en ASP.Net, nos vamos a encontrar con un problema, si es que la ventana llamada tiene un formulario de servidor (Para más información, ver el post anterior: http://laboticadellanga.blogspot.com/2011/03/como-migrar-los-viejos-popups-ventanas.html)
El problema ocurrirá si luego de abrir y cerrar una ventana jqModal, queremos hacer alguna operación que implique un postback. El problema ocurre, porque al abrir la segunda ventana, se pisa una variable interna de ASP.Net llamada theForm que guarda la referencia al formulario de servidor principal.
La solución es realizar un resguardo de esa variable theForm, antes de abrir la ventana y luego restaurarla en el close. Por ejemplo, si tenemos un archivo js de utilidades, podemos armar estas dos funciones:
function openModal(url) {
theFormBKP = theForm;
$('#jqModal').jqm({ ajax: url, modal: true });
$('#jqModal').jqmShow();
}
function closeModal() {
$('#jqModal').jqmHide();
theForm = theFormBKP;
}
Si utilizamos el plugin de JQuery llamado jqModal, para abrir ventanas AJAX en ASP.Net, nos vamos a encontrar con un problema, si es que la ventana llamada tiene un formulario de servidor (Para más información, ver el post anterior: http://laboticadellanga.blogspot.com/2011/03/como-migrar-los-viejos-popups-ventanas.html)
El problema ocurrirá si luego de abrir y cerrar una ventana jqModal, queremos hacer alguna operación que implique un postback. El problema ocurre, porque al abrir la segunda ventana, se pisa una variable interna de ASP.Net llamada theForm que guarda la referencia al formulario de servidor principal.
La solución es realizar un resguardo de esa variable theForm, antes de abrir la ventana y luego restaurarla en el close. Por ejemplo, si tenemos un archivo js de utilidades, podemos armar estas dos funciones:
function openModal(url) {
theFormBKP = theForm;
$('#jqModal').jqm({ ajax: url, modal: true });
$('#jqModal').jqmShow();
}
function closeModal() {
$('#jqModal').jqmHide();
theForm = theFormBKP;
}
La invocación es simple:
showModal("mipopup.aspx");
closeModal();
Etiquetas:
.Net,
Ajax,
Desarrollo,
JavaScript,
Microsoft
Suscribirse a:
Entradas (Atom)